C语言试卷

发布 2021-04-23 10:43:28 阅读 6165

一、填空题。(每空1分,共20分)

1、c语言源文件的扩展名为 ,经编译后,生成文件的扩展名为 ,连接后,最后形成可执行文件的扩展名为 。

2、对于数学式( b2-4ac)1/2,10>x>1对应的c语言表达式为。

3、语句printf(“*06d*”,456);的输出结果为。

4、若a=3,b=4,c=5,则表达式a&&b,a<=b,a||b+c&&b-c,!(a

5、若有定义和语句:int a=1,b=2,c=3;if(a>c)b=a;a=c;c=b;执行后,a,b,c中的值分别为。

6、当执行以下程序段后,i的值是 ,j的值是 ,k的值是 。

int a,b,c,d,i,j,k;

a=10;b=c=d=5;i=j=k=0;

for( ;a>b;++b) i++;while(a>++c) j++;

do k++;while(a>d++)

7、已知指针p、q、s的指针如图,则执行语句*p++;后,*p的值为 ,表达式*++q的值是 ,表达式++*s的值是 。

a[0] a[1] a[2] a[3] a[4]

q ↗p↑ ↖s

8、字符串“ab\\\012\xa2”的长度为 。

二、选择题(每题1分,共25分)

1、若有以下定义和语句:int u=010,v=0x10,w=10; printf(“%d,%d,%d”,u,v,w);

则输出结果是( )

a:8,16,10b:10,10,10

c:8,8,10d:8,10,10

2、若 i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是( )

for(i=5; i; i--)

for(j=0; j<4; j++)

a:20 b:24 c:25 d:30

3、若有以下定义和语句:char * sl=”12345”, s2=”1234”;printf(“%d”,strlen(strcpy(sl,s2)))

则输出结果是( )

a:4 b:5 c:9 d:10

4、若有以下定义和语句:int a[10]=,p=a;

则不能表示a数组元素的表达式是( )

a:*p b:a[10] c:*a d:a[p-a]

5、下列程序的输出是( )

main( )

char * s=”121”; int k=0,a=0,b=0;

dok+ +

if(k%2==0)

b=b+s[k]-‘0’;a=a+s[k]-‘0’;}

while(s[k+1]);

printf(“k=% d a=% d b+%d”,k,a,b);}

a:k=3 a=2 b=3

b: k=3 a=3 b=2

c: k=2 a=3 b=2

d: k=2 a=2 b=3

6、设有说明int(* ptr)[m];其中的标识符ptr是( )

a:m个指向整型变量的指针。

b:指向m个整型变量的函数指针。

c:一个指向具有m个整型元素的一维数组的指针。

d:具有m个指针元素的一维指针数组,每个元素都只能指向整型变量。

7、c语言中最简单的数据类型包括( )

a.整型、实型、逻辑型 b.整型、实型、字符型。

c.整型、字符型、逻辑型 d.整型、实型、逻辑型、字符型。

8、下述对c语言字符数组的描述中错误的是( )

a:字符数组可以存放字符串。

b:字符数组中的字符串可以整体输入、输出。

c:可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值。

d:不可以用关系运算符对字符数组中的字符串进行比较。

9、设有如下定义:

int x=10,y=3,z;

则语句 printf(“%d”,z=(x%y,x/y));的输出结果是( )

a:1 b:0 c:4 d:3

10、定义如下变量和数组:

int i;

int x[3][3]=;

