C语言习题全集答案(至函数).pdf
《C语言习题全集答案(至函数).pdf》由会员分享,可在线阅读,更多相关《C语言习题全集答案(至函数).pdf(42页珍藏版)》请在咨信网上搜索。
1、-第一单元第一单元 程序设计和语言程序设计和语言一、选择题1 C 语言的基本构成单位是:。A.函数B.函数和过程C.超文本过程D.子程序2 一个 C 语言程序总是从 开始执行。A.主过程 B.主函数 C.子程序 D.主程序 3 C 语言的程序一行写不下时,可以 。A.用逗号换行B.用分号换行C.在任意一空格处换行D.用回车符换行4 以下叙述不正确的是:。A.在 C 程序中,语句之间必须要用分号;分隔B.若 a 是实型变量,C 程序中 a=10 是正确的,因为实型变量中允许存放整型数C.在 C 程序中,无论是整数还是实数都能正确无误地表示D.在 C 程序中,%是只能用于整数运算的运算符5 以下不
2、正确的 C 语言标识符是 。A.ABC B.abc C.a_bc D.ab.c6 下列字符串是标识符的是:。A._HJB.9_studentC.longD.LINE 17 以下说法中正确的是:。A.C 语言程序总是从第一个定义的函数开始执行B.在 C 语言程序中,要调用的函数必须放在 main()函数中定义C.C 语言程序总是从 main()函数开始执行D.C 语言程序中的 main()函数必须放在程序的开始部分8 不合法的常量是:。A.2B.C.3D.4839 已知各变量的类型说明如下,则以下不符合 C 语言语法的表达式是:。int k,a,b;unsigned long w=5;doubl
3、e x=1.422;A.x%(-3)B.w+=-2C.k=(a=2,b=3,a+b)D.a+=a=+(b=4)*(a=3)10在 C 语言中,字符型数据在内存中以 形式存放。A.原码 B.BCD 码 C.反码 D.ASCII 码-11若有定义:int a=7;float x=2.5;y=4.7;则表达式 x+a%3*(int)(x+y)%2/4 的值是:。A.2.500000B.2.750000C.3.500000D.0.00000012设有说明:char w;int x;float y;double z;则表达式 w*x+z-y 值的数据类型为:。A.floatB.charC.intD.do
4、uble13以下 是不正确的转义字符。A.B.C.081 D.014若 x 为 int 型变量,则执行以下语句后,x 的值为 。x=6;x+=x-=x*x;A.36 B.-60 C.60 D.-2415字符串ABC的长度是 。A.11 B.7 C.5 D.3二、填空题1 一个函数由两部分组成,它们是 和 。2 一个 C 源程序至少包含一个 ,即 。3 设 int a=12;则表达式 a/=a+a 的值是 。4 表达式 x=(a=3,6*a)和表达式 x=a=3,6*a 分别是 表达式和 表达式,两个表达式执行完的结果分别是 和 ,x 值分别是 和 。5 在 C 语言中,实数有两种表示形式,即
5、和 。6 在 C 语言中,运算符的优先级最小的是 运算符。-第二单元第二单元 顺序程序设计顺序程序设计一、选择题1 若 m 为 float 型变量,则执行以下语句后的输出为 。m=1234.123;printf(%-8.3fn,m);printf(%10.3fn,m);A.1234.123 B.1234.123 C.1234.123 D.-1234.123 1234.123 1234.123 1234.123 001234.1232 若 x,y,z 均为 int 型变量,则执行以下语句后的输出为 。x=(y=(z=10)+5)-5;printf(x=%d,y=%d,z=%dn,x,y,z);y
6、=(z=x=0,x+10);printf(x=%d,y=%d,z=%dn,x,y,z);A.X=10,Y=15,Z=10B.X=10,Y=10,Z=10 X=0,Y=10,Z=0 X=0,Y=10,Z=10 C.X=10,Y=15,Z=10D.X=10,Y=10,Z=10X=10,Y=10,Z=0 X=0,Y=10,Z=03 若 x 是 int 型变量,y 是 float 型变量,所用的 scanf 调用语句格式为:scanf(x=%d,y=%f,&x,&y);则为了将数据 10 和 66.6 分别赋给 x 和 y,正确的输入应是:。A.x=10,y=66.6 B.10 66.6C.1066.
7、6 D.x=10y=66.64 已知有变量定义:int a;char c;用 scanf(“%d%c”,&a,&c);语句给 a 和 c 输入数据,使 30 存入 a,字符b存入 c,则正确的输入是:。A.30b B.30 bC.30b D.30b5 已知有变量定义:double x;long a;要给 a 和 x 输入数据,正确的输入语句是 。若要输出 a 和 x 的值,正确的输出语句 。A.scanf(“%d%f”,&a,&x);B.scanf(“%ld%f”,&a,&x);printf(“%d,%f”,a,x);printf(“%ld,%f”,a,x);C.scanf(“%ld%lf”,
8、&a,&x);D.scanf(“%ld%lf”,&a,&x);-printf(“%ld,%lf”,a,x);printf(“%ld,%f”,a,x);6 若有定义 double x=1,y;则以下的语句执行的结果是 。y=x+3/2;printf(“%f”,y);A.2.500000 B.2.5 C.2.000000 D.2 7 若 a 为整型变量,则以下语句 。a=-2L;printf(%dn,a);A.赋值不合法B.输出为不确定的值C.输出值为-2D.输出值为 2二、读程序写结果1 main()int x,y;scanf(%2d%*2d%ld,&x,&y);printf(%dn,x+y);
9、执行时输入:12345672 main()int x=4,y=0,z;x*=3+2;printf(%d,x);x*=y=z=4;printf(%d,x);3 main()float x;int i;x=3.6;i=(int)x;printf(x=%f,i=%d,x,i);4 main()int a=2;a%=4-1;printf(%d,a);a+=a*=a-=a*=3;printf(%d,a);5 main()-int x=02,y=3;printf(x=%d,y=%d,x,y);6 main()char c1=6,c2=0;printf(%c,%c,%d,%dn,c1,c2,c1-c2,c1
10、+c2);7 main()int x,y,z;x=y=1;z=+x-1;printf(%d,%dn,x,z);z+=y+;printf(%d,%dn,y,z);三、填空题1 在 C 语言中,字符型数据和整型数据之间可以通用,一个字符数据既能以 输出,也能以 输出。2%-ms表示如果串长小于 m,则在 m 列范围内,字符串向 靠,补空格。3 printf 函数的“格式控制”包括两部分,它们是 和 。4 编写程序求矩形的面积和周长,矩形的长和宽由键盘输入,请填空。#include void main()float l,w;printf(“please input length and width
11、of the rectanglen”);scanf(“%f%f”,&l,&w);area=;girth=;5 编写程序,输入一个数字字符(09)存入变量 c,把 c 转换成它所对应的整数存入 n,如:字符0所对应的整数就是 0。请填空。-void main()char c;printf(“please input a char:n”);c=;n=;printf(,c,n);-第三单元第三单元 分支程序设计分支程序设计一、选择题1 若 x=0,y=3,z=3,以下表达式值为 0 的是 A.!x B.xy?1:0 C.x%2&y=z D.y=x|z/32 以下运算符中优先级最低的运算符为 ,优先级
12、最高的为 。A.&B.!C.!=D.|E.?:F.=3 若 w=1,x=2,y=3,z=4,则条件表达式 wx?w:y10?x+100:x-10);printf(%dn,w+|z+);printf(%dn,!wz);printf(%dn,w&z);A.0 B.1 C.0 D.0 1 1 1 1 1 1 0 0 1 1 1 05 分析以下程序,下列说法正确的是 。main()int x=5,a=0,b=0;if(x=a+b)printf(*n);else printf(#n);A.有语法错,不能通过编译 B.通过编译,但不能连接C.输出*D.输出#6 分析以下程序,下列说法正确的是 。main(
13、)int x=5,a=0,b=3;if(x=a+b)printf(*n);else printf(#n);-A.有语法错,不能通过编译 B.通过编译,但不能连接C.输出*D.输出#7 分析以下程序,下列说法正确的是 。main()int x=0,a=0,b=0;if(x=a+b)printf(*n);else printf(#n);A.有语法错,不能通过编译 B.通过编译,但不能连接C.输出*D.输出#8 分析以下程序,下列说法正确的是 。main()int x=0,a=0,b=0;if(x=a+b)printf(*n);else printf(#n);A.有语法错,不能通过编译 B.通过编译
14、,但不能连接C.输出*D.输出#二、读程序写结果1 include main()int a=-1,b=4,k;k=(a+=0)&(!(b-=z=x)?1:0);printf(%d,z=y&y=x);4 main()int x=1,y=1,z=10;if(z0)x=3;else x=5;printf(%dt,x);if(z=y0)x=3;else if(y=0)x=5;else x=7;printf(%dt,x);printf(%dt,z);5 main()char x=B;switch(x)case A:printf(“It is A.”);case B:printf(“It is B.”);
15、case C:printf(“It is C.”);default:printf(“other.”);6 main()int x=1,y=0,a=0,b=0;switch(x)case 1:switch(y)case 0:a+;break;case 1:b+;break;-case 2:a+;b+;break;case 3:a+;b+;printf(a=%d,b=%dn,a,b);三、填空题1 若 a=5,b=6,c=7,d=8,则表达式 d=a/2&b=c|!a 的值为 2 定义 int x=10,y,z;执行 y=z=x;x=y=z 后,变量 x 的值为 。3 分段函数:输入 x,计算 y
16、 值,输出 y,其中:x0,y=(x+7)/3#include main()int x,y;scanf(%d,&x);if(x0)(1);(2)y=0;(3)y=(x+7)/3;printf(“%d”,y);4 由键盘输入三个数,计算以这三个数为边长的三角形面积。(1)main()(2);printf(Please enter 3 reals:n);scanf(%f%f%f,&a,&b,&c);if(3)s=(a+b+c)*0.5;s1=s*(s-a)*(s-b)*(s-c);-s=(4);printf(nArea of the triangle is%fn,s);(5)printf(It i
17、s not triangle!n);5 有一方程 a+bx+c=0,a,b,c 的值由键盘输入,请编程序,打印出以下情况时方程的解。(1)a=0,b0 (2)a=0,b=0,c=0 (3)a=0,b=0,c0 (4)a0,-4ac0 (5)a0,-4ac0#include math.hmain()float a,b,c,d,pr,pi,x1,x2;scanf(%f%f%f,&a,&b,&c);printf(a=%f,b=%f,c=%fn,a,b,c);if(a=0)if(1)printf(only one solution x=%fn,-c/b);else if(2)printf(no sol
18、utionn);else printf(x is any valuen);else d=b*b-4*a*c;if(3)x1=(-b+sqrt(d)/(4);x2=(-b-sqrt(d)/(5);printf(x1=%6.2f,x2=%6.2fn,x1,x2);else-pr=-b/(2*a);(6);printf(x1=%6.2f+%6.2fin,pr,pi);printf(x2=%6.2f-%6.2fin,pr,pi);6 投票表决器:输入 Y、y,打印 agree 输入 N、n,打印 disagree 输入其他,打印 lose main()char c;scanf(%c,&c);(1)ca
19、se Y:case y:printf(“agree”);(2);case N:case n:printf(“disagree”);(3);(4):printf(“lose”);-第四单元第四单元 循环程序设计循环程序设计一、选择题1 程序段如下:则以下说法中正确的是:A 。int k=5;do k-;while(k=0);A.循环执行 5 次 B.循环是无限循环C.循环体语句一次也不执行 D.循环体语句执行一次2 设 i 和 x 都是 int 类型,则 for 循环语句 B 。for(i=0,x=0;i=9&x!=876;i+)scanf(%d,&x);A.最多执行 10 次 B.最多执行 9
20、 次C.是无限循环 D.循环体一次也不执行3 下述 for 循环语句 B 。int i,k;for(i=0,k=-1;k=1;i+,k+)printf(*);A.判断循环结束的条件非法 B.是无限循环C.只循环一次 D.一次也不循环4 程序段如下:则以下说法中正确的是:C 。int k=-20;while(k=0)k=k+1;A.while 循环执行 20 次 B.循环是无限循环C.循环体语句一次也不执行 D.循环体语句执行一次5 下列程序段执行后 k 值为 A 。int k=0,i,j;for(i=0;i5;i+)for(j=0;j3;j+)k=k+1;A.15 B.3 C.5 D.86 程
21、序段如下:则以下说法中不正确的是:D 。#include-main()int k=2,;while(k7)if(k%2)k=k+3;printf(“k=%dn”,k);continue;k=k+1;printf(“k=%dn”,k);A.k=k+3;执行一次 B.k=k+1;执行 2 次C.执行后 k 值为 7 D.循环体只执行一次二、读程序写结果1 main()int num=0;while(num=2)num+;printf(%dn,num);1132 main()int i=0,s=0;do s+=i*2+1;printf(i=%d,s=%dn,i,s);i+;while(s10);i=
22、0,s=1i=1,s=4i=2,s=9i=3,s=163#include main()-int i,m=1;for(i=5;i=1;i-)m=(m+1)*2;printf(m=%dn,m);m=4m=10m=22m=46m=944 指出下面三个程序的功能,当输入为:quert?时,它们的执行结果是什么?#include main()char c;c=getchar();while(c!=?)putchar(c);c=getchar();quert#include main()char c;while(c=getchar()!=?)putchar(+c);#include main()while
23、(putchar(getchar()!=?);5#include main()-int i;for(i=1;i=5;i+)if(i%2)putchar();putchar(#);6 main()int a,b;for(a=1,b=1;a10)break;if(b%3=1)b+=3;continue;printf(a=%dn,a);7 main()int i=1;while(i=15)if(+i%3!=2)continue;else printf(%d ,i);printf(n);8#include void main()int i,j;for(i=0;i=3;i+)for(j=0;j=i;j+
24、)printf(%d,%d),i,j);printf(n);-9 main()int i,j,k;char space=;for(i=0;i=5;i+)for(j=1;j=i;j+)printf(%c,space);for(k=0;k=5;k+)printf(%c,*);printf(n);10#include main()int i,j,k=0;for(j=11;j=30;j+)if(k%10=0)printf(n);for(i=2;i=j-1)printf(%dt,j);k+;三、填空题1 break 语句只能用于 语句和 语句中。2 计算 2+4+6+8+.+98+100main()in
25、t i,(1);for(i=2;i=100;(2)s+=i;-3 求满足下式的 x,y,z X Y Z +Y Z Z 5 3 2 main()int x,y,z,i,result=532;for(x=1;(1);x+)for(y=1;(2);y+)for(3);(4);z+)i=(5)+(100*y+10*z+z);if(i=result)printf(x=%d,y=%d,z=%dn,x,y,z);4 求 Sna+aa+aaa+.+aa.a 之值,其中 a 是一个数字。例如 2+22+222+2222(此时 n4),n 由键盘输入。main()int a,n,count=1,Sn=0,Tn=0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 习题 全集 答案 函数 编辑 修改 word
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。