2022年C语言期末考试复习题及答案_第1页
2022年C语言期末考试复习题及答案_第2页
2022年C语言期末考试复习题及答案_第3页
2022年C语言期末考试复习题及答案_第4页
2022年C语言期末考试复习题及答案_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、优选训练资源 共赢共享共进 单项 复习题 1 ; D,WORD 答案: C Void define 以下定义变量的语句中错误选项 A,int _intB ,double int_ ; 学问点:常量,变量和标识符 ; C,char ForD ,float US$ 7 答案: D C 语言中最简洁的数据类型包括 学问点:常量,变量和标识符 2 A,整型,实型,规律型 B,整型,实型,字符型 C,整以下不合法的用户标识符是 型,字符型,规律型 D,整型,实A,j2_KEY B , Double 型,规律型,字符型 答案: B C,4d 答案: C D, _8_ 学问点:常量,变量和标识符 学问点:常

2、量,变量和标识符 8 3 以下选项中,合法的 C 语言关键字以下 4 组用户定义标识符中,全部合法的;是 一 组是; A,_main enclude sin A,VARB, cherC, integerD, default 答案: D B,If -max turbo 学问点:常量,变量和标识符 ; C , txt REAL 3COM D , int k_2 _001 答案: A 9 以下不能定义为用户标识符的是 ; A,MainB,_0C,_intD ,sizeof学问点:常量,变量和标识符 答案: D 4 学问点:常量,变量和标识符 以下定义语句中正确选项 10 A,char a=A b=B

3、; 以下表达中正确选项 ; B,float a=b=10.0; A,C 语言中既有规律类型也有集合类型 C,int a=10,*b=&a; B,C 语言中没有规律类型但有集合类型 D,float *a,b=&a; 答C,C 语言中有规律类型但没有集合类型 案: C D,C 语言中既没有规律类型也没有集合学问点:常量,变量和标识符 类 型 5 ; 答案: D 学问点:常量,变量和标识符 以下不能定义为用户标识符的是 A,scanfB ,Void11 c C,_3com_D, int 当 c 的值不为 0 时,在以下选项中能正确答案: D 将 的值赋给变量 a,b 的是; 学问点:常量,变量和标识

4、符 A,c=b=a;B , a=c b=c; 6 C,a=c&b=c;D ,a=c=b; ; 以下有 4 组用户标识符,其中合法的一组答案: C 是 学问点:赋值表达式 A,For -sub Case ; 12 B,4d DO Size 以下选项中非法的表达式是 C,f2_G3 IF abc A,0=x100B,i=j=0 第 1 页,共 36 页优选训练资源 共赢共享共进 a=f/=c*=x=6.5; %3.1fn,a,c,f,x; C,char65+3D ,x+1=x+1 答案: D学问点:赋 值表达式 13 程序运行后输出结果是 ; 以下程序的输出结果是 ; A,1 65 1 B,1 C

5、,1 D,2 答案: B 学问点:赋值表达式 17 如变量 a, i 已正确定义,且 i 已正确赋值, #include main int a,b,d=241; a=d/100%9; b=-1&-1; printf%d,%dn,a,b; A,6,1B , 2,1C,6,0D ,2,0 答案: B 学问点:赋值表达式 合法的语句是; A,a=1B,+i;C , a=a+=5;D, a=inti; 答案: B 14 ; 学问点:赋值表达式 以下循环体的执行次数是 18 main C 语如变量已正确定义并赋值,下面符合 语法的表达式是 ; 言 int i,j; for i=0,j=1; i=j+1;

6、i+=2,j- printf%d n,i; A,3B,2C,1D,0 答案: C学问点:赋值 表达式 15 有以下定义语句 A,a:=b+1B, a=b=c+2 C,int 18.5%3D , a=a+7=c+b 答案: B 学问点:赋值表达式 20 设变量 x 为 型且已赋值,就以下语句 float 中能将 x 中的数值保留到小数点后两位,并 将第三位四舍五入的是 A,; double a,b; int w; long c; B,C, D,如各变量已正确赋值,就以下选项中正确 的表达式是; A,a=a+b=b+ B,w%inta+b C,c+w%inta D,w=a=b; 答 案: C学问点

7、:赋 值表达式 16 有如下程序 main int a; char c=10; 答案: C 学问点:赋值表达式 22 在一个 C 程序中; A,main 函数必需显现在全部函数之 前 B,main 函数可以在任何地方显现 C,main 函数必需显现在全部函数之后 D,main 函数必需显现在固定位置 答 案: B 学问点:简洁 C 语言程序的构成和格式 float f=100.0; double x; 23 第 2 页,共 36 页优选训练资源 共赢共享共进 以下说法中正确选项 ; 28 A,#define 和 printf 都是 C语以下符合 C 语言语法的实型常量; 是 A,1.2E0.5

