C语言输入中10A20B,C语言实验报告第3章答案.doc

C语言实验报告第3章答案.doc

3.2基础实验一、程序分析1.以下程序若输入a,则输入格式为c1a;运行结果为_a,A_。includestdio.hintmain char c1,c2;scanf“c1c”,c1;c2c1-32;printf“c,cn”,c1,c2;return 0;2.以下程序如果使得a的值为2、b的值为3,则输入格式为_a2,b3;运行结果为_2,3_。includestdio.hintmain int a,b;scanf“ad,bd”,a,b;printf“d,dn”,a,b; return 0;3.以下程序若输入12.3、7.6、1.1,则输入格式为_12.3 7.6 1.1;运行结果为_aver7.00_。includestdio.hintmain floata,b,c,d;scanf“fff”,a,b,c;dabc/3;printf“aver.2f”,d; return 0;二、程序填空1.输入一个四位整数,求各位数字之和(如1234,则结果为123410)。若输入3562,则运行结果为_356216。include stdio.hintmain int n,a,b,c,d,m;scanf“d”,n;an10;bn/1010;cn/10010;dn/1000;mabcd;printf“dddddn ”, d,c,b,a,m; return 0;2.给定一个华氏法表示的温度值,将其转换为摄氏法表示的温度,转换公式为则运行结果为f64.00,c17.78。include stdio.hintmain float f,c; f64.0; cf-32*5.0/9.0_; printf“f.2f,c5.2fn”,f,c; return 0; 三、程序改错1. 分析以下程序段,找出错误并改正。行号源程序12345678includestdio.hmain int i; float k;scanf“id”,i;k3.12*i;printf“.2fn ”,k;return 0;找错错误在4行应改为scanf“id”,i;调试正确后的运行结果输入数据 i17 运行结果53.042. 分析以下程序段,找出错误并改正。行号源程序12345678includestdio.hmain char a;int b;float c;double d;scanf“c,d,f,lf”,a,b,c,d;putcharan;printf“d,0.2f,.2lfn”,b,c,d;return 0;找错错误在5行应改为putchara; putchar“n”;调试正确后的运行结果输入数据 A,19,12.3,10.98运行结果A19,12.30,10.98四、程序设计1.对输入的字符进行加密,加密规则为“输入4个字符,将每个字符加4后转换成加密字符”,如输入“Ab2c”则加密后的字符序列为“Ef6g”。1. include stdio.hintmain char c1,c2,c3,c4;scanf“cccc”,c1,c2,c3,c4; c14;c24;c34;c44;printf“cccc n”,c1,c2,c3,c4; return 0;3.3拓展实验一、程序分析1.以下程序若输入3.4、12.0、8.9,则输入格式为3.4,12.0,8.9,运行结果为7.20。include stdio.hinclude math.hintmain float a,b,c;float s,area;scanf“f,f,f” ,a,b,c;sabc/2;areasqrts*s-a*s-b*s-c;printf“.2fn”,area;return 0;2.以下程序若输入C和2,则运行结果分别为F和5_。include stdio.hintmain char c1;int c20;c1getchar ;c2c13;putchar ;putcharc2; putchar ; return 0;二、程序填空1.以下程序实现按由大到小顺序输出任意两个整数。若输入3562,则运行结果为62,35。include stdio.hint main int m,n;scanf“dd”,_m,n_;nmprintf“d,dn”,n,m_printf“d,dn”,m,n;return 0;2.以下程序实现输入任意两个整数,完成加、减、乘、除、求余操作并运行结果。若输入29、18,则运行结果为_291847,29-1811,29*18522,29/181,291811_。include stdio.hintmain int x,y; printf“请输入x,y的值”;scanf“dd”,x,y; printf“ddd,”,_x,y,xy;printf“d-dd,”,_x,y,x-y_;printf“d*dd,”, _ x,y,x*y _;printf“d/dd,”, _ x,y,x/y ;printf“ddd”, _ x,y,xy ;return 0; 三、程序改错1.分析以下程序段,找出错误并改正。行号源程序12345678include stdio.hmain ;char i;int j;scanf“id,jd”,i,j;jij/2;printf“ccn ”,i,j;return 0;找错错误在2行应改为main 调试正确后的运行结果输入数据 i65,j5运行结果AC2.分析以下程序段,找出错误并改正。行号源程序123456789include stdio.hincludemath.hdefine pi3.1416main float r;scanf“rf ”,r;printf“.2f,.2lfn”,pi*powr,2,2pi*r;return 0;找错错误在3,7行应改为define pi 3.1416printf“.2f,.2lfn”,pi*powr,2,2*pi*r;调试正确后的运行结果输入数据 r2r3运行结果12.57,12.5728.27,18.85四、程序设计1.输入圆的半径,输出该圆的周长和面积,结果保留2位小数。2.求ax2bxc的根,a、b、c从键盘输入,结果保留2位小数。1. include stdio.hintmain float r,s,area;scanf“f”,r; s2*3.14*r;area3.14*r*r;printf“周长为.2f,面积为.2fn”,r,area; return 0;2. include stdio.hinclude math.hintmain float a,b,c,x1,x2,disc,p,q;scanf“fff”,a,b,c; discsqrtb*b-4*a*c;p-b/2/a; qdisc/2/a;x1pq; x2p-q;printf“x1.2f,x2.2fn”,x1,x2; return 0;3.4习题一、选择题1. 以下4个选项中,不能看作一条语句的是()。A. ; B.a0,b0,c0; C.ifa0 ; D.ifb0 m1;n2;2. 以下叙述中错误的是()。A.C语句必须以分号结束B.复合语句在语法上被看作一条语句C.空语句出现在任何位置都不会影响程序运行D.赋值表达式末尾加分号就构成赋值语句3. 已有如下定义和输入语句,若要求 a1,a2,c1,c2 的值分别为 10,20,A,B,当从第一列开始输入数据时,正确的数据输入方式是()。int a1,a2; char c1,c2; scanf“dcdc”,a1,c1,a2,c2;A. 10A20B B. 10A 20B C. 10A20B D.10A 20B4. 有输入语句 scanf“ad,bd,cd”,a,b,c; 为使变量 a 的值为 1,b 的值为3,c的值为2,则正确的数据输入方式是()。A. 132 B. 1,3,2 C.a1 b3 c2 D.a1,b3,c2 5. 若定义 x 为 double 型变量,则能正确输入 x 值的语句是()。A.scanf“f”,x; B. scanf“f”,x;C.scanf“lf”,x; D.scanf“5.1f”,x; 6. 已知 i,j,k 为 int 型变量,若从键盘输入1, 2, 3回车,以下选项中正确的输入语句是()。A.scanf“2d2d2d”,i,j,k; B.scanf“d_d_d”,i,j,k; C.scanf“d,d,d”,i,j,k; D.scanf“id,jd,kd”,i,j,k; 7. 若运行时输入12345678 ,则下列程序运行结果为()。int a,b; scanf“2d2d”,a,b; printf“dn”,ab;A.46B. 579C.5690D.出错8. 以下说法正确的是()。A.输入项可以为一实型常量,如scanf“f”,3.5;B.只有格式控制,没有输入项,也能进行正确输入,如scanf“ad,bd”;C.当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf“4.2f”,f;D.当输入数据时,必须指明变量的地址,如scanf“f”,f;9. 以下程序若输入12回车,运行结果是()。includestdio.hint main char a,b;int n,m;agetchar;bgetchar ; na-0;mn*10b-0;printf“dn”,m;return 0;A. 112 B.12C.120 D.出错10. 以下程序的运行结果是()。includestdio.hint main int x102,y012;printf“2d,2d”,x,y;return 0;A. 10,01 B.002,12 C.102,10 D.02,1011. printf函数中用到格式符ms,其中数字m表示输出的字符串占的总列数。如果m为负整数,则输出方式为()。A. 从左起输出该字串,当指定列数大于实际列数时右补空格B. 按原字符长从左向右全部输出C. 右对齐输出该字串,当指定列数大于实际列数时左补空格D. 输出错误信息12. 设有如下程序段int x17,y18,z19;printf“dn”,x,y,z;则以下叙述正确的是()。A. 输出语句中格式说明的个数少于输出项的个数,不能正确输出B. 运行时产生出错信息C. 输出值为17,18,20D. 输出值为2013. 有以下程序includestdio.hint main char a1M, a2m return 0;以下叙述中正确的是()。A. 程序输出大写字母MB. 程序输出小写字母mC. 格式说明符不足,编译出错D. 程序运行时出错14. putchar 函数可以向终端输出一个 。A.整型变量表达式值B.实型变量值C.字符串D.字符或字符型变量值15. 以下程序若输入123回车45678回车,则运行结果是()。includestdio.hint main char a,b,c,d,e,f;scanf“cccc”,a,b,c,d;egetchar ;fgetchar ;putchara;putcharb;printf“ccn”,e,f;return 0; A.1267 B.1256 C.1278 D.1245二、填空题1. 复合语句是用一对_大括号界定的语句块。2. printf函数和scanf函数的格式说明都使用字符开始。3. 在C语言中,输入操作是由库函数_scanf完成,输出操作是由库函数_printf完成。4. 在C语言中,字符输出是由库函数_putchar完成,字符输入是由库函数_getchar完成。5. 字符输出函数putchar每次输出_1_个字符。三、程序分析题1. 用下面的 scanf 函数输入数据,使 a3,b7,x8.5,y71.82,c1A,c2a,则在键盘输入格式为a3b78.57.182e1Aa。include stdio.hint main int a,b; float x,y; char c1,c2; scanf“ad bd”,a,b; scanf“ f e”,x,y; scanf“ c c”,c1,c2;printf“d,d,f,f,c,c”,a,b,x,y,c1,c2;return 0;2. 以下程序的运行结果是a12345,b-1.98e002,c 6.50。include stdio.hint main int a12345; float b-198.345, c6.5; printf“a4d,b-10.2e,c6.2fn”,a,b,c; return 0;3. 以下程序的运行结果是x1 y2 *sum*3 10 Squared is100。include stdio.hint main int x1,y2;printf“xd yd *sum*dn”,x,y,xy;printf“10 Squared isdn”,10*10;110 2 10356.1000004 3.141600return 0;4. 以下程序运行结果是。include stdio.hint main int x10; float pi3.1416;printf“1 dn”,x;printf“2 6dn”,x;printf“3 fn”,56.1;printf“4 14fn”,pi;return 0;5. 以下程序若输入100,则运行结果是_yes_。include stdio.hint main int a ;scanf“d”,a;printf“s”,a20“No””Yes”;四、程序填空题1. 以下程序实现的功能是输入一个字符,输出该字符的后4位,请将程序补充完整。includestdio.hint main int c1;c1getchar ;putcharc14_;return 0; 2. 以下程序的功能是输出s1,x,y的值,保留原小数位数,请将程序补充完整。includestdio.hint main float x655.35;double y765.4271;char s1c return 0;3. 以下程序是使用“*”在屏幕上显示一个C,请将程序补充完整。include “stdio.h”int main printf“Hello C-worldn”;printf“n”;printf“ *n”;printf“ * n”;printf“ n”;4. 要求按照以下形式输入3个整数并完成计算,请将程序补充完整。从键盘输入a13,b14,c25回车includestdio.hint main int a,b,c;scanf“_ ad,bd,cd”,a,b,c;printf“dn”,ab*c; 五、程序设计题1.编写程序,输入一个人三门课的成绩,输出其平均成绩。1. include stdio.hintmain floatx1,x2,x3, avg;scanf“fff”,x1,x2,x3; avgx1x2x3/3; printf“avgfn”, avg; return 0;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值