




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、00000000000000000C程序设计试题及题解目录一 选择题············································
2、183;················1. C语言概述································
3、··························2. 数据类型,运算符与表达式·····················
4、83;·····················3. 选择结构程序设计··························
5、3;····························4. 循环控制····················
6、83;··········································5. 数组······
7、3;·························6. ························&
8、#183;·············7. 函数···································
9、183;·······························8. 预处理命令·················
10、·············································9. 指针····&
11、#183;·················································&
12、#183;············10. 结构体与共用体···································
13、183;·················11. 位运算·······························&
14、#183;·································12. 文件···············&
15、#183;·················································&
16、#183;····二 改错题············································
17、183;························1. 统计字符串中大小写字母的个数······················
18、83;···················2. 逆序输出·····························
19、183;···································3. 计算大于10的最小n个能被3整除的正整数之和··········&
20、#183;···················4. 输入两个整数及一个运算符进行运算···························
21、····5. 输出201300之间的所有素数,统计总个数···································6. 统计输入字符串中大写类英文字母的个数···
22、83;·································7. 输入M个整数,输出其中所有的偶数·············
23、183;················8. 输出三角形································
24、······························9. 百元买百鸡··················
25、3;··········································10、将08的数字字符变成比它大1的数字字符将9变为0···&
26、#183;····11、连接字符串············································
27、;··················12、取出ASCII码值为偶数且下标为偶数的字符····························
28、;······13. 求三角形面积··········································&
29、#183;··················14. 百马百担问题·····························
30、83;·······························15. 求一堆零件的总数(100至200之间)··············
31、3;·························16. 交换两个变量的值······················
32、3;·································17. 计算1至100之间的奇数之和,偶数之和·············
33、;························18. 求满足给定等式的未知数的值·······················
34、············三 填空题·····································&
35、#183;······························1. 计算给定的公式·················
36、83;·······················2. 计算圆周率·························&
37、#183;·····································3. 从10个数中找出最大值和最小值·········&
38、#183;··································4. 计算满足一定条件的一位整数的值············&
39、#183;·······················5. 输入若干个整数,统计其中大于0和小于0的个数······················
40、·······6. 歌德巴赫猜想·········································
41、83;··················7、牛顿迭代法求方程的根·····························
42、83;······················8、大写变小写,小写变大写·························
43、183;·······················9、计算平均值·························&
44、#183;···································10、输入姓名,输出信息············&
45、#183;·······································11、冒泡排序法·········
46、;··················································
47、;··12、判断三角形是否为直角三角形············································13、输入一个
48、整数,输出该数的平方··········································14、选择排序法·····
49、··················································
50、·····15、用所给公式计算三角形面积··········································
51、83;···16. 输入一个4×4阶矩阵,并计算第1列元素之和·······························17. 二分法查找元素········
52、3;··············································18. 判断点是否在已知的圆内·&
53、#183;··············································19、求函数值··
54、··················································
55、··········20. 计算已知公式的值······································
56、·················21. 求数组中的最大元素·······························
57、;······················22. 计算前m个整数的和·························
58、3;··························23. 字符串反向存储······················
59、;··································24. 将学生信息按其学号的升序排列·············
60、;······························25. 输入一个3行3列的整型数组,求其最大值和最小值···············
61、183;········26、计算给定的公式的值·······································
62、183;···27、输出Fibonacci数列的前15项···········································
63、;四 编程题·················································
64、················1输入数字,求已知公式的值································
65、;···············2. 统计输入字符串中空格的个数································&
66、#183;············3. 函数求值····································
67、···························4. 求已知函数的值·····················
68、183;···································5. 将三个字符串从小到大排序后输出···········
69、183;·····················6. 求已知函数f( )的值··························
70、··························7. 四则运算·······················
71、;·······································8. 判断一个矩阵是否为对称矩阵········&
72、#183;···································9. 打印出Fibonacci,数列的前20个数··········&
73、#183;····························10. 计算fun( )函数值··················
74、3;···································11. 按要求实现函数功能············
75、83;······································12、函数fun1( )求值·········&
76、#183;············································13. 输入的一个月工资数额,求应交税款··
77、;····································14. 按要求处理一个4阶矩阵···········
78、183;···································15. 求已知f(x)函数的值············
79、;········································16. 将以指针数组形式存放的n个字符串升序排序······
80、;·······················17. 求方程中的较大的根························
81、3;··························18. 判别两个字符串的大小·····················
82、183;···························一、选择题(1)C语言概述1、C程序中main函数的位置(C)A、必须在最开始 B、必须在系统库函数后面C、可以在自定义函数后面 D、必须在最后2、下面关于C语言用户标识符的描述,正确的是(D)A、不能区分大小写 B、用户标识符不能描述常量C、类型名也是用户标识 D、
83、用户标识符可以作为变量名3.关于C语言的叙述中,不正确的是(D)A. C程序可由一个或多个函数组成B. C程序必须包含一个main()函数C. C程序的基本组成单位是函数D. 注释说明只能位于一条语句的后面括(A)4.若有说明语句:char C=95;则变量C包含(D)个字符A.1 B.2 C.3 D.语法错误5.结构化程序设计不包A.最优化 B自顶而下,逐步细化 C 模拟化设计 D结构化编码 6.结构化程序设计的三种基本语句是(C)A.函数结购, 分支结构 判结构B.函数结构 嵌套结构 平行结构C.顺序结构 分支结构 循环结构D.分支结构 循环结构 嵌套结构7.关于C语言数据类型的A.枚举类
84、型不是基本类型 B.数组不是构造类型C.变量必须先定义后使用 D.不允许使用空类型8.关于C语言的源程序的叙述中,错误的是(C)A.C语言的源程序由函数构成 B.main函数可以书写在自定义函数之后C.必须包含有输入语句 D.一行可以书写多个语句9.下面叙述中,(A)不是结构化程序设计中的三种基本结构之一 A.数据结构 .B.选择结构 C.循环结构 D.顺序结构10.char 型变量存放的是(A)A.ASC码值 B.字符本身 . C十进制代码值 . D十六进制代码值11.已有如下定义和输入语句int a; char c1,c2;scanf(“%d,%c,%c”, a, c1, c2);若要求a
85、、c1、c2的值分别为10、A和B,正确的数据输入是( B )A10ABB10,A,BC10A BD10 AB12.以下叙述不正确的是( D )A、C程序的执行总是从main函数开始B、一个C源程序必须包含一个main函数C、C语言程序的基本组成单位是函数D、在编译C程序源程序时,可发现注释中的拼写13.已知如下定义和输入语句:int a, b;scanf (“%d, %d”,a, b);若要求a、b的值分别为10和20,正确的数据输入是(B)A、10 20 B、10,20 C、a=10, b=20 D、10;2014、在C语言源程序中,以下叙述正确的是(C)A、main函数必须位于文件的开头
86、B、每行只能写一条语句C、程序中的每一语句可以写成几行D、每个语句的最后必须有点号15.对于C语言源程序,以下叙述错误的是( C )A. 可以有空语句B. 函数之间是平等的,在一个函数内部不能定义其它函数C. 程序调试时如果没有提示错误,就能得到正确结果D. 注释可以出现在在语句的前面16下面叙述中,(A)不是结构化程序设计三种基本结构的共同特点先判断后执行 单入口,单出口,程序中没有执行不到的语句 无死循环17.若有定义:int x=1234,y=123,z=12;则语句printf(“%4d+%3d+%2d”,x,y,z);运行后的输出结果为(D)C.1234+1234+1234 D.12
87、34+123+12(2)数据类型,运算符和表达式1、若定义:int x=2; y=3; float i; 则以下符合C语言语法的表达式是(B)A、x=x* 3=2 B、x=(y= = 1) C、i=float(x) D、i%(-3)2、若有定义:int a=5, b=2, c=1;则表达式a-b<c|b=c的值是(A)A、0 B、1 C、2 D、-13、若有68定义:float x=3.5; int z=8; 则表达式x+z%3/4的值是(B)A、3.75 B、3.5 C、3 D、44.若有定义:int a=1,b=2,c=3;语句+a|+b+a运行后b的值为(D)A1 B.0 C.2
88、D.35.设单精度型变量+,g的值均为2.0,使+为4.0的表达式为(A)A.1 B.0 C.2 D.39.对于整型变量x,下述计语句(B)与赋值句:x=x%2=0?1:0;不等价A .if(x%2!=0)x=0;else x=1; B if(x%2)x=1;else x=0;C.if(x%2= =0)x=1;else x=0; D .if(x%2=1) x=0;else x=1;12.下面语句正确的是( B C )A int *P;*P=20; B char *s=“abcdef”;printf(“%sn”,s);C char str=“abcdf”;000000000000printf(“
89、%s”,str); D char str=a,b,c;printf(“%s”,str);13.若有定义:int;则正确的赋值表达式是().- =(a*3) B.double(-a) C.a* D.a*4=314.若有定义:int m=5. n=3则表达式(m+1,n+1,(-m)+(n-)的值是(B)A.6 B.7 C.8 D.915.对于基类型相同的两个指针变量之间,不能进行的运算是(C)A. B. C. D.16.若有定义:int a;则语句a=(3*4)+2%3;运行后a的值为(B)A. 12 B.14 C.11 D.1717.下面叙述中,错误的是(A)A.其算术运算对象不包含函数 B.
90、%(模拟运算符)的运算对象只能为整型量C.算术运算的结合方向是“自左向右” D.自加和自减运算符的结合方向是“自右向左”18.已知int a=R;则正确的表达式是(A)A.a%10 B.a=int(3e2) C .2a=a+ D.a=a+a=a+319.已知double a=5.2;则正确的赋值表达式是(A)A.a+=a-=(a=4)*(a=3) B a=a*3=2 C a%3 D a=double(-3)20.以下的计语句中,x的值一定被重新赋值的是(B)A.if(x=y) x+=y; B if(xyx!=y);x+=y; C.if(x!=y) scanf(“%d”,x) else scan
91、f(“%d”,y); D.if(xy) x+;y+21.设有double型变量a,b,c,e均有值,对代数式(3ae)/(bc),不正确的语言表达式是(C)A.a/b/c*e*3 B.3*a*e/b/c C.3*a*e/b*c D.a*e/c/b*322.以下运算符中优先级最高的是(D)A. B.| C. D.+23.若有自定义:int a,b;double x.,则以下不符合C语言的表达是(A)A.x%(-3) B.a+=-2 C.a=b=2 D.x=a+b24.若有定义:int a3 3;则表达式a21-a的值为(B)A.7 B.8 C.6 D.925.以下(D)是正确的变量名A.a.be
92、e B.-P11 C.int D.P1126.若有定义:int a=1,b=2 ,c=3,d=4,x=5,y=6 则表达式(x=ab)(y=cb)的值为(A)A.0 B.1 C. 5 D.627.以下(D)是正确变量名A.5f B.if C.f.5 D._f528.若有定义:int x=3,y=4,z=5 则值为0的表达式是(D)A.xy B. x=y C. x|y=zy-z D. !(xy)!z|1)29.若有定义:int x,a;则语句x=(a=3,a+1);运行后x、a的值依次为( C )A3,3B4,4C4,3D3,430.若有定义:int a,b;则表达式(a=2,b=5,a*2,b
93、+,a+b)的值是( B )A7B8C9D1031.若有定义:int a=2,b=3;float x=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y的值是(A)A3.5B3.0C2.5D2.032. 以下(B)是错误的整型常量A、-0xcdf B、018 C、0xe D、01133.语句a=(3/4)+3%2; 运行后,a的值为(B)A、0 B、1 C、2 D、334.设整形变量a为5, 使b不为2的表达式是(C)A、b=(+a)/3 B、b=6-(-a) C、b=a%2 D、b=a/235、已知char a=R;则不正确的赋值表达式是(D);A、a=(a
94、+)% 4 B、a+2=3 C、c a+=256- D、a=07836.下面叙述正确的是(B)A、2/3与2.0/3.0等价 B、(int)2.0/3与2/3等价C、+5与6等价 D、A与“A”等价37、getchar( )函数的功能是从终端输入(D)A、一个整型量值 B、一个实型变量值 C、多个字符 D、一个字符38、若有定义:int i=7, j=8; 则表达式 i >j|i<j的值为(A)A、1 B、变量i的值 C、0 D、变量j的值39、若有定义:int i ,j;则表达式(i=2, j=5, i+, i+j+)的值是(B)A、7 B、8 C、9 D、1040.若希望当a的
95、值为奇数时,表达式的值为”真”,a的值为偶数时,表达式的值为”假”.则不能满足要求的表达式是( C ) A.a%2=1 B.!(a%2=0) C.!(a%2) D.a%241下面叙述正确的是(A)强制类型转换运算的优先级高于算术运算若a和b是整型变量,(a+b)+是合法的”A”*B是合法的A+B是合法的42以下程序段运行后变量a的值为(D)int x=6,y=5;int a;a=(-x=y+)?x:y+1;43.下面程序段的运行结果是( D )int a =5 b=6;printf (“%d”,a/b);A. 5 B. 6 C. 7 D. 044.以下程序的运行结果是( D )void mai
96、n()int a=65;char c=A;printf(“%x,%d”,a,c);A.65, B.41, C.65,65 D.41,65(3)选择结构程序设计1.C语言对于计嵌套语句的规定:else总是与(B)配对A.第一个if B.之前最近且尚未配对C.缩进位置相同的if D.之前最近的if2.以下的语句中,无内嵌的if语句是(D)A.if(x=y)x+=y; B.if(xyx!=y)x+=y;C.if(x!=y)scanf(“%d”,x);else scanf (“%d”,y); D.if(xy) x+;y+3、以下程序运行结果是(D)void main( ) int n=5; if (
97、n+=6 ) printf( “% dn” , n); else printf ( “%dn” , +n );A、4 B、5 C、6 D、74.以下程序段运行后的值为(B)int a=1,2,3,b=4,2,5;int *p,*q;int i,x;p=a;q=b;for(i=0;i<3;i+) if(*(p+i)=*(q+i) x=*(p+i)*2;不确定5.若有定义:int a=1,b=2,c=3;则执行以下程序后a,b,c的值分别为( D )if(ab) c=a,a=b,b=c;A.a=1 b=2, c=3 B.a=2 b=3 c=1 C.a=2 b=3 c=3 D.a=1 b=1,
98、c=16.以下程序的运行结果是(C)void main ( ) int n=e;switch (n- -)default: printf (“error”);casea:caseb: printf(“good”); break;casec: printf(“pass”);cased: printf(“warn”);A、error B、good C、error good D、warn(4)循环控制1.对于整型变量x,与while(!x)等价的是(B)A.while(x!=0) B.while(x=0) C.while(x!=1) D.while(x)2.以下程序运行后,循环体运行的次数为( B
99、)int i=10,x;for( ;i<10;i+) x=x+i;A10B0C1D无限3.设有整型变量x,下述语句( B )不会出现死循环A、for( ; ; x+=1); B、for(; (x=getchar( )!=n; );C、while (1) x+; D、for(x=10; ; x-);4、在C语言中while循环和dowhile循环的主要区别是( B )A、dowhile 循环体内可以使用break语句, while循环体内不能使用break语句B、dowhile的循环至少无条件执行一次,while的循环体不是C、dowhile 循环体内可以使用continue语句,whil
100、e循环体内不能使用continue语句D、while的循环体至少无条件执行一次,dowhile的循环体不是5、对于整型变量x和y,语句for (x=0, y=0 ; (y!=123) (x<4); x+) y+;中的“y+;”被执行( A )A、4次 B、0次 C、123次 D、3次6以下程序段运行后变量n的值为( D )int i=1,n=1;for( ; i<3;i+) continue; n=n+i; 7设有如下程序段:int a33=1,0,2,1,0,2,1,0,1,i,j,s=0; for(i=0;i<3;i+) for(j=0;j<i;j+) s=s+ai
101、j;则执行该程序段后,s的值是( C ) 8. 以下程序运行结果(C)void main() int sum=0,item=0; while(item5 item+; sum+=item;if(sum=6) break;printf(“%dn”,sum) ;A.10 B.15 C.6 D.79.下面程序运行结果是( A )int i=0,a =1,2,3,4,5;doai+=10;while(a+i2);for(i=0;i<5;i+)printf(“%d”,ai);A.11 2 3 4 5 B.1 2 3 4 5 C.11 12 13 14 15 D.11 12 3 4 510.若有定义
102、:int i=0,x=0; int a33=1,2,3,4,5,6,7,8,9则以下程序段运行后x的值为( C ) for( ;i3;i+) x+=ai2-i;A.0 B.12 C.15 D.1811.以下程序的运行结果是( B )void main()int sum=0,item=0;while (item5)item+;sum+=item;if(sum=5) break;printf(“%dn”,sum);A. 10 B.15 C.5 D.612.下面程序段的运行结果是( D )int i=O, a=3,4,5,4,3;doai+;while(a+i5);for(i=0;i5;i+)pri
103、ntf(“%d”,ai) ;A. 45654 B.34543 C.45554 D.4554313.下面程序段的运行结果是( C )int i=0,a=7,5,7,3,8,3;doai+=2;while(a+i5);for(i=0;i6;i+)printf(“%d ”,ai);A. 9 7 9 5 10 5 B.9 5 9 3 10 3 C. 9 5 7 3 8 3 D.7 5 7 3 8 3(5)数组1、有如下定义 int a 3=1,2,3,4,5,6,7,8,;则数组a的行数( B )A、 2 B、 3 C、 4 D、无法确定2.以下数组定义中,正确的是( B )A.int a2 3=1,
104、2,3,4,5,6,7; B.int a =1,2,3,4,5,6,7,8,9;C.int a2 =1,2,3,4,5,6; D.int a 4=6;3.若有定义:int a=6,b=2;ch1ar C1=a,C2=b;则表达式a+b%5+C2-C1的值是( C )A .7 B.8 C.9 D表达式错误4.若有定义:char str6=“abcdm”,*ps,*str2=“abcdef”;正确的是( B )A.stycpy(str1,str2); B.表达式strcmp(str1,str2)的值0C.str1=str2; D.表达式strlen(str1)的值为65.以下能对一维数组a进行正确
105、初始化的语句是( D )A.int a5=(0,0,0,0,0,) B.int a5=0 C.int a5=1,2,3,4,5,6,7 D.int a=06.以下( A )是不正确的字符串常量A.abc B.“1212” C.“O” D“ ”7.设有如下定义:char str8=“Fujian”;则分配给数组str的存储空间是(C)字节A.6 B.7 C.8 D.98.下列数组定义中,正确的是( A )A.int a10 B.int n=10 an; C.int N=10;int aN; D.int n; scant(“%d”,n);int an9.若有定义int a23;则对数组元素的非法引
106、用是( D )A.a01/2 B.a11 C.a4-40 D.a0310.若有int a=2 则a=strcmp(“miss”,“miss”)运行后a的值为(B)A.1 B.0 C.-1. D.211.以下程序结束后屏幕输出(B)char str=“abcd”;printf(“%d”,strlen(str);A.4. B.5 C.6 D.712.已知int a10;则对a数组元素引用不正确的是( A )Aa10Ba3+5Ca10-10Da5 13.设有以下变量定义:char str1=”string”,str28,*str3,*str4=”string”;则( A )是正确的Astrcpy(str1,”china”); Bstr2=”china”;Cstrcpy(*str3,”china”);Dstrcpy(str40,”china”);14、以下能对一维数组a进行正确初始化的语句是( D )A、int a5=(0, 0, 0, 0, 0); B、int a s=0;C、int a5=1, 2, 3, 4, 5, 6, 7 ; D、int a = 0;15. 若有定义int a 3 =1,2,3,4,5,6,7,8,9;则表达式sizeof(a)/sizeof(a0)的值为( A )A、3 B、4 C、5 D、916、下列数组定义中,正确的是( A )A. int a5
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 市场营销案例分析报告
- 经济学宏观经济学模拟试题及解析
- 2025年克拉玛依c1货运从业资格证考试题
- 2025年哈尔滨从业资格货运资格考试题库
- 浙江省宁波市三锋教研联盟2022-2023学年高一下学期期中联考地理试题(含答案)
- 广西壮族自治区玉林市2022-2023学年高一下学期期中地理试题(含答案)
- 现代物流管理概论试题及答案集
- 江苏省徐州市第七中学2024-2025学年高一下学期3月学情调研 化学试题(原卷版+解析版)
- 河南省南阳市新未来联考2024-2025学年高一下学期期中地理试题(原卷版+解析版)
- 10 吃饭有讲究 教学设计-2024-2025学年道德与法治一年级上册统编版
- 襄阳市樊城区城市更新投资发展有限公司招聘考试真题2024
- 综合与实践 白昼时长规律的探究教学设计 2024-2025学年人教版数学七年级下册
- 2025年重庆市开州区云枫教育集团中考一模化学试题(含答案)
- 第9课《桃花源记》教学设计-2024-2025学年统编版语文八年级下册
- 2025年绍兴职业技术学院单招职业适应性测试题库附答案
- 2025年第六届全国国家版图知识竞赛题库及答案
- 广东省广州市白云区2024-2025学年高三下学期2月统测英语试卷【含答案解析】
- 2023-2024学年广东省广州市天河区八校联考七年级(下)期中数学试卷(含答案)
- deepseek的使用技巧与实际应用培训课件
- 禁食病人护理措施
- 存款保险知识竞赛
评论
0/150
提交评论