计算机二级c语言选择题库(带答案).pdf
二级C语言相关考点1、以下选项中,能 用 作 数 据 常 量 的 就 是。(标准答案:C)(A)o l l 5 (B)0 1 1 8(C)1 1 5 L(D)1.5 el、52、下列叙述中错误的就是 o (标准答案:A)(A)一个C语言程序只能实现一种算法(B)一个C函数可以单独作为一个C程序文件存在(C)C程序可以由一个或多个函数组成(D)C程序可以由多个程序文件组成3、设变量已正确定义并赋值,以下正确的表达式就是 o (标准答案:B)(A)i n t(1 5、8%5)(B)x=y+z+5,+y (C)x=2 5%5 0 (D)x=y*5=x+z4、以下叙述中错误的就是 o (标准答案:A)(A)C语言中的每条可执行语句与非执行语句最终都将被转换成二进制的机器指令(B)C语言源程序经编译后生成后缀为、o bj的目标程序(。用C语言编写的程序称为源程序,它以A S C I I代码形式存放在一个文本文件中(D)C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件5、按照C语言规定的用户标识符命名规则,不能出现在标识符中的就是 o (标准答案:D)(A)大写字母(B)下划线(C)数字字符(D)连接符6、以下选项中,合法的一组C语言数值常量就是 0(标准答案:D)(A)0 x 8 A 1 0,0 0 0 3 e5 (B)、1 7 7 4 el、5 O abc(C)0 2 8、5 e-3 -O x f(D)1 2、0 X a2 3 4、5 e07、以下选项中不合法的标识符就是 o (标准答案:C)(A)p r i n t (B)F O R (C)&a (D)_0 08、若有定义:do u bl e a=2 2;i n t i=0,k=1 8;,则不符合C语言规定的赋值语句就是(A)i=(a+k)设有定义:i n t x=2;,以下表达式中,值不为6的就是(A)x*=(l+x)(B)x*=x+l (C)x+,2 x (D)2*x,x+=2标准答案:D1 2、有以下程序#i n cl u de h m ai n()i n t x,y,z;x=y=l;z=x+,y+,+y;printf(%d,%d,%dn,x,y,z);)程序运行后的输出结果就是(A)2,3,3(B)2,2,1(C)2,3,2(D)2,3,1标准答案:D13、以下叙述中错误的就是(A)使用三种基本结构构成的程序只能解决简单问题(B)C语言就是一种结构化程序设计语言(C)结构化程序由顺序、分支、循环三种基本结构组成(D)结构化程序设计提倡模块化的设计方法标准答案:A14、以下选项中,能用作用户标识符的就是(A)8_8(B)unsigned(C)_0_(D)void标准答案:C15、C源程序中不能表示的数制就是(A)二进制(B)十六进制(C)十进制(D)八进制标准答案:A16、若有定义语句:int x=10;,则表达式x=x+x的值为-2-(A)O(B)10(C)-20(D)-10标准答案:D17、以下选项中不合法的标识符就是(A)&a(B)print(C)_00(D)FOR标准答案:A18、以下关于结构化程序设计的叙述中正确的就是(A)一个结构化程序必须同时由顺序、分支、循环三种结构组成(B)有三种基本结构构成的程序只能解决小规模的问题(C)在C语言中,程序的模块化就是利用函数实现的(D)结构化程序使用goto语句会很便捷标准答案:C19、对于一个正常运行的C程序,以下叙述中正确的就是(A)程序的执行总就是从m ain函数开始,在程序的最后一个函数中结束(B)程序的执行总就是从程序的第一个函数开始,在m ain函数结束(C)程序的执行总就是从main函数开始D)程序的执行总就是从程序的第一个函数开始,在程序的最后一个函数中结束标准答案:C20、以下选项中能表示合法常量的就是(A)1、5E2、0(B)“007”(C)1,200(D)5标准答案:B21、以下定义语句中正确的就是(A)float a=l,*b=&a,*c=&b;(B)int a=b=0;(C)double a=0,0;b=k 1;(D)charA=65+l,b=,b,;标准答案:D22、若变量x、y 已正确定义并赋值,以下符合C 语言语法的表达式就是(A)double(x)/10(B)x=x+10=x+y(C)x+l=y(D)+x,y=x-标准答案:D23、计算机能直接执行的程序就是(A)可执行程序(B)目标程序(C)源程序(D)汇编程序标准答案:A24、以下叙述中正确的就是(A)C 语言规定必须用main作为主函数名,程序将从此开始执行(B)C 语言程序将从源程序中第一个函数开始执行(C)main的各种大小写拼写形式都可以作为主函数名,如MAIN,Main等(D)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行标准答案:A25、以下选项中可用作C 程序合法实数的就是(A)E9(B)9 12E(C)3 Oel、2(D)、leO标准答案:D26、下列定义变量的语句中错误的就是(A)float US$;(B)double int_;(C)char For;(D)int _ int;标准答案:A27、表达式:(int)(double)9/2)-9%2 的值就是(A)5(B)4(C)0(D)3标准答案:D28、以下叙述中错误的就是(A)算法正确的程序对于相同的输入一定有相同的结果(B)算法正确的程序可以有零个输入(C)算法正确的程序可以有零个输出(D)算法正确的程序最终一定会结束-3-标准答案:C29、以下叙述中正确的就是(A)C语言程序中的注释必须与语句写在同一行(B)简单C语句必须以分号结束(C)C语句必须在一行内写完(D)C程序中的每一行只能写一条语句标准答案:B30、以下选项中关于C语言常量的叙述错误的就是(A)经常被使用的变量可以定义成常量(B)常量分为整型常量、实型常量、字符常量与字符串常量(C)所谓常量,就是指在程序运行过程中,其值不能被改变的量(D)常量可分为数值型常量与非数值型常量标准答案:A31、以下选项中,不合法的C语言用户标示符就是(A)AaBc(B)a_ b (C)_ 1 (D)a-b标准答案:D32、若变量均已正确定义并赋值,以下合法的C语言赋值语句就是(A)x=y=5;(B)x=5=4+l;(C)x+n=i;(D)x=n%2、5;标准答案:A33、以下选项中关于程序模块化的叙述错误的就是(A)把程序分成若干相对独立的模块,可便于编码与测试(B)可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序(C)把采用分成若干相对独立、功能单一的模块,可便于重复使用这些模块(D)可采用自顶向上、逐步细化的设计方法把若干独立模块组装成所要求的程序标准答案:D34、以下叙述中正确的就是(A)C程序中的注释只能出现在程序的开始位置与语句的后面(B)C程序书写格式严格,要求一行内只能写一个语句(C)用C语言编写的程序只能放在一个程序文件中(D)C程序书写格式自由,一个语句可以写在多行上标准答案:D35、以下不合法的数值常量就是(A)lei(B)0 xabcd(C)8,0E0,5(D)011标准答案:C36、以下关于C语言数据类型使用的叙述中错误的就是A)若只处理“真”与“假”两种逻辑值,应使用逻辑类型(B)若要保存带有多位小数的数据,可使用双精度类型(C)整数类型表示的自然数就是准确无误差的(D)若要处理“人员信息”等含有不同类型的相关数据,应自定义结构体类型标准答案:A37、设有定义intk=O;以下选项的四个表达式中与其她三个表达式的值不相同的就是(A)+k(B)k+(C)k+1(D)k+=l标准答案:B38、以下叙述中错误的就是(A)C程序在运行过程中所有计算都以二进制方式进行(B)C程序在运行过程中所有计算都以十进制方式进行(C)C程序中字符变量存放的就是字符的ASCH值(D)所有C程序都需要编译链接无误后才能运行标准答案:B39、以下关于C语言的叙述中正确的就是(A)C语言中的注释不可以夹在变量名或关键字的中间(B)C语言中的变量可以再使用之前的任何位置定义(C)在C语言算数表达式的书写中,运算符两侧的运算数类型必须一致-4-(D)C语言的数值常量中夹带空格不影响常量值的正确表示标准答案:A40、以下不合法的字符常量就是(A)0I8(B)(C)(D)txcc,标准答案:A41、以下选项中正确的定义语句就是(A)double a=7,b=7;(B)doublea;b;(C)double,a,b;(D)double a=b=7;标准答案:A42、若有定义语句inta=3,b=2,c=l;以下选项中错误的赋值表达式就是(A)a=(b=4)=3;(B)a=l+(b=c=4);(C)a=(b=4)+c;(D)a=b=c+l;标准答案:A43、下列叙述中错误的就是(A)一个C 语言程序只能实现一种算法(B)一个C 函数可以单独作为一个C 程序文件存在(C)C 程序可以由一个或多个函数组成(D)C 程序可以由多个程序文件组成标准答案:A44、C 语言源程序名的后缀就是(A)、c(B)、cp(C)、obj(D)、exe标准答案:A45、以下选项中不能用作C 程序合法常量的就是(A)123(B)、123,(C)“x7D”(D)1,234标准答案:D46表达式a+=a-=a=9的值就是(A)0(B)-9(C)18(D)9标准答案:A47、若有定义语句:intx=12,y=8,z;在其后执行语句Z=0、9+x/y;则z 的值为(A)2、4(B)2(C)1、9(D)1标准答案:D48、以下选项中合法的标识符就是(A)1-1(B)1(C)1_1(D)_11标准答案:D49、表达式3、6-5/2+2+5%2的值就是(A)4、8(B)4、3(C)3、8(D)3、3标准答案:C50、有以下定义:inta;longb;doublex,y;则以下选项中正确的表达式就是(A)a=xy(B)a%(int)(x-y)(C)y=x+y=x(D)(a*y)%b标准答案:B51、有以下程序#include hMain()-5-inta=O,b=O;/*给 a 赋值b=20;/*给 b 赋值*/printf,a+b=%dn”,a+b);/*输出计算结果*/)程序运行后的输出结果(A)出 错(B)a+b=O(C)a+b=30(D)a+b=10标准答案:D52、我们所写的每条C 语句,经过编译最终都将转换成二进制的机器指令,关于转换以下说法错误的就是(A)一条C 语句可能会被转换成零条机器指令(B)某种类型与格式的C 语句被转换成机器指令的条数就是固定的(C)一条C 语句可能会被转换成多条机器指令(D)一条C 语句对应转换成一条机器指令标准答案:D53、关于C 语言的符号常量,以下叙述中正确的就是(A)符号常量在整个程序中其中都不会被重新定义(B)符号常量的符号名就是标识符,但必须大写(C)符号常量的符号名必须就是常量(D)符号常量就是指在程序中通过宏定义用一个符号名来代表一个常量标准答案:D54、若有以下程序#include hmain()intb=10,a=-l 1;a%=b%=4;printf(u%d%dn,a,b);)则程序的输出结果就是(A)12(B)-12(C)1-2(D)-1-2标准答案:B55、若有以下程序#include hmain()inta=O,b=O,c=0;c=(a-=+a),(a+=b,b+=4);printfC%d,%d,%dn,9,a,b,c);)则程序的输出结果就是(A)0,4,0(B)0,4,4(C)l,4,4(D)1,4,1标准答案:A56、若有以下程序#include hmain()inta=0,b=0,c=0,d;c=(a+=b,b+=a);/*第 4 行*/d=c;/*第 5 行*/;/*第 6 行*/-6-printfT%d,%d,%dn”,a,b,c);/*第 7 行*/编译时出现错误,您认为出错的就是(A)第6行(B)第5行(C)第7行(D)第4行标准答案:D57、关于算法,以下叙述中错误的就是(A)一个算法对于某个输入的循环次数就是可以事先估计出来的(B)同一个算法对于相同的输入必须得出相同的结果(C)某个算法可能会没有输入(D)任何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕标准答案:D58、关于C语言的变量,以下叙述中错误的就是(A)由三条下划线构成的符号名就是合法的变量名(B)所谓变量就是指在程序运行过程中其值可以被改变的量(C)程序中用到的所有变量都必须先定义后才能使用(D)变量所占的存储单元地址可以随时改变标准答案:D59、若有以下程序#includemain()(inta=-l l,b=10;a/=b/=4;printf(u%d%dn,a,b);A)4-3(B)5-3(C)-1-2(D)5-2标准答案:D60#include hmain()(inta=0,b=0,c=0;c=(a+=+b,b+=4);printf(%d,%d,%dn”,a,b,c);则程序的输出结果就是(A)1,5,1(B)-1,4,-1(C)-l,4,4(D)1,5,5标准答案:D61、以下选项中不属于C 语言标识符的就是(A)关键字(B)预定义标识符(C)用户标识符(D)常量标准答案:D62、以下选项中不属于C 语言程序运算符的就是(A)&(B)()(C)sizeof(D)标准答案:D63、若变量已正确定义并赋值,以下不能构成C 语句的选项就是(A)A=a+b;(B)B+;(C)A?a:b;(D)a=a+b标准答案:D64、若有以下程序段doublex=5、16894;printfT%fn”,(int)(x*1000+0、5)/(double)1000);则程序段的输出结果就是(A)5、169000(B)5,175000(C)5,170000(D)5,168000-7-标准答案:A65、以下不能用于描述算法的就是(A)文字叙述(B)伪代码与流程图(C)程序语句(D)E-R图标准答案:D66、以下叙述中合法的实型常量就是(A)2、0*10(B)、914(C)0(D)3、13e-2 1标准答案:B67、以下叙述中正确的就是A)若 有 int4,b=9;执行了 a=b;b=a;之后,a 的值为9,b 的值为4(B)在赋值表达式中,赋值号的右边可以就是变量,也可以就是表达式(C)若 有 int4,b=9;执行了 a=b后,a 的值已由原值改变为b 的值,b 的值变为0(D)a 就是实型变量,a=10在C 语言中就是允许的,因此可以说:实型变量中可以存放整型数标准答案:B68、以下选项中合法的常量就是(A)sizeof(B)A%(C)5a(D)_ 1 0 _标准答案:D69不能正确表示数学式的表达式就是(A)a*b/c(B)a*(b/c)(C)a/c*b(D)a/b*c标准答案:D70#include main()(int a=3;printf(%dn,a+=a-=a*a);)程序运行后的输出结果就是(A)9(B)-12(C)0(D)3标准答案:B71、以下叙述中正确的就是(A)结构化程序的三种基本结构就是循环结构、选择结构、顺序结构(B)N-S流程图只能描述简单的顺序结构的程序(C)计算机可以直接处理C 语言程序,不必进行任何转换(D)程序的算法只能使用流程图来描述标准答案:A71、以下叙述中正确的就是(A)书写源程序时,必须注意缩进格式,否则程序会有编译错误(B)程序的主函数名除了 main外,也可以使用Main或main(C)程序可以包含多个主函数,但总就是从第一个主函数处开始执行(D)在 C 程序中,模块化主要就是通过函数来实现的标准答案:D72、C 语言中double类型数据占字节数为A)12(B)8(C)4(D)16标准答案:B73、以下叙述中正确的就是(A)用户自定义标识符必须“见名知意”,如果随意定义,则会出编译错误(B)语言中的关键字不能作变量名,但可以作为函数名(C)标识符的长度不能任意长,最多只能包含16个字符(D)标识符总就是有字母、数字与下划线组成,且第一个字符不得就是数字-8-标准答案:D74、以下叙述中正确的就是(A)空语句就就是指程序中的空行(B)花括号对 只能用来表示函数的开头与结尾,不能用于其她目的(C)复合语句在语法上包含多条语句,其中不能定义局部变量(D)当用scanf从键盘输入数据时,每行数据在没有按下回车键(Enter键)前,可以任意修改标准答案:D75、以下叙述中正确的就是(A)程序必须包含所有三种基本结构才能成为一种算法(B)如果算法非常复杂,则需要使用三种基本结构之外的语句结构,才能准确表达(C)只有简单算法才能在有限的操作步骤之后结束(D)我们所写的每条C 语句,经过编译最终都将转换成二进制的机器指令标准答案:D76、以下叙述中正确的就是(A)在 C 语言程序设计中,所有函数必须保存在一个源文件中(B)结构化程序必须包含所有的三种基本结构,缺一不可(C)只要包含了三种基本结构的算法就就是结构化程序(D)在算法设计时,可以把复杂任务分解成一些简单的子任务标准答案:D77、以下叙述中正确的就是(A)预定义的标识符就是C 语言关键字的一种,不能另作她用(B)只能在函数体内定义函数,其她地方不允许定义变量(C)常量的类型不能从字面形式上区分,需要根据类型名来决定D)整型常量与实型常量都就是数值型常量标准答案:D78、以下叙述中正确的就是(A)八进制数的开头要使用英文字母。,否则不能与十进制区分开(B)英文大写字母X与英文小写字母x都可以作为二进制数字的开头字符(C)在C程序中的八进制与十进制,可以就是否点数(D)整型变量可以分为int型、short型、long型、unsigned型四种标准答案:D7 9 以下叙述中正确的就是(A)C语言程序总就是从m ain函数开始执行(B)C语言程序所调用的函数必须放在m ain函数的前面(C)C语言程序中main函数必须放在程序开始位置(D)C语言程序总就是从最前面的函数开始执行标准答案:A80、C语言程序中,运算对象必须就是整型数的运算符就是(A)%(B)/(C)*(D)&标准答案:A81、#includemain()(intsum,pad,pAd;sum=pad=5;pAd=+sum,pAd+,+pad;printf(u%dn,pad);程序的输出结果就是(A)7(B)5(C)8(D)6标准答案:D-9-8 2、以下四个程序中,完全正确的就是(A)#include hmain();/*/programming/*/printf(programming!n);(B)#include hmain()/*programming*/prints“programming!n);(C)#include hmain()/*/*programming*/*/printf(programming!nn);(D)include hmain()/*programming*/printf(programming!n);标准答案:B8 3、有以下程序#include main()int a=l,b=0;printf(%d,b=a+b);printf(%dn,a=2*b);)程序运行后的输出结果就是(A)1,0(B)0,0(C)1,2(D)3,2标准答案:C8 4、有以下程序#include hmain()char a,b,c,d;scanf(u%c%cn,&a,&b);c=getchar();d=getchar();printf(n%c%c%c%cnn,a,b,c,d);当执行程序时,按下列方式输入数据(从第1列开始,代表回车,注意:回车也就是一个字符)1234则输出结果就是(A)12(B)123(C)1234(D)1234标准答案:B8 5、有以下程序#include hmain()char cl,c2;cl=A+8-4;c2=A+8-5;printf(,%c,%dn,cl,c2);己知字母A 的ASCII码为65,程序运行后的输出结果就是(A)输出无定值(B)E,D(C)D,69(D)E,68 10标准答案:D8 6、有以下程序#include hmain()int al,a2;charel,c2;scanf(%d%c%d%c,&a 1 ,&c I,&a2,&c2);printf(%d,%c,%d,%c,al,c I,a2,c2);)若想通过键盘输入,使得a l 的值为12,a2的值为34,c l 的值为字符a,c2的值为字符b,程序输出结果就是:12,a,34,b 则正确的输入格式就是(以下代表空格,代表回车)(A)12a34b(B)12 U a34 U b(C)12,a,34,b(D)12 U a LJ 34U b标准答案:A8 7、若变量已正确定义为int型,要通过语句Scanf(d,%d,%d”,&a,&b,&c);给 a 赋值1、给 b 赋值2、给 c 赋值3,以下输入形式中语法错误的就是(注:代表一个空格符)(A)1,2,3 回车(B)1口 2口 3 回车(C)1,2,3 回车(D)1,口 口 口 2,口 口 口 3 回车标准答案:B8 8、设变量均已正确定义,若通过scanf(u%d%c%d%c,&al,&c 1 ,&a2,&c2);语句为变量a l 与 a2赋数值10与 20,为变量c 与c2赋字符X 与Y,以下所示的输入形式正确的就是(A)10DX 回车20口丫 回车(B)1ODXD2ODY(C)10X 回车20Y回车(D)l(kiX2(taY设有定义inta;floatb;执行scanfC%2d%f&a,&b);语句时,若从键盘输入876 543、0 141593(C)123 1415930(D)12,3 141593标准答案:A91、若有定义:inta,b;11通过语句scanf(M%d;%d,&a,&b);能把整数3 赋值给变量a,5 赋值给变量b 的输入数据就是(A)35(B)3 5(C)3,5(D)3;5标准答案:D92、阅读以下程序#include main()int case;float printF;printf(“请输入2 个数:);scanf(%d%f,&case,&printF);printff%d%fn,case,printF);该程序在编译时产生错误,其出错原因就是(A)定义语句出错,case就是关键字,不能用作用户自定义标识符(B)定义语句出错,scanf不能作为输入函数使用(C)定义语句出错,printf不能输出擦色的值(D)定义语句出错,printF不能用作用户自定义标识符标准答案:A93、若有定义int a;float b;double c;程序运行时输入:34 5 回车能把3输入给变量a、4输入给变量b、5输入给变量c的语句就是(A)scanf(w%d%f%f&a,&b,&c);(B)scanfC4%d%lf%lf&a,&b,&c);(C)scanfC%lf%lf%lf&a,&b,&c);(D)scanf(t%d%f%lf,&a,&b,&c);标准答案:D94、设有定义double a,b,c;若要求通过分别给a、b、c输入1、2、3,输入形式如下(注:此处代表一个空格)则能进行正确输入的语句就是(A)scanf(f%f%f,&a,&b,&c);(B)scanf4l%lf%lf%lf,a,b,c);(C)scanff%5、lllf%5、lllf%5、11 If,&a,&b,&c);(D)scanf(lf%lf%f,&a,&b,&c);标准答案:D95、以下叙述中正确的就是(A)scanf与printf就 是C语言提供的输入与输出语句(B)由printf输出的数据的实际精度就是由格式控制中的域宽与小数的域宽来完全决定(C)由printf输出的数据都隐含左对齐(D)赋值语句就是一种执行语句,必须放在函数的可执行部分标准答案:D96、以下叙述中正确的就是(A)在使用scanf函数输入整型或实数时,输入数据之间只能用空格来分隔12(B)在scanf函数中的格式控制字符串就是为了输入数据用的,不会输出到屏幕上(C)使 用printf函数无法输入百分号(D)在printf函数中,各个输出项只能就是变量标准答案:B97、以下叙述中正确的就是(A)复合语句也被称为语句块,它至少要包含两条语句(B)在scanf函数的格式中,必须有与输出项一一对应的格式转换说明(C)scanf函数中的字符串,就是提示程序员的。输入数据时不必管它(D)只能在printf函数中指定输入数据的宽度,而不能在scanf函数中指定输入数据占的宽度标准答案:B 13 14 15 16116、若有定义in tx,y;并已正确给变量赋值,则以下选项中与表达式(x-y)?(x+):(y+)中条件表达式(x-y)等价的就是A)(x-y0)B)(x-y=O)C)(x-y0)标准答案:A 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38200、以下叙述中正确的就是A)i f语句只能嵌套一层B)不能在e lse子句中在嵌套i f语句C)改变if-else语句的缩进格式,会改变程序的执行流程D)i f子句与e lse子句中可以就是任意合法的C语句标准答案:D201、以下叙述中正确的就是A)对于“for(表达式1;表达式2;表达式3)循环体“,只在个别情况下才能换成whileB)对于“for(表达式1;表达式2;表达式3)循环体”首先要计算表达式2的值,以便决定C)如果根据算法血药使用无限循环(即通常说的“死循环”),则只能使用w hile语句D)只要适当地修改代码,就可以将do-while与w hile相互转换标准答案:D202、以下叙述中正确的就是A)在w hile语句与do-while语句中无法使用continue语句B)当break出现在循环体中的sw itch语句体内时,其作用就是跳出该sw itch语句体,并终止循环C)continue语句的作用就是:在执行完本次循环体中剩余语句后,终止循环D)只能在循环体内与sw itch语句体内使用break语句标准答案:D203、以下叙述中正确的就是A)%”就是非法的B)表示字符0 C)a表示一个字符常量D)表达式:宣 方的结果就是“假”39标准答案:D204、以下叙述中正确的就是A)字符常量可以参与任何整数运算B)转义字符用 符 号开头C)字符变量在定义时不能赋初值D)同一英文字符的大写与小写形式代表的就是同一字符常量标准答案:A205、若有定义语句:char a=82,;则变量aA)包含3个字符B)包含2个字符C)包含1个字符D)说明不合法标准答案:D206、有以下程序#include hmain()charcl=A,c2=Y;printf(,%d,%dn”,cl,c2);程序输出结果就是A)A,Y B)65,89 C)65,90 D)输出格式不合法,输出出错信息标准答案:B207、若变量已正确定义for(x=0,y=0;(y!=99&x4);x+)贝U 以上 for 循环A)执行无限次B)执行次数不定C)执行3次D)执行4次标准答案:D208、对于while(!E)s;若要执行循环体s,则E的取值应为:A)E等于0 B)E等于1 C)E不等于1 D)E不等于0标准答案:A209、有以下程序#include hmain()int x;for(x=3;x6;x+)printx%2)?(*%d”):(#%d),x);printf(n);程序输出结果就是A)#3*4#5 B)*3#4#5 C)*3*4#5 D)*3#4*5标准答案:D210、有以下程序#include hmain()int a,b;for(a=l,b=l;a=20)break;if(b%3=1)b=b+3;continue;b=b+5;printfT%dn”,a);40程序输出结果就是A)10B)8 C)7 D)9标准答案:B211、C语言中char类型数据所占字节数为A)3 B 4 C)2 D)1标准答案:D212、下列关系表达式中,结果为“假”的就是A)(34)=1 B)36 D)(3!=4)2标准答案:D213、若以下选项中的变量a,b,y均已正确定义并赋值,则语法正确的switch语句就是A)switch(a*a+b*b)default:break;case 3:y=a+b;break;case 2:y=a-b;break;B)switch a*b caselO:y=a+b;default:y=a-b;)C)switch(a+9)case a:y=a-b;case b:y=a+b;)D)switch(a+b)case 1 :case 3:y=a+b;break;case O:case 4:y=a-b;)标准答案:A214、有以下程序#include hmain()int a=-2,b=0;while(a+&+b);printf(u%d,z%dn,a/b);)程序输出结果就是A)1,3 B)1,2 C)0,2 D)0,3标准答案:B215、设有定义:intx=0,*p;紧接着的赋值语句正确的就是A)*p=NULL;B)*p=x;C)p=NULL;D)p=x;标准答案:C216、下列叙述中正确的就是A)可以对字符串进行关系运算B)空字符串不占用内存,其内存空间大小就是0C)两个连续的双引号(”)就是合法的字符串常量D)两个连续的单引号(”)就是合法的字符串常量标准答案:C217、有以下程序#include int f(int x);main()int n=l,m;m=f(f(f(n);printf(%dn,m);)intf(int x)return x*2;程序运行后的输出结果就是 o 41A)8B2C)1 D)4标准答案:A218、下列叙述中错误的就是A)可以给指针变量赋一个整数作为地址值B)当在程序的开头包含头文件stdio、h 时,可以给指针变量赋NULLC)函数可以返回地址值D)改变函数形参的值,不会改变对应实参的值标准答案:A219、设已有定义:floatx;,则以下对指针变量p 进行定义且赋初值的语句中正确的就是A)float*p=1024;B)float p=&x;C)int*p=(float)x;D)float*p=&x;标准答案:D220、以 下 数 组 定 义 中 错 误 的 就 是。A)int x3=0;B)int x23=1,2,3,4,5,6);C)int x3=l,2,3),(4,5,6;D)int x23=1,2,3,4,5,6;标准答案:D221、有以下程序void fun(int a,int n)int i,t;for(i=0;in/2;i+)t=ai;ai=an-l-i;an-l-i=t;main()int k10=1,2,3,4,5,6,7,8,9,10),i;fun(k,5);for(i=2;i8;i+)printf(%d,ki);printf(n);)程序的运行结果就是 oA)876543 B)321678C)345678 D)1098765标准答案:B222、有以下程序#define N 4void fun(int aflfNl,int b!)int i;for(i=0;iN;i+)bi=aii-aiN-l-i;main()int XNN=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,yN,i;fun(x,y);for(i=0;iN;i+)printf(%d,yi);printf(n);)程 序 运 行 后 的 输 出 结 果 就 是。A)-3,-1,1,3,B)-3,-3,-3,-3,C)-12,-3,0,0,D)0,1,2,3,标准答案:A223、有以下程序#include hintf(int x,int y)if(x!=y)return(x+y)/2);else return(x);42main()int a=4,b=5,c=6;printf(,%dn,fun(2*a,fun(b,c);)程序运行后的输出结果就是A)6B)8C)3D)12标准答案:A224、有以下程序#include hint add(int a,int b)retum(a+b);main()int k,(*f)(),a=5,b=10;f=add;、)则以下函数调用语句错误就是A)k=(*f)(a,b)B)k=f(a,b)C)k=add(a,b)D)k=*f(a,b)标准答案:D225、有以下程序main()int n,*p=NULL;*p=&n;printf(Inputn:);scanf(%d,&p);printf(outputn:);printf(%dn,p);该程序试图通过指针p 为变量n 读入数据并输出,但程序有多处错误,以下语句正确的就是A)printf(%dn,p);B)scanf(%d,&p)C)*p=&n;D)int n,*p=NULL;标准答案:D226、下列定义数组的语句中,正确的就是A)#define N 10intxN;B)intx0、10;C int N=10;intxN;D)int x;标准答案:A227、有以下程序#include hmain()int a=2,3,5,4,i;for(i=0;i4;i+)switch(i%2)case0:switch(ai%2)caseO:ai+;break;easelbreak;easel:afi=O;)for(i=0;i4;i+)printf(%d,ai);printf(n);-43-程序运行后的输出结果就是A)2050 B)0304 C)3344 D)3040标准答案:D228、有以下程序#include main()int b33=0,l,2,0,l,2,0,l,2,i,j,t=l;for(i=0;i3;i+)for(j=i;j 1 C)9D)4标准答案:D229、有以下程序#include hint f(int x,int y)return(y-x)*x;main()int a=3,b=4,c=5,d;d=f(f(a,b),f(a,c);printf(%dn,d);)程序运行后的输出结果就是A)9B)7C)8D)10标准答案:A230、若有定义语句:double a,*p=&a;以下叙述中错误的就是A)定义语句中的*号就是一个说明符B)定义语句中的*号就是一个间址运算符C)定义语句中,*p=&a把变量a 的地址作为初值赋给指针变量pD)定义语句中的p 只能存放double类型变量的地址标准答案:B231、若有定义语句:double x,y,*px,*py;执行了 px=&x;py=&y;之后,正确的输入语句就是A)scanf(%lf%lf,x,y);B)scanf(%f%f,x,y);C)scanf(n%f%f1&x,&y);D)scanf(%lf%len,px,py);标准答案:D232、以下定义数组的语句中错误的就是A)int num4=1,2,3,4,5,6;B)int num3=1,2,3,4,5,6;C)int num24=1,2,3,4,5,6;D)int num=1,2,3,4,5,6);标准答案:C233、有以下程序#include hvoid fun(int a,int b)int t;t=a;a=b;b=t;)main()int c10=12,3,4,5,6,7,8,9,0,i;for(i=0;i10;i+=2)fun(ci,ci+l);for(i=0;i10;i+)printf(%d,ci);-44-printf(n);程序的运行结果就是A)2,1,4,3,6,5,870,9,B)1,2,3,4,5,6,7,8,9,0,C)0,1,2,3,4,5,6,7,89 D)0,9,8,7,6,5,4,32,1,标准答案:B234、有以下程序main()int x32=0,i;for(i=0;i,则输出结果为A)246 B)240 C)200 D)204标准答案:D235、有以下