《C语言选择题库》由会员分享,可在线阅读,更多相关《C语言选择题库(25页珍藏版)》请在金锄头文库上搜索。
1、复习题一、单项选择题(每题1分,共30分) 1、一个C语言程序是由( )。A一个主程序和若干子程序组成B函数组成C若干过程组成D若干子程序组成 3、用来标识变量名、符号常量名、函数名、类型名、文件名、数组名的有效字符序列称为标识符。在C语言中,规定标识符只能有字母、数值或下划线三类字符组成,且第一个字符必须为( )或( )。A.字母,数字B.数字,下划线C.字母,下划线D.字母,下划线,数字 5、语言中,主调函数携带的参数列表称为实参,而被调用函数的参数列表习惯上称为( )。A.形式参数B.值参 C.动态参数D.静态参数 7、下列关于switch和break语句的结论中,只有( )是正确的。A
2、.break语句是switch语句的一部分B.在switch语句中可以根据需要使用或不使用break语句C.在switch语句中必须使用break语句D.以上三个结论中有两个是正确的 9、对于数组amn来说,使用数组的某个元素时,行下标最大值是( ),列下标最大值是( )。A. m,n1B. m1,n1C. m1,nD. m,n 10、下面程序段的运行结果是( )。char a7=abcedf;char b4=ABC;strcpy(a,b);printf(“%c”,a5);A. dB. 0C. eD. f 11、一维double型数组a长度为10,则实际所占内存字节数为( )。 A. 20B.
3、 40C. 60D. 80 12、字符串a=“hello”,则函数调用strlen(a)的返回值为( )。A. 4B. 5C. 6D. 4 13、在语言中,&作为单目运算符时表示的是( )。A.地址与B.取地址C.输入地址D.输出地址 14、对不同类型的数据有不同的格式字符。例如:( )格式字符是用来输出十进制整数,( )格式字符是用来输出一个字符串。A., B.,C.,D., 15、语句的特点是( )。A.先执行循环语句,再判断条件是否为真(成立),若成立则继续执行循环,若不成立,则结束循环。do-while至少执行一次循环。B. 先判断条件是否成立(为真),若不成立则执行循环。C. 先执行
4、循环语句,再判断条件是否为假(不成立),若不成立则继续执行循环,若成立,则结束循环。D. 先执行循环语句,再判断条件是否为真(成立),若不成立则继续执行循环,若成立,则结束循环。 16、下面程序段的运行结果是( )。char *s=“abcde”;s+=2;printf(“%d”,s);A. cdeB. 字符cC. 字符c的地址D. 无确定的输出结果 17、若已知15,10,则表达式!的值为( )。A. 1B. 0C. 5D. -5 18、若字符量在内存中占用一个字节,字符串“”则应占( )个字节。A. 2B. 4C. 1D. 0 19、在语言中,输入操作可以由库函数( )完成,输出操作可以由
5、库函数( )完成。A. scanf, printfB. inputf, outputC. get, outD. puts, gets 21、合法的数组定义是( )。A. char a =string;B. inta5=0,1,2,3,4,5;C. int s=string;D. char a =0,1,2,3,4,5; 22、当a=3,b=4,c=1时,表达式f=abc的值是( )。A. 3B. 0C. 1D. 4 23、请问:下面这个程序段的输出是( )。Int a,b,c;a=7;b=8;c=9;if(ab) a=b, b=c;c=a;printf(“a=%d b=%d c=%dn”,a,
6、b,c);A. a=7 b=8 c=7B. a=7 b=9 c=7 C. a=8 b=9 c=7D. a=8 b=9 c=8 24、若有char ch;则要使指针p指向该类型的定义语句为:( )A. int pB. char pC. char *pD. int *p 25、有以下表达式int a10=19,23,14,17,37,28,49,36,*p;p=a;则值为36的表达式为:( )A. p+7B. *(p+7)C. *(p)D. *(p+1) *26、执行printf(%d,%o,10,11)语句的值为( )。A. 10,10B. 13,12C. 10,13D. 13,10 27、已有
7、定义float n;char ch1;,为使n=6.5,ch1=a,对应的scanf语句是( )。A.scanf(“%f%c”,&n,&ch1);B.scanf(“%f,%c”,&n,&ch1,);C.scanf(“%f%c”, n,&ch1);D.scanf(“%f%c”,&n,ch1); 1、以下说法中正确的是( )。AC语言程序总是从第一个定义的函数开始执行B在C语言程序中,要调用的函数必须在main( )函数中定义CC语言程序总是从main( )函数开始执行DC语言程序中的main( )函数必须放在程序的开始部分 2、以下选项中,合法的C语言标识符是( )。A1_1 B1-1 C_11
8、 D1_ 3、下面合法的C语言字符常量是( )。At BA C65 DA 4、字符(char)型数据在微机内存中的存储形式是( )。A反码 B补码 CEBC D.IC码 5、表达式: 10!=9的值是( )。A true B非零值 C0 D1 6、为表示关系xyz,应使用的C语言表达式是( )。A(x=y) & (y=z)B(x=y) AND (y=z)C(x=y=z)D(x=y) & (y=z) 7、阅读下面的程序#includevoid main()int i,j;scanf(%3d%2d,&i,&j); printf(i=%d,j=%dn,i,j);如果从键盘上输入1234567,则程序
9、的运行结果是( )。Ai=123,j=4567 Bi=1234,j=567 Ci=1,j=2 Di=123,j=45 8、若已定义x和y是整型变量,x=2;,则表达式y=2.75+x/2的值是( )。A5.5 B5 C3 D4.0 9、以下程序的输出结果是( )。#includevoid main()int a=12, b=12;printf(%d,%dn,-a,+b);A10,10 B12,12C11,10 D11,13 10、a=3,b=4,c=5,表达式a+bc& b=c的值是( )。A0B1C表达式不合法D均不对 11、为了避免嵌套的if-else语句的二义性,C语言规定else总是与
10、( )组成配对关系.A缩排位置相同的if B在其之前未配对的ifC在其之前尚未配对的最近的if D同一行上的if 12、下列程序执行后的输出结果是( )。 #include void main( ) int a=5,b=60,c;if (a=A &ch=Z)?ch+32:ch的值是( )。AZ Ba Cz DA 14、下面程序的运行结果是( )。 #includevoid main( ) int s=0,i=1;while (s=10) s=s+i*i;i+;printf(%d,-i);A4 B3 C5 D6 15、下面程序的输出结果是( )。#includevoid main( ) int
11、i;for(i=1;i6;i+) if (i%2!=0) printf(#);continue;printf(*); printf(n); A#*#*# B# C* D*#*#* 16、以下叙述正确的是( )。Acontinue语句的作用是结束整个循环的执行B只能在循环体内和switch语句体内使用break语句C在循环体内使用break语句或continue语句的作用相同D从多层循环嵌套中退出时,只能使用goto语句 17、若有说明int a34;,则对a数组元素的非法引用是( )。Aa02*1Ba13 Ca4-20Da04 18、要求下面的程序运行后,显示如下结果:2 10 4 61 5 2 32 4 7 85 1 3 2则程序中的划线处应填入( )。#include void main( ) int a44= _ ;Int i,j;for(i=0;i4;i+)for(j=0;j4;j+) printf(%4d,aij);printf(n); A1,5,2,3,2,4,7,8,5,1,3,2B2,10,4,6,1,5,2