8、B , B,#define 是 C 语句,句 printf 不是 C,.5E-3D , E15 C,printf 是 C 语句,但 #define 不答案: C D,#define 和 printf 都不是 C语学问点:实型数据 答案: D 句 学问点:简洁 C 语言程序的构成和格 式 24 如 k 是 int 型变量,且有下面的程序片段 k=-3 ifk0;D ,ifb=0 m=1;n=2; 字式子 语言表达式是; 答案: D A,x/y*zB , x*1/y*z 学问点:简洁 C 语言程序的构成和格C,x/y*1/zD , x/y/z 式 答案: A 学问点:算术表26 达式 有以下程序

9、main int a=0,b=0; a=10; /* 给 a 赋值 b=20; /* */ printfa+b=%dn,a+b; 给 b 赋值 */ ; 程序运行后的输出结果是 A,a+b=10B, a+b=30C,30D,出错 答案: B 学问点:简洁 C 语言程序的构成和格式 27 以下选项中,不能作为合法常量的是 ; A,C,1.234e+4D ,答案: B 学问点:实型数据 33 如有定义: int a=8,b=5,c;, 执行语句 ; c=a/b+0.4; 后, c 的值是A, 1C, ,2 答案: B 学问点:算术表达式 34 设有定义: float a=2,b=4,h=3;, 言

10、表达式与代数式 1/2a+bh 以下 C语 运算结果 不相符的是; A,a+b*h/2B ,1/2*a+b*h C,a+b*h*1/2D , h/2*a+b 答案: B 学问点:算术表达式 35 假定 x 和 y 为 double 型,表达式 x=2,y=x+3/2 的值是 A,3 ; 第 3 页,共 36 页优选训练资源 共赢共享共进 C,答案: D 学问点:算术表达式 36 如已定义 x 和 y 为 double 类型,就表达 式 x=1,y=x+3/2 的值是 A,1B,2C, 答案: C ; 学问点:算术表达式 37 如有以下程序段 int c1=1,c2=2,c3; c3=1.0/c

