C语言程序设计试卷1含答案.doc

上传人:wj 文档编号:2130614 上传时间:2023-05-02 格式:DOC 页数:13 大小:67KB
下载 相关 举报
C语言程序设计试卷1含答案.doc_第1页
第1页 / 共13页
C语言程序设计试卷1含答案.doc_第2页
第2页 / 共13页
C语言程序设计试卷1含答案.doc_第3页
第3页 / 共13页
C语言程序设计试卷1含答案.doc_第4页
第4页 / 共13页
C语言程序设计试卷1含答案.doc_第5页
第5页 / 共13页
C语言程序设计试卷1含答案.doc_第6页
第6页 / 共13页
C语言程序设计试卷1含答案.doc_第7页
第7页 / 共13页
C语言程序设计试卷1含答案.doc_第8页
第8页 / 共13页
C语言程序设计试卷1含答案.doc_第9页
第9页 / 共13页
C语言程序设计试卷1含答案.doc_第10页
第10页 / 共13页
C语言程序设计试卷1含答案.doc_第11页
第11页 / 共13页
C语言程序设计试卷1含答案.doc_第12页
第12页 / 共13页
C语言程序设计试卷1含答案.doc_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C语言程序设计试卷1含答案.doc

《C语言程序设计试卷1含答案.doc》由会员分享,可在线阅读,更多相关《C语言程序设计试卷1含答案.doc(13页珍藏版)》请在冰点文库上搜索。

C语言程序设计试卷1含答案.doc

说明:

请将单项选择题(1~50空)的正确答案涂写考试答题卡,将填空(51~75空)等文字题按【】中的序号写入下面文字答题卡,否则不得分。

二、阅读程序题文字答题卡:

(每空2分,共24分)

1题【51】

1题【52】

2题【53】

3题【54】

4题【55】

5题【56】

6题【57】

7题【58】

7题【59】

8题【60】

9题【61】

10题【62】

三、完善程序填空题文字答题卡:

(每空2分,共26分)

1题

【63】

2题

【64】

【65】

【66】

3题

【67】

【68】

【69】

4题

【70】

【71】

【72】

5题

【73】

【74】

【75】

一、单项选择题(每空1分,共50分)

请将正确答案按【 】中的序号写入答题卡,否则不得分。

1.C源程序的扩展名为【】。

A).C B).DLLC).EXED).DOC

2.按照标识符的要求,【】符号不能组成标识符。

A)数字符号 B)下划线C)连接符D)大小写字母

3.设有说明:

charc;inta;floatx;doubley;则表达式c*a+y-x值的数据类型是【】。

A)doubleB)charC)intD)float

4.已知小写字母a的ASCII码值是97,大写字母A的ASCII码值是65,下列语句中不能输出大写字母B的是【】。

A)putchar('A'+1); B)putchar('b'-32);

C)putchar(98-32); D)putchar(B);

5.在C语言中,数值常量0x9f对应十进制值是【】。

A)160 B)87 C)9f D)159

6.整型变量a定义后赋初值的结果是【】。

inta=2.8*6;

A)12 B)16 C)17 D)18

7.将小写字母n赋值给字符变量one_char,正确的操作是【】。

A)one_char=’\n’; B)one_char=”n”;

C)one_char=110; D)one_char=’N’;

8.若有以下说明和语句,则输出结果是【】。

chars[10]="atest!

";

printf("%d",strlen(s));

A)6 B)8 C)7 D)9

9.下面的程序结果为:

【】。

main()

 inta;

printf("%d\n",(a=3*5,a*4,a+5));

}

执行完输出函数后,a的值是【】。

A)65 B)20 C)15 D)10

10.下列运算附中,优先级最低的是【】。

A)&B)&&C)^D)|

11.C语言的下列运算符中,运算对象必须是整型数据的是【】。

A)%B)/ C)&&D)*

12.设有以下语句:

intx=10;x+=3+x%(-3),则x的值是【】。

A)14 B)15 C)11D)12

13.下面程序的输出结果是【】。

main()

