C语言程序设计试题1整理精品文档.docx
《C语言程序设计试题1整理精品文档.docx》由会员分享,可在线阅读,更多相关《C语言程序设计试题1整理精品文档.docx(11页珍藏版)》请在冰豆网上搜索。
![C语言程序设计试题1整理精品文档.docx](https://file1.bdocx.com/fileroot1/2022-10/28/f108c6d0-0add-4d64-90b3-b3ca0cc57c0e/f108c6d0-0add-4d64-90b3-b3ca0cc57c0e1.gif)
C语言程序设计试题1整理精品文档
(完整版)C语言程序设计试题
编辑整理:
尊敬的读者朋友们:
这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整版)C语言程序设计试题)的内容能够给您的工作和学习带来便利。
同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。
本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整版)C语言程序设计试题的全部内容。
C语言程序设计试题
一、单项选择题(本题共25小题,每小题2分,共50分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其正确答案涂写在答题卡上。
错选、多选或未选均无分。
1。
以下正确的C语言自定义标识符是______.
A._1aB。
2a_
C.doD。
a.12
2.在C语言中,错误的常数表示是_______。
A。
0LB。
—0x6aL
C.’6’D.1.234E3.5
3。
设inta,x=2;执行语句a=x〉0?
3*x:
x=10;后,变量x的值是_______.
A。
1B.2
C。
6D.10
4.设有以下程序段:
intx=2,y=2,z=0,a;
a=++x||++y&&z++;
printf("%d,%d,%d\n",x,y,z);
执行后输出的结果是_________。
A.2,2,0B。
3,3,1
C.3,2,0D.3,2,1
5.在C语言中,字符串"\\TOP\t\65\""的长度是_______.
A.5B.7
C.8D。
12
6.设floatx,由键盘输入:
12。
45,能正确读入数据的输入语句是_________。
A.scanf(”%5f",&x)B。
scanf("%5d”,&x);
C。
scanf("%f”,x);D。
scanf("%s",&x);
7.逗号表达式a=2*6,a*3,a+5的值是_________。
A。
12B。
17
C.36D。
41
8.C语言程序中,整型常量的书写形式不包括_________。
A.二进制B。
八进制
C.十进制D。
十六进制
9.在C语言中,下列运算符中结合性属于自右向左的是_________。
A。
&&B。
-
C.〈〈D。
->
10.设intx;,则与计算︱x︱等价的表达式是_________。
A。
x〉0?
—x:
xB。
x>0?
x:
-x
C.x〈0?
x:
-xD。
x<0?
-x:
-x
11。
执行下面的程序段后,k的值是_______.
intk=1,n=325;
do{k*=n%10;n/=10;}while(n);
A.3B。
30
C。
523D.325
12.表达式的值为0的是_________。
A。
5/5%5B。
5〉2
C。
!
4D。
0x7&&7
13.设inta=11,b=2;执行下述程序段后,变量a和b的值分别是_______。
do
{a/=b++;
}while(a>b);
A。
1,3B.1,4
C。
2,3D.2,4
14。
在C语言中,下列错误的说法是_______。
A。
函数可以递归调用
B。
不允许在函数中再定义函数
C.递归程序不可能用非递归算法实现
D。
对于continue语句,可以通过改变程序的结构而不使用它
15.inta[2][3]={{1},{2,3}};,则a[1][0]的值是_________。
A.0B.1
C。
2D。
3
16。
以下对二维数组a的正确说明是_________..
A.inta[3][];B.floata[][4];
C.doublea[3][4];D。
floata(3)(4);
17.设chars[10]="abcd”,t[]=”12345";,则s和t在内存中分配的字节数分别是_______。
A.6和5B.6和6
C。
10和5D.10和6
18.switch(表达式)语句中的“表达式",允许的类型是_________。
A.float,intB.float,int,char
C。
int,charD.char,double
19。
在C语言中,形参的隐含存储类别是_________.
A。
autoB.static
C。
externD。
register
20。
下列属于文件包含的命令是_________。
A。
#defineN25B.#endif
C.#include”stdio.h”D.#else
21。
设inti,j;
for(i=5;i;i—-)
for(j=0;j〈4;j++){…}
则循环体执行次数是________。
A.5B.4
C。
20D。
无限次
22.若有以下定义和语句:
charstrl[]="string",str2[5];
则用以复制字符串的正确方法是_______。
A.strcpy(str2,"Hello”);
B。
strcpy(strl,"Hello");
C.str2=str1;
D。
str1=”Hello”;
23.正确的变量定义是________.
A.unsignedlongd=1000;
B.floatm1=m2=10。
0;
C.charc1=’A',c2=A;
D.doublex=0.618,x=3。
14;
24.下面程序的输出结果是_______.
#includeh>
voidmain()
{ints,k;
for(s=1,k=2;k〈5;k++)
s+=k;
printf(”%d\n”,s);
}
A。
1B。
9
C.10D.15
25.下列描述中不正确的是_______.
A.字符型数组中可以存放字符串
B.可以对字符型数组进行整体输入、输出
C。
可以对实型数组进行整体输入、输出
D。
不能在赋值语句中通过赋值运算符“="对字符型数组进行整体赋值
二、填空题(本题共10小题,每小题2分,共20分)
请在每小题空格中填上正确答案.错填、不填均无分。
26。
一个C语言程序的执行起点是___________。
27.设intx=3,y=5;则执行printf(”%d\n",x&&y);后输出_____。
28.定出公式对应的C语言表达式______。
29.若函数调用语句为f(a,b,f(a+b,a—b,b));,则函数f的参数个数是_______。
30。
设inta=2;,则执行a+=a*=15;后,变量a的值是_______。
31。
设doubley[4][5];,则数组y中元素的个数是_______.
32.设intx=7,y=3,则表达式x%y+x/y的值是________。
33.设chars[]={”E_mail"};,则执行printf(”%d\n”,strlen(s));后输出的值是_____。
34。
当执行下面程序段后,变量i的值是____________。
inta,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++;
dok++;while(a>d++);
35.设inta[3][4]={{1,2,5,3},{2,4,7,9},{3,6,5,8}};则表达式a[1][2]+a[2][3]的值是________。
三、程序分析题(本题共5小题,每小题2分,共10分)
36。
写出下面程序的运行结果。
#include〈stdio.h〉
voidmain()
{
intx=15;
while(x<20)
{x++;
if(x/3!
=0){x++;break;}
elsecontinue;
}
printf(”%d\n",x);
}
37。
写出下面程序的运行结果。
#include〈stdio.h>
voidinv(intx[],intn)
{intt,i,j;
for(i=0;i〈n/2;i++)
{j=n-1-i;
t=x[i];x[i]=x[j];x[j]=t;}
}
voidmain()
{inti,a[5]={3,7,9,11,0};
inv(a,5);
for(i=0;i<5;i++)
printf(”%d",a[i]);
printf(”\n”);
}
38.写出下面程序的运行结果。
(程序运行时,输入一个整数5)
#includevoidmain()
{
inta,b[10],c,i=0;
printf(”输入一个整数\n");
scanf(”%d",&a);
while(a!
=0)
{c=a%2;
a=a/2;
b[i]=c;
i++;
}
for(;i〉0;i—-)printf("%d”,b[i-1]);
}
39.写出下面程序的运行结果。
#include〈stdio。
h〉
voidmain()
{
inta,b,i;
a=b=0;
for(i=0;i〈=10;i+=2)
{a+=i;
b+=i+1;
}
printf(”a=%d\n”,a);
printf("b=%d\n",b—11);
}
40.写出下面程序的运行结果.
#include〈stdio。
h>
inta=100;
s()
{staticinta=20;
a++;
printf(”%d\n”,a);
}
voidmain()
{
inti;
for(i=1;i<=3;i++)
{a++;
printf("%d",a);
s();
}
}
四、程序填充题(本题共2小题,每个空格2分,共10分)
给出下列程序,将横线处缺少的部分补上,使其能正确运行。
41.对含有10个元素的数组a先按元素的存储次序倒序输入,再按其正序输出。
#include〈stdio.h〉
#define_____________/*空格1*/
voidmain()
{
inti,a[N];
for(i=N-1;________;i—-)/*空格2*/
scanf("%d”,__________);/*空格3*/
for(i=0;iprintf("\n");
}
42.学生成绩的字每等级和分数范围如下:
字母等级分数范圈
A90~1