好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

C语言程序设计实训教程习题和实验解答.pdf

156页
  • 卖家[上传人]:缘***
  • 文档编号:339402332
  • 上传时间:2022-10-15
  • 文档格式:PDF
  • 文档大小:7.42MB
  • 文本预览
  • 下载提示
  • 常见问题
    • C 语言程序设计实训教程习题和实验解答2.1 C 语言概述【习题解答】1 结构化程序有三大基本结构:顺序、分支和循环.2.算法可以理解为有基本运算及规定的运算顺序所构成的完整的解题步骤或者看成按照要求设计好的有限的确切的计算序列,并且这样的步骤和序列可以解决一类问题有穷性:一个算法应包含有限的操作步骤而不能是无限的确定性:算法中每一个步骤应当是确定的,而不能应当是含糊的,有零个或多个输入输出,有一个或多个输出有效性:算法中每一个步骤应当能有效地执行,并得到确定的结果对于程序设计人员,必须会设计算法,并根据算法写出程序可以用自然语言、流程图、伪代码和计算机语言表示算法3.C 语言的主要特点有:语言简洁、紧凑,使用方便、灵活ANSI C 一共只有32个关键字;控制语句丰富,程序书写自由,主要用小写字母表示,压缩了一切不必要的成分;运算符丰富,共有3 4 种;数据结构类型丰富;具有结构化的控制语句;语法限制不太严格,程序设计自由度大;c 语言允许直接访问物理地址,能进行位(b it)操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作因此有人把它称为中级语言;生成目标代码质量高,程序执行效率高;与汇编语言相比,用 c 语言写的程序可移植性好。

      4.用传统流程图表达如下:2.2 数据类型与表达式【习题解答】一、选择题l.C 2.B 3.A 4.B 5.A 6.B 7.D 8.B 9.D 10.C二、填空题1.整型、实型、字符型、枚举类型2.3.0000003.逗号运算符4.三,自右向左5.1,06.32767三、编程题1.已知球的半径为1.5cm,计算球的体积include void main()(float r=1.5,volume;volume=4.0/3*r*r*r;printf(,%fn,volume);)2.输入两个数a和b,求a除以b的商和余数?#include void main()int a,b,c,d;scanf(d,%d”,&a,&b);c=a/b;d=a%b;printf(u%d,%d,c,d);)3.输入三个学生的成绩,求这三个学生的总成绩和平均成绩include void main()(int a,b,c,sum;float average;printf(l,please input students score:);scanf(d,%d,%d”,&a,&b,&c);sum=a+b+c;average=sum/3.0;printf(l,sum=%d,average=%fn,sum,average);)【实验解答】l.c=102.程序功能为输入两个数,求两数的差 c=103 .#includevoid main()int a,b,c;a=b=5;c=a+b;printf(a+b=%d,c);4.运行结果 i=8,j=10,m=9,n=10,u=9,v=-10(回车)5.x=16,y=24,z=246.10 0 6810 0 68d D10 0 68d D120 112x P出错3 0 4 3 210A7.编写一个C程序,输入a,b,c三个整数,求这三个数之和。

      具体要求:1)在Turbo C环境或其他编译环境下编辑该程序,然后进行编译连接2)运行该程序,检查你所编写的程序是否正确include void main()(int a,b,c,sum;scanf(d,%d,%d”,&a,&b,&c);sum=a+b+c;printf(usum is:%dn,sum);2.3顺序结构程序设计【习题解答】一、选择题1.B 2.C 3.A 4.A 5.D 6.B二、填空题1.y=22.nn6nn6n6.00n6.00(表示空格)3.k=ll,k8=13,kl6=!!ahpuahpunnnnnnnnnnn5.5,4,c=36.i=56,j=789.000000,x=12345.000000,y=a,c=72三、编程题1.已知 x=3.2,y=7,z=2,计算 y/3*x-2 的值includev o i d m a i n()f l o a t x=3.2;i n t y=7,z=2;p r i n t f(F ,y/3*x-2);)2.输入一个华氏温度,要求输出摄氏温度(结果保留2位)公式为 c=5/9*(f-3 2)o#i n c l u d e v o i d m a i n()(f l o a t f,c;s c a n f(%r,&f);c=5.0/9*(f-3 2);p r i n t f(c=%.2 f,c);)3.从键盘输入一个小写字母,用大写形式输出该字母。

      i n c l u d e void main()char a,b;printf(uplease input a little letter:);scanf(%c,&a);b=a-32;printf(%c,b);)4.把16进制数12a以10进制形式输出include void main()(int a=0 xl2a;printf(%d,a);)5.输入两个整数,将其值交换include void main()int a,b,t;scanf(a=%d,b=%d,&a,&b);t=a;a=b;b=t;printf(a=%d,b=%d,a,b);)【实验解答】实验顺序结构程序设计1.结果为0,因为a,b被定义为实型,而却以整型输入,类型不匹配2.错误之处:s=3/(a+b)*(a+b):应改为:s=3.0/(a+b)*(a+b):3.运 行 结 果-1,177777,ffff,65535b=-24.编程并上机调试运行1)设圆半径为r=1.5,求圆周长、面积要求用scanf函数输入数据,输出时取小数点后两位include void main()(float r,l,s,v;scanf(%f,&r);1=2*3.14*r;s=3.14*r*r;printf(l=%.2f,s=%,2f,v=%.2f,l,s);)2)输入一个3位十进制整数,分别输出百位、十位以及个位上的数。

      include void main()int a,b,c,d;scanf(%d,&a);b=a/100;c=a/10%10;d=a%10;printf(%d%d%d,b,c,d);3)从键盘输入一个带2位的实数,将其整数部分和小数部分分离后输出例如:输 入 321.54,输 出 321.54=321+0.54include void main()(int a;float b,c;scanf(%f,&b);a=(int)b;c=b-a;printf(%.2f=%d+%.2f,b,a,c);)4)用 getchar函数读入两个字符,然后分别用putchar和 printf函数输出这两字符include void main()char a,b;a=getchar();b=getchar();putchar(a);putchar(b);printf(n%c%c,a,b);)2.4选择结构程序设计【习题解答】一、选择题1.Ao 2.Do 3.Ao 4.Bo 5.Co 6.Ao二、填空题1.(x20&x30)llx-100o2.l,0,0o3.585858o4.20,0 o5.2o6.a=3,b=2o三、编程题1.要求输入三个数,输出其中最大值。

      includevoid main()int a,b,c,max;scanf(%d%d%d,&a,&b,&c);max=a;if(maxb)max=b;if(maxc)max=c;printf(max is:%dn,max);)2.由键盘输入3个数,若输入的这3个数可以构成三角形,则计算以这3个数为边长的三角形周长;如果不能,则输出提示错误信息include void main()(float a,b,c,l;printf(please input a,b,cn);scanf(%f,%f,%f,&a,&b,&c);if(a+b)c&(a+c)b&(b+c)a)(l=a+b+c;printf(l=%n,l);elseprintf(It is not triangle!n);)3.从键盘上输入一个整数判断其奇偶以及正负include stdio.hvoid main()(int a;scanf(%d,&a);if(a0)(if(a%2=0)printf(It is PLUS even number);elseprintf(It is PLUS odd number);)else if(a0)printf(2);else if(b*b-4*a*c=0)printf(l);else printf(0);)5.从键盘输入表示年份的整数,判断是否为闰年。

      include stdio.hvoid main()int year;scanf(%d,&year);if(year%400=0)ll(year%4=0&year%100!=0)printf(It is runnian);elseprintf(It is not runnian);)【实验解答】实验名称选择结构程序设计1.if(0=c&c=9)if(A=c&c=Z)ll(a=c&c=z)else2.编程并上机调试运行1)给出一个不多于4位的正整数,求它是几位数?#includevoid main()int n;printf(Input a num(Onum 10000);scanf(%d,&n);if(n10)printf(ln);elseif(n100)printf(2n);elseif(n1000)printf(3n);elseprintf(4n);)2)给 出 一 个 百 分 制 成 绩,要 求 输 出 成 绩 等级A、B、C、D、E90 分及以上为A,8089 为B,70-79为C,6069为D,6 0以下为E用switch语句来实现includevoid main()(int score;scanf(%d,&score);if(score100)printf(Error!);else(score=score/10;switch(score)(case 10:case 9:printf(An);break;case 8:printf(Bn);break;case 7:printf(Cn);break;case 6:printf(Dn);break;default:printf(En);)3)输入四个数,要求按从大到小顺序输出。

      includevoid main()int a,b,c,d,t;scanf(%d%d%d%d,&a,&b,&c,&d);if(ab)t=a;a=b;b=t;if(ac)t=a;a=c;c=t;if(ad)t=a;a=d;d=t;if(bc)t=b;b=c;c=t;if(bd)t=b;b=d;d=t;if(cd)t=c;c=d;d=t;printf(%d,%d,%d,%dn,a,b,c,d);)4)输入3 个整数,将最大数与最小数输出include void main()(int a,b,c,t;int max,min;scanf(%d%d%d,&a,&b,&c);max=min=a;if(maxb)max=b;elsemin=b;if(max=0&a=9)(a=a-O;printf(%d,a);elseprintf(%d,a);2.5循环结构程序设计【习题解答】一、选择题1.A 2,A 3.C4.B 5.C 6.C二、填空题1.18 或 192.03.89214.3,45.356.4三、编程题1.设计程序计算并输出1+*+#include void main()int i;float s=0;for(i=l;i=99;i+=2)s=s+1.0/i;printf(us=%fn,1,s);)2.编写程序输出下面图形121321432154321#include void main()|int i。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.