{

inta=-1,b=4,k;

clrscr();

k=(a++<=0)&&(!

(b--<=0));

printf("%d,%d,%d\n",k,a,b);

}

A)1,1,2 B)1,0,3 C)0,1,2 D)0,0,3

14.下面哪个表达式的值为4【】。

A)11/3 B)11.0/3

C)(float)11/3 D)(int)(11.0/3+0.5)

15.下列程序的运行结果是【】。

main()

{

intx=0,y=1,z=0;

if(x=z=y)

x=3;

printf(“%d,%d\n”,x,z);

}

A)3,0 B)0,0 C)0,1 D)3,1

16.下面程序的输出结果是【】。

main()

{ intx=2,y=-1,z=2;

if(x

if(y<0)z=0;

elsez+=1;

printf(“%d\n”,z);}

A)3 B)1 C)2 D)0

17.运行下面程序,若从键盘输入“3”和“5”,则程序的输出结果是【】。

main()

{intx,y;

scanf(“%d,%d”,&x,&y);

if(x==y)

printf(“x==y”);

elseif(x>y)

printf(“x>y”);

else

printf(“x

}

A)3<5 B)5>3 C)x>y D)x

18.若有条件表达式x?

a++:

b--,则以下表达式中能完全等价于表达式x的是【】。

A)(x==0) B)(x!

=0) C)(x==1) D)(x!

=1)

19.结构化程序设计的三种基本结构是【】。

A)顺序结构、选择结构、循环结构 B)顺序结构、转移结构、递归结构

C)嵌套结构、选择结构、递归结 D)嵌套结构、循环结构、顺序结构

20.下面的程序

main()

{

inti;

for(i=0;i<10;i++);

printf("%d\n",i);

}

的输出结果是【】。

A)0 B)123456789 C)0123456789 D)10

21. do语句的循环次数为【】。

inta=10;

do{a--;}while(a!

=0)

A)10 B)9 C)11 D)12

22.下面程序段的运行结果是【】。

intn=0;

while(n++<=2);

printf(“%d”,n);

A)2 B)3 C)4 D)出错信息

23.对以下程序段的叙述正确的是【】。

intk=0;

while(k=0)k=k-1;

A)while循环之行10次 B)无线循环

C)循环体一次也不执行 D)循环体被执行一次

24.下面程序的运行结果是【】。

main()

{inti,b,k=0;

for(i=1;i<=5;i++)

{ b=i%2;

while(b-->=0)k++; }

printf(“%d,%d\n”,k,b);

}

A)3,-1B)8,-1C)3,0D)8,-2

25.以下不正确的定义语句是【】。

A)doublex[5]={2.0,4.0,6.0,8.0,10.0};

B)inty[5]={0,1,3,5,7,9};

C)charc1[]={'1','2','3','4','5'};

D)charc2[]={'\x10','\xa','\x8'};

26.以下不能对二维数组a进行正确初始化的语句是【】。

A)inta[2][3]={0};

B)inta[][3]={{1,2},{0}};

C)inta[2][3]={{1,2},{3,4},{5,6}};

D)inta[][3]={1,2,3,4,5,6};

27.下面的程序运行时,若从键盘输入Whatdoes

thisword

mean?

则输出Whatdoesthiswordmean?

请将程序填完整。

#include

main()

{chars1[10],s2[10],s3[10],s4[10];

scanf("%s%s\n",s1,s2);

【】;

scanf("%s",s4);

printf("%s%s%s%s\n",s1,s2,s3,s4);

}

A)gets(s3);B)scanf("%s\n",s3);

C)scanf("%s",s3);D)getchar(s3);

28.设有说明char*a="Nosmoking!

";则以下不能正确输出的语句是【】。

A)printf("%s",&a);B)printf("%s",a);

C)puts(a);D)puts("Nosmoking!

");

29.以下程序的输出结果是【】。

#include

main()

{charstr[12]={'s','t','r','i','n','g',’\0’};

printf("%d",strlen(str));}

A)12B)11C)7D)6

30.以下程序的输出结果是【】。

