山东省潍坊市寿光市圣都职业高中2021-2022学年高三下学期月考考试《C语言程序与设计》试题及其答案

标签:
普通文字版答案
2024-11-01
| 16页
| 332人阅读
| 9人下载

内容正文:

一、 选择题(共40题) 1. C语言中的基本数据类型包括(  )‍ A.整型、实型、逻辑型 B.整型、实型、字符型 C.整型、字符型、逻辑型 D.整型、实型、逻辑型、字符型 2. 下列常数中不能作为C语言常量的是(  )‍ A.0x45 B.2.5e-2 C.3e2 D.0582 3. 下列可以正确表示字符型常量的是(  )‍ A."a" B."\t' C." " D.297 4. 已知:unsigned int x=65535;,则执行以下语句输出是(  )‍ printf("%d ", x); A.65535 B.1 C.无定值 D.-1 5. 已知:chara; intb; float c; double d;,执行语句c=a+b+c+d;后,变量c的数据类型是(  )‍ A.int B.char C.float D.double 6. C语言中规定,不同类型的数据占用存储空间的长度是不同的。下列各组数据中满足占用存储空间从小到大顺序排列的是(  )‍ A.short,char,float,double B.char, float, int, double C.int,char, long,float D.char, short,long,double 7. char型表示的数据范围是(  )‍ A.-32768~32767 B.03 C.0~255 D.0~65535 8. 假如有定义:double a=10.0;则在内存中变量a所占的存储空间占______个字节。(  )‍ A.1 B.2 C.4 D.8 9. 下列关于变量定义错误的是(  )‍ A.char ch; B.floatx,y; C.int al=a2; D.double y; 10. 以下选项中属于C语言的数据类型是(  ) A.复数型 B.逻辑型 C.双精度型 D.集合型 11. 下列选项属于C语言提供的合法关键字的是(  ) A.Int B.Double C.Float D.char 12. 以下选项中,不属于C语言的类型的是(  ) A.signed long int B.unsigned short int C.unsigned int D.long short 13. 以下关于long,int和short型数据占用内存大小的叙述,正确的是(  ) A.均占4个字节 B.根据数据的大小来决定所占内存的字节数 C.由用户自己定义 D.由C语言编译系统决定 14. 以下关于C语言数据类型的使用,错误的叙述是(  ) A.在字符型变量中,只能保存一个字符 B.若要处理的数据对精度要求很高,则应使用双精度类型 C.若要处理类似“人员信息”这种含有多种信息的数据,应采用结构体类型 D.若只处理"真"和"假"两种逻辑值,应使用逻辑类型 15. C语言中,short类型数据所占的字节数是(  ) A.4个 B.1个 C.2个 D.8个 16. 设C语言中,一个short型数据在内存中占2个字节,则unsigned short型数据的取值范围为(  ) A.0~255 B.0~32767 C.0~65535 D.0~2147483647 17. 以下结果为整数的表达式(设有int i;char c;float f;)(  ) A.i+f B.i* c C.c+f D.i+c+f 18. 下列选项中,不属于C语言的类型的是(  ) A.signed long int B.unsigned short .int C.unsigned int D.long short 19. 设C语言中,一个short型数据在内存中占2个字节,则unsigned short型数据的取值范围为 A.0〜255 B.0〜32767 C.0〜65535 D.0〜2147483647 20. 下列关于long,int和short型数据占用内存大小的叙述,正确的是(  ) A.均占4个字节 B.根据数据的大小来决定所占内存的字节数 C.由用户自己定义 D.由C语言编译系统决定 21. 已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量'\101'是字符(  ) A.,A, 22. 设C语言中,一个int型数据在内存中占2个字节,则int型数据的取值范围为 (  ) A.0~255 B.-32768~32767 C.0~65535 D.-2147483648 ~ 2147483647 23. 在C语言中,int、char和short三种类型数据在内存中所占用的字节数(  ) A.由用户自己定义 B.均为2个字节 C.是任意的 D.由所用机器的机器字长决定 24. 若int类型数据占两个字节,则下列C语言语句的输出结果为 (  ) int t=-1 ; printf("%u", t); A.32768 B.-1 C.1 D.65535 25. 以下选项中,不正确的C语言字符型常量是(  ) A.‘a’ B.‘\x41’ C.‘∖101’ D."a" 26. 下列哪项不是C语言提供的基本数据类型(  ) A.整型 B.浮点型 C.字符型 D.字符串型 27. C语言中较为简单的数据类型包括(  ) A.整型、实型、逻辑型 B.整型、实型、字符型 C.整型、字符型、逻辑型 D.整型、实型、逻辑型、字符型 28. C语言提供的合法数据类型关键字是(  ) A.float B.Signed C.Integer D.Char 29. 在C语言中,错误的int类型的常量是(  )‍ A.32768 B.0 C.037 D.OXaf 30. 以下程序的运行结果是 # include main() { int m=5, n=10,s; s=m; s=s*n; printf(“%d”,s);} A.0 B.5 C.50 D.10 31. 下列变量定义中合法的是(  ) A.int_a=.el B.double b=1+lel.1 C.long x=2.5 D.float 2_and=1-3-3 32. 设x和y为double型变量,则表达式x=2,y=x+3/2的值是(  ) A.3 B.3.000000 C.3.500000 D.2.000000 33. C语言中的标识符只能由字母、数字和下划线3种字符组成,且第一个字符(  )‍ A.必须为字母 B.必须为下划线 C.必须为字母或下划线 D.可以是字母、数字和下划线中的任一种字符 34. 下列C语言用户标识符中合法的是(  )‍ A.3ax B.X C.case D.-e2 35. 请选出可用作 C 语言用户标识符的一组标识符(  )‍ A.void define B.a3 _b3 _123 C.For -abc D.2a DO sizeof 36. C语言中最基本的数据类型是(  )‍ A.整型、实型、逻辑型 B.整型、实型、字符型 C.整型、逻辑型、字符型 D.实型、逻辑型、字符型 37. 设C语言中,一个short型数据在内存中占2个字节,则unsigned short型数据的取值范围为(  )‍ A.0~255 B.0~32767 C.0~65535 D.0~2147483647 38. 以下选项中,合法的实型常量是(  )‍ A.5E2.0 B..E-3 C..2E0 D.1.3E 39. 下列说法不正确的是(  )‍ A.C语言的数据类型有char、int、float和 double等 B.C语言中几种数据类型的长度是由所用机器的机器字长决定的 C.int型数据类型所能表示的最大整数是65535 D.C语言中的实型数据有 float和double两类 40. 下列选项中不合法的C语言赋值语句是(  )‍ A.a=b=58; B.k=(int)(a+b); C.a+b=58; D.--i; 二、 简答题(共7题) 41. 常见的转义字符有哪些?并写出他们的作用。 42. 整型常量的表示方法有哪些? 43. 浮点型的表示方法有哪些? 44. 字符常量的种类有哪些? 45. 如何用八进制和十六进制表示转义字符? 46. 求short型11和-11的补码。 47. 将12分别转换成二进制、八进制、十六进制;并将00100101、023、0x2a转换成十进制。 三、 案例分析题(共6题) 48. 以下程序的输出结果为________。 main( { short i; i=-4; printf("%d, %o, %x, %u ", i, i, i, i); } 49. 以下程序的输出结果为________。 main() { char c='x'; printf("%d, %‰, %x, %c ", c, c, c, c); 50. 以下程序的输出结果是________。 #include main() { int a=252; printf("a=%d, a=%0, a=%x ", a, a, a); } 51. 写出程序运行的结果:________。 main() { char a, b, cl, c2; float x,y; a=3; b=7; x=8.5; y=71.82; c1='A'; c2='a'; printf("a=%d b=%d/n", a, b); printf("x=%fy=%f/n", x,y); printf("c1=%c, c2=%c", c1, c2); } 52. 以下程序的输出结果是( )。 main() { int a=100, x=10, y=20, ok1=5, ok2=0; if(xif(y!=10) if(!ok1)a=1; else if(ok2)a=10; a=-1; printf("%d ", a); } 53. 下面程序的运行结果: #include main() { int i=16, j, x=6, y, z; j=i+++1; printf("%d ", j); /*输出①*/ x*=i=j; printf("%d ", x); /*输出②*/ x=1;y=2; z=3; printf("%d ", z=x>y?x++: y++); /*输出③*/ x=y=z=1; ++x||++y&&++z; printf("%d%d%d ", x, y, z); /*输出④*/ } 四、 综合应用题(共3题) 54. 编写程序,读入三个整数a、b、c然后交换它们的值,即把a原来的值给b,把b原来的值给c把c原来的值给a,并区别输出交换前和交换后的值。 55. 通过键盘输入三个整数,由变量x,y,z存储,求三个整数中最大者并输出结果。 56. 写程序输出所有的“水仙花数”,所谓“水仙花数”为一个三位数,其各位数字立方和等于该数本身。例如:153=l + 125 + 27,即153是“水仙花数”。 五、 程序分析题(共3题) 57. 从键盘上输入2个整数,并将它们交换后输出。 main() { int a, b, t; scanf("%d%d", &a, &b); ______=a;a=b;b=______; print("a=%d, b=%d ", a, b);} 58. 下列程序的输出结果是__________。 main0 { int a; float c; a=12; c=(float)a; printf(“%d,%f”,a,c); } 59. 分析下面程序的运行结果__________. main( ) { chara,b; a='x'; b='y'; a=a-32; b=b-32; pritf(“%c,%c %d,%d”,a,b,a,b); } 六、 编程题(共5题) 60. 编写程序:输入一矩形的长和宽,计算该矩形的面积。 61. 编程:输入三个数,求出这三个数的平均值,并在屏幕上输出。 62. 编程:已知三角形的三边a=3,b=4,c=5,求其面积s。(提示:假设有一个三角形,边长分别为a、b、c,三角形的面积S可由以下公式求得:S=sqrt(p(p-a)(p-b)(p-c)),而公式里的p为半周长:p=(a+b+c)/2。 63. 求ax2+bx+c=0方程的根,a,b,c由键盘输入,假设b2-4ac>0。 64. 编程:输入一个两位整数,将其逆向输出。 参考答案及解析 一、 选择题 1. 【答案】B 2. 【答案】D 【解析】(0582是八进制,出现非法数字8。) 3. 【答案】B 【解析】(字符型常数是用单引号引起来的。) 4. 【答案】D 【解析】(%d是有符号格式,65535被当作负数处理。) 5. 【答案】D 【解析】(double数据类型级别最高。) 6. 【答案】D 【解析】 (char占1字节,float占4字节,int占4字节,double占8字节,long 占4字节,short 占2字节。) 7. 【答案】C 【解析】[unsigned char:0~255,unsignedshort:0~65535 (0~216-1),char:0-255。] 8. 【答案】D 9. 【答案】C 10. 【答案】C 11. 【答案】D 12. 【答案】D 13. 【答案】D 14. 【答案】D 15. 【答案】C 16. 【答案】C 17. 【答案】B 18. 【答案】D 19. 【答案】C 20. 【答案】D 21. 【答案】A 22. 【答案】B 23. 【答案】D 24. 【答案】D 25. 【答案】D 26. 【答案】D 27. 【答案】B 28. 【答案】A 29. 【答案】A (int类型的常数的范围是-32768-32767。) 【解析】 30. 【答案】C 31. 【答案】C 32. 【答案】B 33. 【答案】C 34. 【答案】B 【解析】 (A中的标识符以数字开头;选项C,为关键字;选项D中的-e2表示错误。) 35. 【答案】B 36. 【答案】B 37. 【答案】C 【解析】 (short、unsigned short所占字节数相同,所以 unsigned short也占2个字节。short最高位为符号位,只能表示-32768~32767, unsignedshort 无符号位,可以表示0~65535。) 38. 【答案】C 39. 【答案】C 40. 【答案】C 【解析】 (赋值号“=”的左边一定是一个变量,而不能是常量或表达式,故C错误。) 二、 简答题 41. 【答案】常见的转义字符有: “n'换行符(将当前位置移到下一行开头) “\t'水平制表符(跳到下一个位置) “\b'退格 \r'回车(将当前位置移到本行开头) “\f走纸 “1'反斜杠 “”单引号 “””双引号 42. 【答案】十进制整型常量(包含数字0~9); 八进制整型常量(以0开头,包含数字0~7); 十六进制整型常量(以0x或OX开头,包含数字0~9、字母A~F或a~f); long型十进制整型常量(以1或L结尾) 43. 【答案】浮点型数据的表示方法: ①科学计数表示法 ②十进制浮点表示法 44. 【答案】字符的种类: ①数字字符0'~“9' ②大写字母'A'~'Z' ③小写字母'a'~'z' ④特殊形式的字符常量-转义字符 45. 【答案】八进制表示转义字符:使用“\”加上一个1~3位的八进制数。 十六进制表示转义字符:“\x”加上一个1~2位的十六进制数 46. 【答案】11为正数,补码就是原码。为:II0I 0000 0000 0000 -11补码:先求反码为:1111 1111 11110100 反码加1为原码:1111 1111 11110101 47. 【答案】12(2)=0000 1100 12(8)=14 12(16)=C 00100101(10)=1*20+1*22+1*25=37 023(10)=3*80+2*81=18 0x2a(10)=10*160+2*161=42 三、 案例分析题 48. 【答案】-4,177774,fffc,65532 49. 【答案】120, 170,78,x 50. 【答案】a=252,a=374,a=fc 51. 【答案】a=3 b=7 x=8.500000 y=71.820000 cl=A, c2=a 52. 【答案】-1 53. 【答案】①17 ②102 ③2 ④211 四、 综合应用题 54. 【答案】# include main( ) {int a,b,c,t; scanf(" %d%d%d" , &a, &b, &c); printf("(1)a= %d,b= % ,c= %d" ,a,b,c); t=c;c=b;b=a;a=t; printf("(2)a= %d,b= % ,c= %d" ,a,b,c); } 55. 【答案】 # include int main( ) ( int x,y,z,max; scanf ( "%d%d%d",&x,&y, &z); max== x; if(maxmax=y; if( maxmax=z; printf(" %d" , max); } 56. 【答案】 # include int main( ) { int i= 0; int a,b,c,sum; for(i= 100 ; i<1000 ; i+ +) { a= i/100; b=(i∕10)%10; c=i%10; sum=a *a * a+b * b * b+c *c * c; if(i= =sum) { Printf("%5d" ,i); } 五、 程序分析题 57. 【答案】t,t 58. 【答案】12,12.000000 59. 【答案】X,Y 88,89 六、 编程题 60. 【答案】程序如下: # include main() { float a,b,s; scanf("%f,%f",&a,&b); s=a*b; printf("s is%.2f ", s); } 61. 【答案】程序如下: # include main() { flat a, b,c,s; printf("请任意输入三个数: "); scanf("%d%d%d", &a, &b,&c); s=(a+b+c)/3; printf("%.2f ”, s);} 62. 【答案】程序如下: #include #include main() { int a=3,b=4,c=5; double p, s; p=(a+b+c)/2.0; s=sqrt(p*(p-a)*(p-b)*(p-c)); printf("s=%lf", s);} 63. 【答案】程序如下: #include #include main( ) { float a, b, c, disc, x1, x2, p, q; scanf("a=%f, b=%f, c=%f", &a, &b, &c); disc=b*b-4*a*c; p=-b/(2*a); q=sqrt(disc)/(2*a); x1=p+q;x2=p-q; printf(" x1=%5.2f x2=%5.2f ", x1,x2);} 64. 【答案】#include main( ) { int a, b; scanf(“%d”,&a); b=a%10; printf(“%d”,b); a=a/10; printf(“%d”, a); } 学科网(北京)股份有限公司 $$

资源预览图

山东省潍坊市寿光市圣都职业高中2021-2022学年高三下学期月考考试《C语言程序与设计》试题及其答案
1
山东省潍坊市寿光市圣都职业高中2021-2022学年高三下学期月考考试《C语言程序与设计》试题及其答案
2
山东省潍坊市寿光市圣都职业高中2021-2022学年高三下学期月考考试《C语言程序与设计》试题及其答案
3
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。