则下列语句的输出结果是 (

for(i=0;i <3;i++)printf(“%d”,x[i][2-i]);

a:159 b:147 c:357 d:369

11、设有如下函数定义:

int f(char * s)

char * p=s;

while(*p!=’0’)p++;

return(p-s);

如果在主程序中用下面的语句调用上述函数,则输出结果为( )

printf(“%d”,f(“goodbye!”)

a:3 b:6 c:8 d:0

12、设x、y、z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为( )

a:4 b:16 c:32 d:52

13、以下叙述中正确的是( )

a:输入项可以是一个实型变量,如:scanf(“%f’,3.5);

b:只有格式控制,没有输入项,也能正确输入数据到内存,例如:scanf(“a=%d,b=%d);

c:当输入一个实型数据时,格式控制部分可以规定小数点后的位数,例如:

scanf(“%4.2f’,&f);

d:当输入数据时,必须指明变量地址,例如:scanf(“%f ”,f);

14、设x和y均为int型变量,则以下语句:x+=y;y=x-y;x-=y的功能是( )

a:把x和y按从大到小顺序b:把x和y按从小到大顺序。

c:无确定结果d:交换x和y中的值。

15、以下程序的输出结果是:(

a:7 b:6 c:5 d:4

main()

int m=5;

if(m++>5)printf(“%d”,m);

else printf(“%d”,m--)

16、在执行以下程序时,如果从键盘上输入:abcdef《回车》,则输出为( )

a:abcdef b:abcdef c:abc d:def

#include<>

main()

char ch;

while((ch=getchar())n’)

if(ch>=’a’&&ch<=’z’)ch=ch+32;

else if(ch>=’a’ &ch<=’z’)ch=ch-32;

printf(‘%c”,ch);

printf(“”);

17、当执行以下程序时( )

a:循环体将执行一次b:循环体将执行二次。

c:循环体将执行无限次d:系统将提示有语法错误。

x=-1;do while(! x);

18、设有如下的变量定义:

int i=8,k,a,b;

double x=1.42,y=5.2;

则以下符合c语言语法的表达式是( )

a、a+=a-=(b=4)*(a=3b:x%(-3)

c:a=a*3=2d:y=float(i)

19、以下程序的输出结果是:(

a:10 10 b:12 12 c:11 10 d:11 13

main()

int a=12,b=12;

printf(“%d”,-a,++b);

20、以下程序运行后,输出结果是( )

a:cadb:字符c的ascii码值。

c:字符c的地址d:出错。

main()

char * s=”abcde”;

s+=2;printf(“%d”,s);

21、当a=1,b=3,c=5,d=4时,执行下面一段程序后,x的值为( )

a:1 b: 2 c:3 d:6

if(aif(celse if(aif(belse x=6;

else x=7;

22、下列能正确进行字符串赋值的语句是( )

a:char s[5]=;

c: char *s;s=“abcdefd: char *s;scanf(“%s”, s);

23、执行下列程序后,输出的结果是( )

a:-1 b:1 c:8 d:0

main()

int y=10;

dowhile(--y);

printf(“%d”,y--)

24、假设有以下变量定义:

int x=7,k=12;

则能使值为3的表达式是( )

a:x%=(k%=5b:x%=(k-k%5)

c语言试卷c

a.p q c.p n1 10 若有说明语句 int a,b,c,d c 则能从键盘读入三个整数分别赋给变量a b c的语句是。a.scanf d d d a,b,d b.scanf d d d a,b,d c.scanf d d d a,b,dd.scanf d d d a,b,d 11 c语言标...

C语言试卷A

青海大学试卷 a卷 系别 班级学号姓名。考试课程 程序设计基础 c 考试日期 2009 年 12月17日。注 所有答案均写在答题卡上,答在试卷上不得分,考试结束后试卷和答题卡一并交回。一 填空题 每空1分,共16分 1 整型静态数组没有初始化,也没有赋值,此时数组元素的值均为 0 2 数组在内存中占...

C语言试卷

一 填空共5题 共计10分 第1题 2.0分 题号 339 赋值运算符的结合性是由 右 至 左 第2题 2.0分 题号 925 在c 语言结构化程序中,函数 是程序的基本组成单元 在c 语言的面向对象设计框架中,对象 是程序的基本组成单元。第3题 2.0分 题号 926 c 语言的参数传递机制包括传...