main()

{inti,x[3][3]={1,2,3,4,5,6,7,8,9};

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

}

A)1,5,9,B)1,4,7,C)3,5,7,D)3,6,9,

31.若有说明intx;则下面判断不正确的是【】。

A)x和(&x)[0]等价B)x和*&x等价C)&x和x[0]等价D)*&x和(&x)[0]等价

32.下面说明不正确的是【】。

A)chara[10]="china";B)chara[10],*p=a;p="china"

C)char*a;a="china";D)chara[10],*p;p=a="china"

33.设己定义staticinta[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;

其中0<i<9,则对a数组元素的引用不正确的是【】。

A)p[p–a]B)*(&a[i])C)p[i]D)*(*(a+i))

34.若有以下定义和语句:

ints[4][5],(*ps)[5];

ps=s;

则下列叙述中不正确的是【】。

A)ps+1与ps[1]等价B)*(ps+1)与ps[1]等价

C)ps[1][1]与*(*(ps+1)+1)等价D)**(ps+1)与ps[1][1]等价

35.C语言规定,函数返回值的类型是由【】。

    A)return语句的表达式类型所决定

    B)调用该函数时的主调函数类型所决定

    C)调用该函数时系统临时决定

    D)在定义该函数时所指定的函数类型所决定

36.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是【】。

A)地址传递B)单向值传递

C)由实参传给形参,再由形参传回实参D)传递方式由用户指定

37.请读程序:

    #include

    fun(char*s)

    {char*p=s;

    while(*p!

='\0')

p++;

    return(p-s);

    }

  main()

    {printf(“%d\n”,fun(“abcdef”));}

    上面输出结果是【】。

   A)3B)6C)8D)0

38.在一个C源程序文件中,若要定义一个只允许在该源程序文件中所有函数使用的变量,则该变量需要的存储类别是【】。

A)static      B)extern

C)register D)auto

39.以下程序的输出结果是【】。

intf()

{staticinti=0;

ints=1;

s+=i;

i++;

returns;

}

main()

{inti,a=0;

for(i=0;i<5;i++)

a+=f();

printf("%d\n",a);

}

A)20B)24C)25D)15

40.若定义enumcolor{red,green,blue,purple,yellow,black,orange}cl;,执行语句c1=green+blue;后,以下选项中cl的结果正确的是【】。

A)greenblueB)purpleC)yellowD)编译出错

41.使用typedef定义一个新类型的正确步骤是【】。

1.把变量名全部删除换成一个新类型名

2.按定义变量的方法写出定义体

3.用新类型名定义变量

4.在最前面加上关键字typedef

A)2,3,1,4   B)1,3,2,4   C)2,1,4,3  D)4,2,3,1

42.为了显示一个文本文件的内容,在打开文件时,文件的打开方式应当是【】。

A)“r+”B)“w+”C)“wb+”D)“ab+”

43.在进行文件操作时,写文件的一般含义是【】。

A)将计算机内存中的信息存入磁盘B)将磁盘中的信息存入计算机内存

C)将计算机CPU中的信息存入磁盘D)将磁盘中的信息存入计算机CPU

44.已知函数的调用形式:

fread(buffer,size,count,fp);其中buffer代表的是【】。

A)一个整型变量,代表要读入的数据项总数

B)一个文件指针,指向要读入的文件

C)一个指针,指向要存放读入数据的首地址

D)一个存储区,存放要读入的数据项

45.若调用fputc函数输出字符成功,则其返回值是【】。

A)输出的字符B)0C)1D)EOF

46.当读写二进制文件,没到文件末尾时,feof函数的值是【】。

A)非零值B)0C)1D)TRUE

47.编译预处理命令不可以放在【】。

A)源文件末尾B)函数内部C)函数外部D)源程序文件的开头

48.下列程序的运行结果是【】。

#defineN2

#defineMN+2

#defineCUBE(x)(x*x*x)

main()

{inti;i=CUBE(M);printf("%d\n",i);}

A)12 B)53C)64D)41