11、2*c1; 就执行后, c3 中的值是 A,0B, 1D, 2 答案: A ; 41 如有以下定义和语句 : int u=010,v=0 x10,w=10; printf%d,%d,%dn,u,v,w; 就输出结果是 : ; A,8,16,10B , 10,10,10 C,8,8,10D , 8,10,10 答案: A 学问点:整型数据 42 在 C 语言中,不正确 int 类型的常数是 的 A,32768B, 0C,037D, 0 xAF ; 答案: A 学问点:整型数据 43 学问点:算术表达式 以下程序的输出结果是 ; 38 )的 main 设有 int x=11; 就表达式( x+ *

12、 1/3 int k=17; 值是; printf%d,%o,%x n,k,k,k; A,3B,4C,11D, 12 A,17,021,0 x11B , 17,17,17 答案: A 学问点:算术表达式 39 C,17,0 x11,021D , 17,21,11 答案: D 以下程序的输出结果是 ; 学问点:整型数据 main double d=3.2; int x,y; x=1.2;y=x+3.8/5.0; printf%d n,d*y; A,3B, 0D, 答案: C 学问点:算术表达式 40 44 下面程序的输出是 ; main unsigned a=32768; printfa=%dn

13、,a; A,a=32768B, a=32767 C,a=-32768D,a=-1 答案: C 请读程序片段: ; 学问点:整型数据 ; int i=65536;45 printf%dn,i; 在 C 语言中,合法的长整型常数上面程序片段的输出结果是 A,65536B,0 D ,-1 是 A,0LB, 4962710C,有语法错误,无输出结果 C,324562&D, 216D 答案: B 答案: A 学问点:整型数据 学问点:整型数据 46 第 4 页,共 36 页优选训练资源 共赢共享共进 C 语言中运算对象必需是整型的运算符 是 A,%=B, /C, =D, 5 printf%dn,x; e

14、lse printf%dn,x-; 54 有以下程序 main int x,y,z; 就输出是; A,7B,6C,5D,4 答案: B 学问点:自加,自减运算符和逗号运算符 x=y=1; z=x+,y+,+y; printf%d,%d,%dn,x,y,z; 50 ; 程序运行后的输出结果是 有以下程序 main char a1=M, a2=m; A,2,3,3B , 2,3,2C ,2,3,1D ,2,2,1 答案: C 学问点:自加,自减运算符和逗号运算符 优选训练资源 共赢共享共进 55 设有以下定义 int a=0; double b=1.25; char c=A; #define d

15、2 就下面语句中错误选项 ; A,a+;B ,b+;C, c+;D, d+; 答案: D 学问点:自加,自减运算符和逗号运算符 scanf%d,&x; ifx+ 5 printf%d,x; else printf%dn,x-; A,7 和 5B,6 和 3C, 7 和 4D,6 和 4答案: A 学问点:自加,自减运算符和逗号运算符 56 ; 60 的 如 t 为 double 类型,表达式 t=1,t+5,t+ 以下程序的输出结果是 值是; main int x=10,y=10; A,1B, ,答案: D 学问点:自加,自减运算符和逗号运算符 printf%d %dn,x-,-y; 61 ;

16、 以下程序的输出结果是 A,10 10B ,9 9C, 9 10D, 10 9 #include答案: D main 学问点:自加,自减运算符和逗号运算符 57 如 x 和 y 都是 int 型变x=100, y=200,且 量, 有下面的程序片段 printf%d,x,y; 上面程序片段的输出结果是 ; A,200B, 100C,100 200 int i=10,j=10; printf%d,%dn,+i,j-; A,11,10B , 9,10C ,010,9D, 10,9 答案: A 学问点:自加,自减运算符和逗号运算符 D,输就格式符不够 , 输出不确定的值 62 ; 答案: A 有以下

17、程序 学问点:自加,自减运算符和逗号运算符 main 58 设有如下定义 : int y=10; int x=10,y=3,z; whiley-; 就语句 printfy=%dn,y; printf%dn,z=x%y,x/y; 的输出结果是; 程序执行后的输出结果是 A,1B,0C,4D,3 答案: D 学问点:自加,自减运算符和逗号运算符 A,y=0 B ,y=-1 C ,y=1 D,while 构成无限循环 答案: B 59 , 假如从键盘上分别输 学问点:自加,自减运算符和逗号运算符 两次运行下面的程序 63 入 6 和 4, 就输出结果; 以下表达中正确选项 ; 是 A,全局变量的作用

18、域确定比局部变量的作 main 用域范畴大 B,静态 static 类别变量的生存期贯穿于 int x; 第 6 页,共 36 页优选训练资源 共赢共享共进 整个程序的运行期间 C,函数的形参都属于全局变量 D,未在定义语句中赋初值的 auto 变量和 static 变量的初值都是随机值 答案: B 学问点:局部变量及其作用域和生存期 int a=1,2,3,4,5,b=6,7,8,9,s=0; s=funa,5+funb,4; printf%dn,s; 64 程序执行后的输出结果是 ; ; A,45B, 50C, 60D,55 下面程序的输出是 fun3int x 答案: C ; 学问点:局

19、部变量及其作用域和生存期 static int a=3; 67 a+=x; 以下程序执行后 sum 的值是returna; main main int i,sum; fori=1;i6;i+ sum+=i; int k=2, m=1, n; printf%dn,sum; n=fun3k; n=fun3m; printf%dn,n; A,3B,4C,6D,9 答案: C 学问点:局部变量及其作用域和生存期 A,15B, 14C,不确定 D,0答 案: C学问点:局部变量及其作用域 和生存期 68 以下程序的输出结果是 ; main 65 以下表达中正确选项 ; int k=4,m=1,p; p=

20、funck,m; printf%d,p; p=funck,m; printf%dn,p; funcint a,int b static int m=0,i=2; i+=m+1; m=i+a+b; returnm; A,8,17B ,8,16C, 8,20D,8,8 答案: A 学问点:局部变量及其作用域和生存期 69 设有以下函数: fint a int b=0; static int c=3; A,局部变量说明为 static 储备类,其生 存期将得到延长 B,全局变量说明为 static 储备类,其作 用域将被扩大 C,任何储备类的变量在未赋初值时,其值 都是不确定的 D,形参可以使用的储

21、备类 说明符与局部变 量完全相同 答案: A 学问点:局部变量及其作用域和生存期 66 有以下程序 int funint x,int n static int sum=0,i; fori=0;in;i+ sum+=xi; return sum; main 第 7 页,共 36 页 b+; 优选训练资源 共赢共享共进 main c+; return a+b+c; int a=5,b=7; fun; 假如在下面的程序中调用该函数,就输出 printf%d%dn,a,b; 结果是; D, 7 main A,100200 B,57 C,20*00 int a=2,i; D,75 fori=0;iy f

22、x,y; 以下程序的输出结果是 ; else ifyz fy,z; int a,b; else fx,z; void fun printf%d,%d,%dn,x,y,z; a=100;执行后输出结果是 ; b=200; A,1,2,3B , 3,1,2C ,1,3,2D ,2,3,1 答案: C 学问点:调用函数和被调用函数之间的数据传递 第 8 页,共 36 页优选训练资源 共赢共享共进 ABC,就输 74 C,由实参传给形参 D,再由形参传回实参 有以下程序 答案: B 学问点:函数的void fint x,int y 调用 81 int t; 当执行下面的程序时,假如输入 ifx2 re

23、turnfibn-1+fibn-double a=0,b=0; 2; a=fun1x; else return2; b=fun1y; return inta+b; main printf%ldn,fib3; main 该程序的输出结果是 ; A,2B,4C, 6D,8double w; 答案: B 学问点:函数w=fun21.1,2.0; 的调用 程序执行后变量 w 中的值; A, B ,5 C , 5.0 D ,答案: C 学问点:调用函数和被调用函数之间的数据传递 83 设函数 fun 的定义形式为 void funchar ch,float x 就以下对函数 fun 的调用语句中,正确选

24、项 ; 80 A, funabc,3.0; B , t=funD,16.5; 在调用函数时,假照实参是简洁变量,它 C,fun 65,2.8; D ,fun32,32; 与对应形参之间的数据传递方式是 答案: D ; 学问点:函数的调用 A,地址传递 84 B,单向值传递 第 9 页,共 36 页优选训练资源 共赢共享共进 有以下程序 char funchar x,char y ifxy return x; return y; 93 在 C 语言中,形参的缺省储备类; A,autoB ,registerC 答案: A , staticD ,extern 学问点:函数的定义和返回值 main i

25、nt a=9,b=8,c=7; 94 有以下程序 int fint a return a%2; printf%cn,funfuna,b,funb,c; main int s8=1,3,5,2,4,6,i,d=0; 程序的执行结果是 ; fori=0;fsi;i+ d+=si; A,函数调用出错 B ,8C, 9D, 7 ; printf%dn,d; 答案: D学问点:函 数的调用 程序运行后的输出结果是 85 如已定义的函数有返回值,就以下关于该 函数调用的表达中错误选项 ; A,函数调用可以作为独立的语句存在 B,函数调用可以作为一个函数的实参 C,函数调用可以显现在表达式中 D,函数调用可

26、以作为一个函数的形参 答 案: D 学问点:函数的调用 86 有如下函数调用语句 funcrec1,rec2+rec3,rec4,rec5;该函数调用语句中,含有的实参个数是 ; A,3B,4C,5D,有语法错 答案: A 学问点:函数的调用 A,9B,11C, 19D, 21 答案: A 学问点:函数的定义和返回值 95 在 C 语言中,函数的隐含储备类别是 A,autoB ,static ; C,externD ,无储备类别 答案: C学问点:函数的定义和返回值 97 如程序中定义了以下函数 double myadddouble a,double b return a+b; 并将其放在调用

27、语句之后,就在调用之前 应当对该函数进行说明,以下选项中错误 的说明是; 92 ; A,double myadddouble a,b; B,double myadddouble,double; 以下函数值的类型是 funfloat x C,double myadddouble b,double a; D,double myadddouble x,double y; 答案: A float y; 学问点:函数的定义和返回值 y=3*x-4;return y; 98 如有以下程序 #include void fint n main A,intB ,不确定 C,voidD , float 答案: A

28、 学问点:函数的定义和返回值 第 10 页,共 36 页 优选训练资源 共赢共享共进 main void fint n; f5; int a33=1,2,3,4,5,6,i,j,s=0; void fint n; for i=1;i3;i+ printf%dn,n; forj=0;j=i;j+ s+=aij; 就以下表达不正确选项 ; printf%dn,s; A,如只在主函数中对函数 f 进行说明,就 只能在主函数中正确调用函数 f B,如在主函数前对函数 f 进行说明,就在 主函数和其它函数中都可以正确调用函数 f C,对于以上程序,编译时系统会出提示出 错信息:提示对 f 函数重复说明

29、D,函数 f 无返回值,所以可用 void 将其类 型定义为无值型 答案: C学问点:函数的说明 99 以下表达中正确选项 ; A,C 语言编译时不检查语法 B,C 语言的子程序有过程和函数两 种 C,C 语言的函数可以嵌套定义 D,C 语言全部函数都是外部函数 答案: D 学问点:库函数 A,18B, 19C, 20D,21 答案: A 学问点:二维数组的定义和二维数组元素的引用 104 以下程序的输出结果是 ; main int i,x33=1,2,3,4,5,6,7,8,9; fori=0;i3;i+printf%d,xi2-i; A,1,5,9B , 1,4,7C ,3,5,7D ,答

30、案: C 学问点:二维数组的定义和二维数组元素的引用 105 有以下程序 main 101 int i,t3=9,8,7,6,5,4,3,2,1; 以下不能正确定义二维数组的选项是 fori=0;i3;i+; printf%d,t2-ii; A,int a22=1,2; ; B,int a2=1,2,3,4; 判序执行后的输出结果是 C,int a22=1,2,3; D,int a2=1,2,3,4; 答案: D A,753B, 357 C, 369 D,751 答案: B 学问点:二维数组的定义和二维数组元素的引用 学问点:二维数组的定义和二维数组元素的引用 106 102 以下数组定义中错

31、误选项 ; ; A,int x3=0 ; 以下能正确定义二维数组的是 A,int a3; B,int a3=2*3; C,int a3=; D,int a23=1,2,3,4; 答案: B B,int x23=1,2,3,4,5,6; C,int x3=1,2,3,4,5,6; D,int x23=1,2,3,4,5,6; 答案: B 学问点:二维数组的定义和二维数组元素的引用 学问点:二维数组的定义和二维数组元素的引用 107 ; 103 以下数组定义中不正确选项 A,int a23; 以下程序的输出结果是 ; 第 11 页,共 36 页优选训练资源 共赢共享共进 B,int b3=0,1,

32、2,3; C,int c100100=0; D,int d3=1,2,1,2,3,1,2,3,4; 答案: D 学问点:二维数组的定义和二维数组元素的引用 int x33=1,2,3,4,5,6,7,8,9; 就下面语句的输出结果是 ; fori=0;i3;i+ printf%d ,xi2- i; A,1 5 9B , 1 4 7C ,3 5 7D ,3 6 9 答案: C 108 有以下程序 main int m3=1,4,7,2,5,8,3,6,9; int i,j,k=2; fori=0;i3;i+ printf%d ,mki; 学问点:二维数组的定义和二维数组元素的引用 113 有以下

33、程序 main int x32=0,i; fori=0;i3;i+ scanf%d,xi; 执行后输出结果是 ; printf%3d%3d%3dn,x00,x01, x10; A,4 5 6B ,2 5 8C , 3 6 9D ,7 8 9 答案: C 学问点:二维数组的定义和二维数组元素的引用 如运行时输入: 2 4 6,就输出结果 109 以下能正确定义数组并正确赋初值的语句 是; A,int N=5,bNN; B,int a12=1,3; 为; A, 200B , 2 0 4 C, 240D , 2 4 6 答案: B 学问点:二维数组的定义和二维数组元素的引用 C,int c2=1,2

34、,3,4; 114 D,int d32=1,2,34; 以下程序的输出结果是 ; 答案: D main 学问点:二维数组的定义和二维数组元素的引用 111 char w10=ABCD,EFGH,IJLK,MNOP 以下程序的输出结果是 ; ,k; main D, EFGH fork=1;k3;k+ printf%sn,wk; int A,ABCD B, ABCD C, EFG a44=1,3,5,2,4,6,3,5,7; FGH printf%d%d%d%dn,a03,a12,a EFG JK IJLK KL IJ O 21,a30; A,0650B,1470C, 5430D,输出值不定 答案

35、: A 学问点:二维数组的定义和二维数组元素的引用 答案: D M学问点:二维数组的定义和二维数组元素的引用 130 当调用函数时,实参是一个数组名,就向 函数传送的是; 112 : A,数组的长度 定义如下变量和数组 B,数组的首地址 int i; 第 12 页,共 36 页优选训练资源 共赢共享共进 C,数组每一个元素的地址 D,数组每个元素中的值 答案: B 学问点:函数之间对一维数组和数组元素的引用 132 上面程序的输出结果是 ; A,720B, 120C,24D, 6 答案: B 学问点:一维数组的定义和一维数组元素的引用 有以下程序 140 void sumint a 如要求定义

36、具有 10 个 int 形元素的一维数 a0=a-1+a1; a,就以下的定义语句中错误选项 ; main A,#define N 10 int a10=1,2,3,4,5,6,7,8,9,10; int aN; sum &a2; B,#define n 5 int a2*n; printf%dn,a2; C,int a5+5; D,int n=10,an; 程序运行后输出结果是 ; A,6B,7C,5D,8 答答案: D 案: A 学问点:一维数组的定义和一维数组元素的引用 学问点:函数之间对一维数组和数组元素的引用 141 合法的数组定义是 ; 138 A,int a=string; 有以

37、下程序 B,int a5=0,1,2,3,4,5; main C,char s=string; char s=abcde; s+=2; printf%dn,s0; 执行后的结果是 ; A,输出字符 a 的 ASCII B,输出字符 码 C,输出字符 c 的 ASCII D,程序出错 码 答案: D c 学问点:函数之间对一维数组和数组元素的引用 139 请读程序: #include fint b,int n int i,r; r=1; fori=0;i=n;i+ r=r*bi; return r; main int x,a=2,3,4,5,6,7,8,9; x=fa,3; printf%dn,

38、x; D,char a=0,1,2,3,4,5; 答案: D 学问点:一维数组的定义和一维数组元素的引用 144 以下能正确定义一维数组的选项是 ; A,int a5=0,1,2,3,4,5; B,char a=0,1,2,3,4,5; C,char a=A,B,C; D,int a5=0123; 答案: B 学问点:一维数组的定义和一维数组元素的引用 145 有如下程序 main int n5=0,0,0,i,k=2; fori=0;i=0;i- ai=10-i; printf%d%d%d,a2,a5,a8; A,258B, 741C,852D,369 答案: C 学问点:一维数组的定义和一

39、维数组元素的引用 147 C,a=58,b=58D,k=inta+b; 答案: B 学问点:赋值语句 174 下面程序的输出是 ; main int x=10,y=3; printf%dn,y=x/y; A,0B,1C, 3D,不确定的值 答案: C 学问点:数据输出 执行下面的程序段后,变量 k 中的值175 65,下面 已知字母 A的 ASCII 码为十进制; 为 int k=3,s2; 的 程序的输出是; main s0=k; k=s1*10; A,不定值 B, 33C, 30D, 10 char ch1,ch2; 答案: A 学问点:一维数组的定义和一维数组元素的引用 ch1=A+5-

40、3; 170 以下能正确运算定义且赋初值的语句是 ; A,int n1=n2=10; B ,char c=32; C , fioat f=f+1.1; D, double ch2=A+6-3; printf%d,%cn,ch1,ch2; A,67,DB,B,CC, C,DD,不确定的值 答案: A 学问点:数据输出 答案: B 176 ; 学问点:赋值语句 以下程序的运行结果是 171 #include main 以下合法的赋值语句是 ; A,x=y=100B, d-; int a=2,c=5; printfa=%d,b=%d n,a,c; C,x+y;D ,c=inta+b; 答案: B 学

41、问点:赋值语句 A,a=%2,b=%5B,a=2,b=5 172 C,a=d,b=dD, a=%d,b=5d答案: B 以下语句中符合 C 语言语法的赋值语句学问点:数据输出 ; 是 A,a=7+b+c=a+7;B ,a=7+b+=a+7; 177 ; 以下程序的输出结果是 C,a=7+b,b+,a+7D , a=7+b,c=a+7; #include 答案: D main 学问点:赋值语句 173 请选出合法的 C 语言赋值语句; A,a=b=58B, i+; int a=2,c=5; printfa=%d,b=%dn,a,c; A,a=%2,b=%5B,a=2,b=5优选训练资源 共赢共享

42、共进 C,a=%d,b=%,dDa=%d,b=%d 答案: D 学问点:数据输出 178 有以下程序 main int x=102,y=012; printf%2d,%2dn,x,y; 执行后输出结果是 ; A,10,01B ,02,12 C,102,10D , 02,10 答案: C 学问点:数据输出 执行以下程序时输入: 123456789,输出结果是; main char s100; int c,i; scanf%c,&c; scanf%d,&i; scanf%s,s; printf%c,%d,%s n,c,i,s; A,123,456,789B , 1,456,789 C,1,23,4

43、56,789D ,1,23,456 答案: D 学问点:数据输入 179 182 int b;char c10; ,就正确 有定义语句: 有以下程序 main int a=666,b=888; printf%dn,a,b; 程序运行后的输出结果是 ; A,错误信息 B , 666C, 888D, 666,888 答案: B 的输入语句是 ; A,scanf%d%s,&b,&c; B,scanf%d%s,&b,c; C,scanf%d%s,b,c; D,scanf%d%s,b,&c; 答案: B 学问点:数据输入 学问点:数据输出 184 180 有以下程序 #include main char

44、 c1=1,c2=2; c1=getchar;如要求从键盘读入含有空格字符的字符 串,应使用函数 ; A,getc B , getsC ,getcharD , scanf 答案: B 学问点:数据输入 c2=getchar;186 putcharc1; 有以下程序 putcharc2; #include main 当运行时输入: a 后,以下表达 char c1,c2,c3,c4,c5,c6; 正确选项; scanf%c%c%c%c,&c1,&c2,&c3,&c4; A,变量 C1 被赐予字符 a,c2 被赐予回车c5=getchar;B,程序将等待用户输入第 2 个字c6=getchar;C

45、,变量 c1 被赐予字a, c2 中仍是原有字 符 putcharc1;符 putcharc2;符 2 D,变量 c1 答案: A 被赐予字符 a,c2 中将无确定值 printf%c%cn,c5,c6; 学问点:数据输入 程序运行后,如从键盘输入 从第 1 列开181 ; 头 第 15 页,共 36 页123 优选训练资源 共赢共享共进 C,11, 12 45678 D,11, 就输出结果是 D , 1245 12 A,1267 B ,1256 C , 1278 答案: A 学问点:数据输入 答案: D 学问点:数据输入 188 有以下程序 main int m,n,p; 193 在嵌套使用

46、 if 语句时, C 语言规else 总是 定 A,和之前与其具有相同缩进位置的 ; if 配对 B,和之前与其最近的 if 配对 C,和之前与其最近的且不带 else 的 if 配对 scanfm=%dn=%dp=%d,&m,&n,&p; printf%d%d%dn,m,n,p; 如想从键盘上输入数据,使变量 m 中的值 中的值为 为 123 , n 中的数值为 456 ,p 789,就正确的输入是 ; A,m=123n=456p=789 B,m=123 n456 p=789 C,m=123,n=456,p=789 D,123 456 789 答案: A 学问点:数据输入 189 有以下程序

47、段 int m=0,n=0; char c=a; scanf%d%c%d,&m,&c,&n; printf%d,%c,%dn,m,c,n; 如从键盘上输入: 10A10,就输出结 果是; A,10,A,10B , 10,a,10 C,10,a,0D , 10,A,0 答案: A 学问点:数据输入 D,和之前的第一个 答案: C 学问点: if 语句和用 if 195 if 配对 语句构成的选择结构 假定全部变量均已正确说明,以下程序段 运行后 x 的值是; a=b=c=0;x=35; if.a x-; else ifb ; ifc x=3; else x=4; A,34B, 4C, 35D,

48、3 答案: B 学问点: if 语句和用 if 语句构成的选择结构 196 有以下程序 main int i; fori=1;i40;i+ ifi+%5=0if+i%8=0 printf%d ,i; 据输入 printfn; 192 有定义语句: int x,y; ,如要通过 scanf%d,%d,&x,&y; 语句使变量 x 得数据 11,变量 y 得到数值 12,下面四组输入 形式中,错误选项 ; 执行后的输出结果是 ; A,5B,24C, 32D, 40 答案: C 学问点: if 语句和用 if 语句构成的选择结构 A,11 12 B,11,12 198 有如下程序 main 第 16

49、 页,共 36 页优选训练资源 int a=2,b=-1,c=2; ifab ifb0 c=0; else c+; printf%dn,c; 共赢共享共进 printf%dn,n; 程序运行后的输出结果是 ; A,0 B , 4 C ,6 D , 7 答案: D学问点: switch 语句以及用 switch 语句和 break 语句 构成的选择结构 该程序的输出结果是 ; A,0B,1C,2D,3 答案: C 学问点: if 语句和用 if 语句构成的选择结构 207 有以下程序 main 199 请读程序 : #include #include main float x,y,z; scan

50、f%f%f,&x,&y; z=x/y; whilez iffabsz1.0 x=y; y=z; z=x/y; else break; printf%fn,y; int i; fori=0;i3;i+ switchi case 1: printf%d,i; case 2: printf%d,i; default: printf%d,i; 执行后输出结果是 ; A,011122B, 012C,012022D,120 答案: A 学问点: switch 语句以及用 switch 语句和 break 语句 构成的选择结构 如运行时从键盘上输入 2.4 209 有如下程序 表示回车 ,就输出的结果是 ;

51、 main int x=1,a=0,b=0; switchx case 0: b+; A,C,答案: B 学问点: if 语句和用 if 语句构成的选择结构 case 1: a+; 204 case 2: a+;b+; 有以下程序 main int k=5,n=0; whilek0 switchk default : break; case 1: n+=k; case 2: case 3: n+=k; printfa=%d,b=%dn,a,b; 该程序的输出的结果是 ; A,a=2,b=1B, a=1,b=1 C,a=1,b=0D, a=2,b=2 答案: A 学问点: switch 语句以及

52、用 switch 语句和 break 语句 构成的选择结构 210 ; k-; 以下程序的输出结果是 第 17 页,共 36 页main 优选训练资源 共赢共享共进 printf%dn,d; int a=0,i; fori=1;ib&n=cd 运算后, n 的值A,31B, 13C, 10D,20 为 答案: A A,0B,1C, 2D,3 学问点: switch 语句以及用 switch 构成的选择结构 答案: C 学问点:关系运算和规律运算 212 217 以下表达中正确选项 ; 如变量 c 为 char 类型,能正确判定c 为A,break 语句只能用于 switch 语句 出 写字母的

53、表达式是 ; 小 B,在 switch 语句中必需使用 default A,a=c=a|c=z 配对使用 D,在 switch 语句中,不愿定使用 break 语 C,a=c D,c=a&c=z 句 答案: D学问点:关系运算答案: D 和规律运算 学问点: switch 语句以及用 switch 语句和 break 语句 构成的选择结构 218 213 设 a 为整型变量,不能正确表达数学关 系:10a15 的 C 语言表达式是; A,10a10 & a=10 or a=0 | a=10 & a=10 | a=10 答案: D 学问点:关系运算和规律运算 D,.a=15 ; 219 答案:

54、A 有如下程序 学问点:关系运算和规律运算 main 214 以下程序的输出结果是 int a=1,b=2,m=0,n=0,k; main ; k=n=ba|m=ab; printf%d,%dn,k,m; int a=4,b=5,c=0,d; d=.a&.b|.c; 程序运行后的输出结果是 第 18 页,共 36 页优选训练资源 共赢共享共进 ; A,0,0B , 0,1C,1,0D ,1,1 答案: C学问点:关系运算printfx%2.*%d:#%dn,x; 上面程序片段的输出结果是 和规律运算 220 A, *3 B, #3 C, #3 答案: D #4 *4 *4#5 学问点:条件表达

55、式构成的选择结构 *5 #5 D,*3#4 设 int x=1,y=1; 表达式 .x|y- 的值是 *5 227 A,0B,1C,2D,-1 ; 答案: B 以下程序的输出结果是 ; main 学问点:关系运算和规律运算 221 设有定义: int a=2,b=3,c=4; ,就以下选 项中值为 0 的表达式是; A,.a=1&.b=0 B ,ab&.c|1 C,a&b 答案: A D ,a|b+b&c-a 学问点:关系运算和规律运算 222 如要求在 if 后一对圆括号中表示 a 不等于 的关系,就能正确表示这一关系的表达式 0 为; A,a0B,.aC ,a=0D,a 答案: D学问点:

56、关系运算和规int a=5,b=4,c=6,d; printf%dn,d=ab.ac.a:c:b; A,5B,4C, 6D,不确定 答 案: C学问点:条件表达式构成的选择结构 228 如整型变量 a, b, c,d 中的值依次为: 1, 4,3, 2;就条件表达式 ab.a:cd.c:d 的值是; A,1B,2C, 3D,4 答案: A 学问点:条件表达式构成的选择结构 律运算 229 如有定义 int x,y; 并已正确给变量赋 223 有如下程序段 int a=14,b=15,x; char c=A; x=a&b&c=0 b=0&a0 b=0&b=0&a0&b0&a+b0 答案: D 学

57、问点:关系运算和规律运算 225 如 x 是 int 型变量,且有下面的程序片段: 值,就以下选项中与表达式 x- y.x+:y+ 中的条件表达式 x-y 等价 的是; A,x-y0B , x-y0 C,x-y0D 答案: C , x-y=0 学问点:条件表达式构成的选择结构 230 有以下程序段 int k=0,a=1,b=2,c=3; k=ac.k:b; 执行该程序段后, k 的值是; A,3 B , 2 C, 1 D ,0 答案: B 学问点:条件表达式构成的选择结构 231 以下程序段中与语句 k=ab.bc.1:0:0; 功能等价的是 ; A,ifab&bc k=1; forx=3;

58、 xb|bc k=1; 优选训练资源 共赢共享共进 while.x; else k=0; C,ifa=b k=0; else ifbb k=1; else ifbc k=1; else k=0; 答案: A 该程序的执行结果是 ; A,321B, 23 C,不输出任何内容 答案: B D ,陷入死循环 学问点: do-while 语句和 do-while 语句构成的循环 结构 学问点:条件表达式构成的选择结构 型变量, 235 232 假定 w,x ,y, z, m均为 int 有以下程序 main ; int s=0,a=1,n; 有如下程序段: w=1;x=2;y=3;z=4; scanf

59、%d,&n;do m=wx.w:x; m=my.m:y; s+=1; m=mz.m:z; 就该程序执行后, m的值是a=a-2; A,4B,3C,2D,1 答案: D 学问点:条件表达式构成的选择结构 233 有以下程序 main whilea.=n; printf%dn,s; 如要使程序的输出值为 2,就应当从健盘给 n 输入的值是; int k=4,n=0; for;nk; n+; A,-1B , -3C, -5D,0 答案: B 学问点: do-while 语句和 do-while 语句构成的循环 结构 236 有以下程序段 int n,t=1,s=0; scanf%d,&n; do s

60、=s+t; t=t-2; whilet.=n;为使此程序不陷入死循环,ifn%3.=0continue; k-; printf%d,%dn,k,n; 程序运行后的输出结果是 ; A,1,1B , 2,2C,3,3D ,4,4 答案: C 学问点: break 和 continue 语句在循环中的作用 234 有如下程序 从键盘输入的数据应当是; main int x=23; A,任意正奇数 B ,任意负偶数 C,任意正偶数 D ,任意负奇数 答案: D学问do 语句和 do-while 语句构成的循环 点: do-while结 构 printf%d,x-; 239 第 20 页,共 36 页有

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论