C语言题库.docx
《C语言题库.docx》由会员分享,可在线阅读,更多相关《C语言题库.docx(34页珍藏版)》请在冰豆网上搜索。
![C语言题库.docx](https://file1.bdocx.com/fileroot1/2022-11/16/a7259aae-2ce2-4a93-8c36-d9580eb1bfd6/a7259aae-2ce2-4a93-8c36-d9580eb1bfd61.gif)
C语言题库
1、设以下变量均为int类型,则值不等于7的表达式是(C)。
A(x=y=6,x+y,x+1)
B(x=y=6,x+y,y+1)
C(x=6,x+1,y=6,x+y)
D(x=6,x+1,y=x,y+1)
2、设变量a是整型,b是实型,c是双精度型,则表达式10+'a'+b*c值的数据类型为(C)。
Aint
Bfloat
Cdouble
D不确定
3、设有说明:
charw;intx;floaty;doublez;则表达式w*x+z-y值的数据类型为(D)。
Afloat
Bchar
Cint
Ddouble
4、"使用语句scanf(""x=%f,y=%f"",&x,&y);输入变量x、y的值(□代表空格),正确的输入是__C__。
A",1.25,2.4
B1.25□2.4
Cx=1.25,y=2.4
Dx=1.25□y=2.4
5、C语言中while和do-while循环的主要区别是(A).
Ado-while的循环体至少无条件执行一次
Bwhile的循环控制条件比do-while的循控制条件严格
Cdo-while允许从外部转到循环体内
Ddo-while的循环体不能是复合句
6、若有说明:
inta[10];,则对a数组最前面一个元素的正确引用是(D)。
Aa[10]
Ba[3.5]
Ca(5)
Da[10-10]//范围从0到数组元素个数减1
7、以下对二维数组a进行初始化的语句错误的是(C)。
Ainta[2][3]={0};
Binta[][3]={{1,2},{0}};
Cinta[2][3]={{1,2},{3,4},{5,6}};//inta[3][2]={{1,2},{3,4},{5,6}}
Dinta[][3]={1,2,3,4,5,6};
8、下述对C语言字符数组的描述中错误的是(C)
A字符数组可以存放字符串
B字符数组中的字符串可以整体输入、输出
C"可以在赋值语句中通过赋值运算符""=""对字符数组整体赋值D",不可以用关系运算符对字符数组中的字符串进行比较
9、设i和x都是int类型,则以下for循环(A)。
for(i=0,x=0;i<=9&&x!
=876;i++)scanf(""%d"",&x);
A",最多执行者10次
B最多执行者9次
C是无限循环
D循环体一次也不执行
10、下面描述正确的是(D)。
A两个字符串所包含的字符个数相同时,才能比较字符串
B字符个数多的字符串比字符个数少的字符串大
C"字符串""stop""与""Stop""相等","字符串""that""小于D字符串""the""",
11、以下不正确的说法是(B)。
A实参可以是常量、变量或表达式
B形参可以是常量、变量或表达式//实参可以是任意类型的数据。
形参可以是变量,或缺省常量,不可以是表达式
C实参可以是任意类型
D形参应与其对应的实参类型一致
12、以下不正确的说法是(C)。
AC语言允许函数的递归调用
BC语言中的continue语句,可以通过改变程序的结构而省略
C有些递归程序是不能用非递归算法实现的
DC语言中不允许在函数中再定义函数
13、下面函数调用语句中含有实参个数为(B)。
func((exp1,exp2),(exp2,exp4,exp5));
A1
B2
C3
D4
14、设有下面的语句和说明,则下列语句使用正确的是(B)。
Achars[10]=""china"";
B","scanf(""%s"",s[0]);",gets(s);
Cgets(&s);
D"scanf(""%c"",s);",
15、若有说明:
inta[3][4];,则对a数组元素正确引用是(C)。
Aa[2][4]
Ba[1,3]
Ca[1+1][0]
Da
(2)
(1)
16、已知函数定义如下:
floatfun1(intx,inty)
{floatz;
z=(float)x/y;
return(z);
}
主调函数中有inta=1,b=0;可以正确调用此函数的语句是__A__。
A","printf(""%f"",fun1(a,b));
B","printf(""%f"",fun1(&a,&b));
C","printf(""%f"",fun1(*a,*b));
D","调用时发生错误
17、设n=10,i=4,则赋值运算n%=i+1执行后,n的值是(A)。
A0
B3
C2
D1
18、一个C语言程序是由(B)。
A一个主程序和若干子程序组成
B函数组成
C若干过程组成
D若干子程序组成
19、凡是在C语言中函数未指定存储类别的局部变量,其隐含的存储类别为(A)。
A自动
B静态
C外部
D寄存器
20、下列标识符中(D)是C语言中最简单的数据类型的关键字。
Adouble
Bshort
Cinteger
Dchar
21、在C语言中,要求运算数必须是整型的运算符是(D)。
A/
B++
C!
=
D%
22、若int类型数据占两个字节,则以下程序的输出为(D)。
main()
{
intk=-1;
printf(""%d,%u\n"",k,k);
}
A",-1,-1
B-1,32767
C-1,32768
D-1,65535
23、下面程序段中循环体的执行次数是(B)
a=10;b=0;
do{b+=2;a-=2+b;}while(a>=0);
A2
B3
C4
D不定
24、若有说明:
inti,j=7,*p=&i;,则与i=j;等价的语句是(B)
Ai=*p;
B*p=*&j;
Ci=&j;
Di=**p;
25、以下叙述正确的是(C)。
A在C语言中,每行只能写一条语句。
B若X是实型变量,C语言中允许赋值X=100,因此实型变量中允许存放整型变量。
C在C程序中,%只能用于整数运算的运算符。
D在C程序中,无论是整数还是实数,都能被准确无误地表示。
26、若有定义:
inta=7;floatx=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是(A)。
A2.500000
B2.750000
C3.500000
D0.00000
27、若调用一个函数,且函数中没有return语句,则正确的说法是(D)。
A该函数没有返回值
B返回若干个系统默认值
C能返回一个用户所希望的函数值
D返回一个不确定的值
28、假定有以下变量定义:
intk=7,x=12;则能使值为3的表达式是(D)。
Ax%=(k%=5)
Bx%=(k-k%5)
Cx%=k-k%5
D(x%=k)-(k%=5)
29、以下不正确的语句(设有intq,p)是(D)。
Ap*=3;
Bp/=q;
Cp+=3;
Dp&&=q;
30、设intn=3,则++n的结果是(C)。
A2
B3
C4
D5
31、在执行inta[][3]={1,2,3,4,5,6};语句后,a[1][0]的值是(C)。
A1
B2
C4
D5
32、在执行inta[][3]={1,2,3,4,5,6};语句后,a[1][2]的值是(D)。
A1
B2
C5
D6
33、若有说明inta[][3]={1,2,3,4,5,6,7};,则a数组第一维的大小是(B)。
A2
B3
C4
D无确定值
34、假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是(B)。
A7
B8
C6
D2
35、设以下程序段
intx=0,s=0;
while(!
x!
=0)s+=++x;
printf(""%d"",s);则(B)。
A",运行程序后输出0
B运行程序后输出1
C程序段中的控制表达式是非法的
D程序段执行无限次
36、已知inti=1;执行语句while(i++<4);后,变量i的值为_C___。
A3
B4
C5
D6
37、设变量a是整型,b是实型,c是双精度型,则表达式10+'a'+b*c值的数据类型为(C)。
Aint
Bfloat
Cdouble
D不确定
38、在C语言中,当while语句中的条件为(A)时,结束该循环。
A0
B1
Ctrue
D非0
39、下列四组选项中,均不是C语言关键字的选项是(A)。
Adefineoftype
Bgetccharprintf
Cincludescanfcase
Difstructtype
40、C语言用(C)表示逻辑“真”值。
ATrue
BT或Y
C非零整数值
D整数0
41、已知x=7,y=3,表达式x/y的值是(B)。
A1
B2
C0
D其他值
42、已知x=023,表达式++x的值是(C)。
A18
B19
C20
D其他值
42、已知x=10,表达式x+=x-=x-x的值是(B)。
A10
B20
C30
D0
43、温度华氏和摄氏的关系是:
C=(5/9)(F-32)。
已知:
floatC,F;由华氏求摄氏的正确的赋值表达式是__B__。
AC=5/9(F-32)
BC=5*(F-32)/9
CC=5/9*(F-32)
D三个表达式都正确
44、关系式xx(x!
(x>=y)||!
(y>=z)
0
45、设inta=10,则执行完语句a+=a-=a*a后,a的值是(D)。
A99
B110
C100
D-180
46、下面代表一个16进制整数是(D)。
A'A'
B65
C0100
D0x41
47、下面代表一个8进制整数是(C)。
A'A'
B65
C0100
D0x41
48、设u=1,v=2,w=3,则表达式w==(v=-u)执行完后w的值是(A)。
A3
B2
C1
D0
49、intx=4,y=5;则执行完表达式x*=y-1后x的值是(A)。
A16
B0
C1
D19
50、以下对i,j,k进行说明并赋值的方法中,错误的是(A)。
Ainti=j=k=1;
Binti,j,k;i=j=k=1;
Cinti=1,j=1,k=1;
Dinti=1,j=i,k=i;
51、intx=4,y=5;则执行完表达式(x*=y-1,x+1)后x的值是(A)。
A16
B20
C17
D19
52、intx,y,z,k;则执行完表达式x=