49.下列程序的运行结果是【】。

#defineM3

#defineNM+1

#defineNNN*N/2

main()

{printf("%d\n",5*NN);}

A)17 B)18 C)30D)40

50.以下程序段的输出结果是【】。

main()

{chars[]="\\141\141abc\t";

printf("%d\n",strlen(s));

}

A)9B)12C)13D)14

二、阅读程序题(每空2分,共24分)

请将正确答案按【 】中的序号写入文字答题卡,否则不得分。

1.执行下面程序段后,x的值是【51】;i的值是【52】。

inti,x;

for(i=1,x=1;i<=50;i++)

{ if(x>=10) break;

if(x%2==1)

{ x+=5;

continue; }

x-=3;

}

2.以下程序数据顺序输入为:

86541回车,则的输出结果是【53】。

main()

{inti,b[5];

for(i=0;i<5;i++)

scanf("%d",&b[i]);

for(i=4;i>-1;i--)

printf("%5d",b[i]);

printf("\n");

}

3.下列程序的输出结果是【54】。

#include

main()

{inta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};

printf("%d,%d\n",*(*a+2),*a[2]);

}

4.下列程序的输出结果是【55】。

main()

{inta[5]={12,21,13,6,18};

int*p,*s;

for(p=a,s=a;p-a<5;p++)

if(*p>*s)s=p;

printf("%d\n",*s);

}

5.下列程序的输出结果是【56】。

main()

{char*a="IloveChina!

";

a=a+7;

printf("%s\n",a);

}

6.有如下程序,该程序的输出结果是【57】。

main()

{charch[2][5]={“6937”,”8254”},*p[2];

inti,j,s=0;

for(i=0;i<2;i++)p[i]=ch[i];

for(i=0;i<2;i++)

for(j=0;p[i][j]>’\0’;j+=2)

s=10*s+p[i][j]-’0’;

printf(“%d\n”,s);

}

7.以下程序则输出结果是

f(inta)

{intb=0;

staticintc=3;

b++;c++;

return(a+b+c);

}

main()

{inta=2,i;

printf("%d\n",f(a));【58】

printf("%d\n",f(a));【59】

}

8.下列程序的输出结果是【60】。

intb=2;

intfunc(int*a)

{b+=*a;return(b);}

main()

{inta=2,res=2;

res+=func(&a);

printf("%d\n",res);

}

9.以下程序的输出结果是【61】。

    intd=1;

    func(intp)

    {intd=7;

    d=p;

    printf(“%d”,d);

    return(d);

    }

    main()

    {inta=3;

printf(“%d\n”,func(a+func(d)));

}

10.以下程序的输出是【62】。

structst

{intx;int*y;}*p;

intdt[4]={10,20,30,40};

structstaa[4]={50,&dt[0],60,&dt[1],70,&dt[2],80,&dt[3]};

main()

{p=aa; printf("%d\n",++p->x); }

三、完善程序填空题(每空2分,共26分)

请将正确答案按【 】中的序号写入答题卡,否则不得分。

1.求1~100以内能被3整除且含数字5的数

#include

main()

{ inti,a,b,c;

for(i=1;i<100;i++)

{a=i%10; b=i/10;

if(【63】)

printf("%d\t",i);

}}

2.以下程序输入了20个数存放在一个数组中,并且输出其中最大者与最小者、,20个数的和及它们的平均值。

请填空。

voidmain()

{chararray[20];

intmax,min,average,sum=0;

inti;

for(i=0;i<20;i++)

{

printf("请输入第%d个数:

",i+1);

scanf("%d",&array[i]);

}

max=array[0];

min=array[0];

for(i=0;i<=19;i++)

{if(max

【64】;

if(min>array[i])

【65】;

sum=【66】;

}

average=sum/20;

printf("20个数中最大值是%d,",max);

printf("最小值是%d,",min);

printf("和是%d,",sum);

printf("平均值是%d.\n",average);

}

3.下面程序的功能是:

将字符数组a中下标值为偶数的元素从小到大排列,其它元素不变。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2