1、c语言单选题1、C语言源程序的基本单位是()。 A) 过程 B) 函数 C) 子程序 D) 标识符答案:B2、下列字符序列中,可用作C标识符的一组字符序列是()。 A) S.b,sum,average,_above B) class,day,lotus_1,2day C) #md,&12x,month,student_n! D) D56,r_1_2,name,_st_1答案:D3、以下标识符中,不能作为合法的C用户定义标识符的是()。 A) a3_b3 B) void C) _123 D) IF答案:B4、以下数据中,不正确的数值或字符常量是()。 A) 0 B) 5L C) o13 D) 9
2、861答案:C5、以下的选择中,正确的赋值语句是()。 A) a=1,b=2 B) j+ C) a=b=5; D) y=int(x)答案:C6、以下运算符中,优先级最高的运算符是()。 A) ?: B) + C) & D) ,答案:B7、在C语言中,能代表逻辑值“真”的是()。 A) True B) 大于0的数 C) 非0整数 D) 非0的数答案:D8、下列变量说明语句中,正确的是()。 A) char:a b c; B) char a;b;c; C) int x;z; D) int x,z;答案:D9、下列字符序列中,不可用作C语言标识符的是()。 A) b70 B) #ab C) symb
3、ol D) a_1答案:B10、以下不正确的叙述是()。 A) 在C程序中所用的变量必须先定义后使用 B) 程序中,APH和aph是两个不同的变量 C) 若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变 D) 当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值答案:D11、以下标识符中,不能作为合法的C用户定义标识符的是()。 A) For B) Printf C) WORD D) sizeof答案:D12、以下标识符中,不能作为合法的C用户定义标识符的是()。 A) answer B) to C) signed D) _if答案:C13、以下
4、标识符中,不能作为合法的C用户定义标识符的是()。 A) putchar B) _double C) _123 D) INT答案:A14、以下数据中,不正确的数值或字符常量是()。 A) 8.9e1.2 B) 10 C) 0xff00 D) 82.5答案:A15、以下数据中,不正确的数值或字符常量是()。 A) c B) 66 C) 0xaa D) 50答案:A16、以下运算符中,优先级最高的运算符是()。 A) *= B) = C) (类型) D) +答案:C17、以下运算符中,优先级最高的运算符是()。 A) | B) % C) ! D) =答案:C18、以下运算符中,优先级最高的运算符是
5、()。 A) = B) != C) *(乘号) D) ()答案:D19、以下叙述中不正确的是()。 A) 一个好的程序应该有详尽的注释 B) 在C程序中,赋值运算符的优先级最低 C) 在C程序中,j+;是一条赋值语句 D) C程序中的#include和#define均不是C语句答案:B20、设C语言中,int类型数据占2个字节,则long类型数据占()。 A) 1个字节 B) 2个字节 C) 4个字节 D) 8个字节答案:C21、设C语言中,int类型数据占2个字节,则short类型数据占()。 A) 1个字节 B) 2个字节 C) 4个字节 D) 8个字节答案:B22、C语言中,double
6、类型数据占()。 A) 1个字节 B) 2个字节 C) 4个字节 D) 8个字节答案:D23、C语言中,char类型数据占()。 A) 1个字节 B) 2个字节 C) 4个字节 D) 8个字节答案:A24、设C语言中,int类型数据占2个字节,则unsigned类型数据占()。 A) 1个字节 B) 2个字节 C) 4个字节 D) 8个字节答案:B25、下列程序的输出结果是()。main()char c1=97,c2=98;printf(%d %c,c1,c2); A) 97 98 B) 97 b C) a 98 D) a b答案:B26、执行下列语句后变量x和y的值是()。y=10;x=y+
7、; A) x=10,y=10 B) x=11,y=11 C) x=10,y=11 D) x=11,y=10答案:C27、下列数据中,为字符串常量的是()。 A) A B) house C) How do you do. D) $abc答案:B28、先用语句定义字符型变量c,然后要将字符a赋给c,则下列语句中正确的是()。 A) c=a; B) c=a; C) c=97; D) C=97答案:A29、下列语句的结果是()。main() int j; j=3;printf(%d,+j); printf(%d,j+); A) 3,3 B) 3,4 C) 4,3 D) 4,4答案:D30、设a=12,
8、且a定义为整型变量。执行语句a+=a-=a*=a;后a的值为()。 A) 12 B) 144 C) 0 D) 132答案:C31、已知year为整型变量,不能使表达式(year%4=0&year%100!=0)|year%400=0的值为“真”的数据是()。 A) 1990 B) 1992 C) 1996 D) 2000答案:A32、下列运算符中,不属于关系运算符的是()。 A) C) = D) !答案:D33、假设所有变量均为整型,表达式:a=2,b=5,ab?a+:b+,a+b的值是()。 A) 7 B) 8 C) 9 D) 2答案:B34、以下不符合C语言语法的赋值语句是()。 A) a
9、=1,b=2 B) +j; C) a=b=5; D) y=(a=3,6*5);答案:A35、以下不符合C语言语法的赋值语句是()。 A) j+; B) j=j=5; C) k=2*4,k*4; D) y=float(j);答案:D36、执行下列程序后,其输出结果是()。main()int a=9; a+=a-=a+a; printf(%dn,a); A) 18 B) 9 C) -18 D) -9答案:C37、下列语句的输出结果是()。printf(%dn,(int)(2.5+3.0)/3); A) 有语法错误不能通过编译 B) 2 C) 1 D) 0答案:C38、下列程序的输出结果是()。ma
10、in()int a=7,b=5; printf(%dn,b=b/a); A) 0 B) 5 C) 1 D) 不确定值答案:A39、下列程序的输出结果是()。main()int a=011; printf(%dn,+a); A) 12 B) 11 C) 10 D) 9答案:C40、下列程序的输出结果是()。main() printf(%dn,null); A) 0 B) 变量无定义 C) -1 D) 1答案:B41、若int类型数据占两个字节,则下列语句的输出为()。int k=-1; printf(%d,%un,k,k); A) -1,-1 B) -1,32767 C) -1,32768 D)
11、 -1,65535答案:D42、若k,g均为int型变量,则下列语句的输出为()。k=017; g=111; printf(%dt,+k); printf(%xn,g+); A) 15 6f B) 16 70 C) 15 71 D) 16 6f答案:D43、以下程序段的执行结果是()。double x;x=218.82631; printf(%-6.2en,x); A) 输出格式描述符的域宽不够,不能输出 B) 输出为21.38e+01 C) 输出为2.2e+02 D) 输出为-2.14e2答案:C44、若k为int型变量,则以下程序段的执行结果是()。k=-8567; printf(|%06
12、D|n,k); A) 格式描述符不合法,输出无定值 B) 输出为|%06D| C) 输出为|0-8567| D) 输出为|-8567|答案:B45、若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97),则以下程序段的执行结果是()。ch=a; k=12; printf(%x,%o,ch,ch,k); printf(k=%dn,k); A) 因变量类型与格式描述符的类型不匹配,输出无定值 B) 输出项与格式描述符个数不符,输出为零值或不定值 C) 61,141,k=%d D) 61,141,k=%12答案:C46、若有以下定义:char s=092; 则该语句()。
13、 A) 使s的值包含1个字符 B) 定义不合法,s的值不确定 C) 使s的值包含4个字符 D) 使s的值包含3个字符答案:B47、若a是float型变量,b是unsigned型变量,以下输入语句中合法的是()。 A) scanf(%6.2f%d,&a,&b); B) scanf(%f%n,&a,&b); C) scanf(%f%3o,&a,&b); D) scanf(%f%f,&a,&b);答案:C48、已知字母a的ASCII十进制代码为97,则执行下列语句后的输出结果为()。char a=a; a-;printf(%d,%cn,a+2-0,a+3-0); A) b,c B) a-运算不合法,
14、故有语法错 C) 98,c D) 格式描述和输出项不匹配,输出无定值答案:C49、下列程序的输出结果为()。main()int m=7,n=4;float a=38.4,b=6.4,x;x=m/2+n*a/b+1/2;printf(%fn,x); A) 27.000000 B) 27.500000 C) 28.000000 D) 28.500000答案:A50、若给定条件表达式(M)?(a+):(a-),则其中表达式M()。 A) 和(M=0)等价 B) 和(M=1)等价 C) 和(M!=0)等价 D) 和(M!=1)等价答案:C51、以下程序的输出结果是()。main()int i,j,k,
15、a=3,b=2;i=(-a=b+)?-a:+b;j=a+;k=b;printf(i=%d,j=%d,k=%dn,i,j,k); A) i=2,j=1,k=3 B) i=1,j=1,k=2 C) i=4,j=2,k=4 D) i=1,j=1,k=3答案:D52、a,b为整型变量,二者均不为0,以下关系表达式中恒成立的是()。 A) a*b/a*b=1 B) a/b*b/a=1 C) a/b*b+a%b=a D) a/b*b=a答案:C53、为了提高程序的运行速度,在函数中对于整型或指针可以使用()型的变量。 A) auto B) register C) static D) extern答案:B5
16、4、以下程序的输出结果为()。main()int i=010,j=10; printf(%d,%dn,+i,j-); A) 11,10 B) 9,10 C) 010,9 D) 10,9答案:B55、C 语言中以下几种运算符的优先次序()的排列是正确的。 A) 由高到低为:!,&,|,算术运算符,赋值运算符 B) 由高到低为:!,算术运算符,关系运算符,&,|,赋值运算符 C) 由高到低为:算术运算符,关系运算符,赋值运算符,!,&,| D) 由高到低为:算术运算符,关系运算符,!,&,|,赋值运算符答案:B56、设a为整型变量,初值为12,执行完语句a+=a-=a*a后,a的值是()。 A)
17、552 B) 144 C) 264 D) -264答案:D57、经下列语句定义后,sizeof(x),sizeof(y),sizeof(a),sizeof(b)在微机上的值分别为()。char x=65;float y=7.3; int a=100; double b=4.5; A) 2,2,2,4 B) 1,2,2,4 C) 1,4,2,8 D) 2,4,2,8答案:C58、用下列语句定义a,b,c,然后执行b=a、c=b+b,则b,c的值是()。 long a=0xffffff; int b; char c; A) 0ffffff 和0x61 B) -1和98 C) -1和97 D) 指向
18、同一地址答案:C59、执行下列语句后,a和b的值分别为()。int a,b; a=1+a; b=2+7%-4-A; A) -63,-64 B) 98,-60 C) 1,-60 D) 79,78答案:B60、C语言中要求对变量作强制定义的主要理由是()。 A) 便于移植 B) 便于写文件 C) 便于编辑预处理程序的处理 D) 便于确定类型和分配空间答案:D61、以下程序的输出结果是()。main()float x=3.6; int i; i=(int)x; printf(x=%f,i=%dn,x,i); A) x=3.600000,i=4 B) x=3,i=3 C) x=3.600000,i=3
19、 D) x=3 i=3.600000答案:C62、经过以下语句定义后,表达式z+=xy?+x:+y的值为()。 int x=1,y=2,z=3; A) 2 B) 3 C) 6 D) 5答案:C63、以下程序的运行结果是()。main() int i=1,sum=0; while(i10) sum=sum+1;i+; printf(i=%d,sum=%d,i,sum); A) i=10,sum=9 B) i=9,sum=9 C) i=2,sum=1 D) 运行出现错误答案:D64、以下程序的运行结果是()。main() int n; for(n=1;n0|E0) C) (E=0) D) (E!=
20、0)答案:C67、假定所有变量均已正确定义,下列程序段运行后x的值是()。k1=1;k2=2;k3=3;x=15;if(!k1) x-;else if(k2) x=4; else x=3; A) 14 B) 4 C) 15 D) 3答案:B68、执行下列语句后的输出为()。 int j=-1; if(j=1) printf(*n); else printf(%n); A) * B) % C) %c D) 有错,执行不正确答案:A69、下列程序的输出结果是()。main() int x=1,y=0,a=0,b=0; switch(x) case 1:switch(y) case 0:a+;bre
21、ak; case 1:b+;break; case 2:a+;b+;break; case 3:a+;b+;break; printf(a=%d,b=%dn,a,b); A) a=1,b=0 B) a=2,b=1 C) a=1,b=1 D) a=2,b=2答案:B70、在C语言中,为了结束由while语句构成的循环,while后一对圆括号中表达式的值应该为()。 A) 0 B) 1 C) True D) 非0答案:A71、下列程序的输出为()。main() int y=10; while(y-); printf(y=%dn,y); A) y=0 B) while构成无限循环 C) y=1 D)
22、 y=-1答案:D72、C语言的if语句嵌套时,if与else的配对关系是()。 A) 每个else总是与它上面的最近的if配对 B) 每个else总是与最外层的if配对 C) 每个else与if的配对是任意的 D) 每个else总是与它上面的if配对答案:A73、设j和k都是int类型,则for循环语句 for(j=0,k=-1;k=1;j+,k+) printf(*n);()。 A) 循环结束的条件不合法 B) 是无限循环 C) 循环体一次也不执行 D) 循环体只执行一次答案:B74、下列数组说明中,正确的是()。 A) int array4; B) int array; C) int a
23、rray5; D) int array3;答案:A75、下列数组说明中,正确的是()。 A) static char str=China; B) static char str; str=China; C) static char str15,str2=China; str1=str2; D) static char str1,str2;str2=China; strcpy(str1,str2);答案:A76、下列定义数组的语句中正确的是()。 A) #define size 10 char str1size,str2size+2; B) char str; C) int num10; D)
24、int n=5; int ann+2;答案:A77、下列定义数组的语句中不正确的是()。 A) static int a23=1,2,3,4,5,6; B) static int a23=1,4,5; C) static int a3=1,4; D) static int a=1,2,3,4,5,6;答案:D78、下列语句中,不正确的是()。 A) static char a2=1,2; B) static int a2=1,2; C) static char a2=1,2,3; D) static char a2=1;答案:C79、若输入ab,程序运行结果为()。main() static
25、char a3; scanf(%s,a); printf(%c,%c,a1,a2); A) a,b B) a, C) b, D) 程序出错答案:C80、下列说法不正确的是()。 A) 主函数main中定义的变量在整个文件或程序中有效 B) 不同函数中,可以使用相同名字的变量 C) 形式参数是局部变量 D) 在一个函数内部,可以在复合语句中定义变量,这些变量只在复合语句中有效答案:A81、关于return语句,下列正确的说法是()。 A) 不能在主函数中出现且在其他函数中均可出现 B) 必须在每个函数中出现 C) 可以在同一个函数中出现多次 D) 只能在除主函数之外的函数中出现一次答案:C82、
26、在C语言的函数中,下列正确的说法是()。 A) 必须有形参 B) 形参必须是变量名 C) 可以有也可以没有形参 D) 数组名不能作形参答案:C83、在C语言程序中()。 A) 函数的定义可以嵌套,但函数的调用不可以嵌套 B) 函数的定义不可以嵌套,但函数的调用可以嵌套 C) 函数的定义和函数调用均可以嵌套 D) 函数的定义和函数调用不可以嵌套答案:B84、C语言执行程序的开始执行点是()。 A) 程序中第一条可以执行语言 B) 程序中第一个函数 C) 程序中的main函数 D) 包含文件中的第一个函数答案:C85、C语言程序中,若对函数类型未加显式说明,则函数的隐含说明类型为()。 A) void B) double C) int D) char答案:C86、C语言程序中,当调
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1