1、习题解答14章习 题 一 2习 题 二 3习 题 三 4习 题 四 10C语言程序设计习题解答习 题 一一、单项选择题C 2.A 3.D二、填空题 1.顺序结构 选择结构 循环结构 2.算法 3.语言简洁、运算符丰富、结构化语言 4.可移植性强、代码效率高、书写格式自由 5.错误隐蔽、有时会难以理解、有时会难以修改 6.群举法(枚举法)、递推法(迭代法)、递归法 7.做什么 怎么做三、应用题 1. include void main() printf(“*n”); printf(“ C language programn”); printf(“*n”); 2. include void mai
2、n()Z+ int a,b,c,max; scanf(“%d%d%d”,&a,&b,&c); if(ab) max=a; else max=b; if(maxc) max=c; printf(“Max=%dn”,max); 习 题 二一、单项选择题1.A,D,E 2.B,E 3.B,D,E,F,H 4.B,F 5.A,B,E二、填空题 1.int char double long char char int long 2.0 0 2 4 4 8 0 2 3. 2 1 1 1 4. 不做 5. sin(25*3.14159/180)+cos(30*3.14159/180) 6. 2 8. 5三、
3、给出各个程序的运行结果 1.运行结果如下: 3 21 5 5 2.运行结果如下: 6,9 9,27习 题 三一、单项选择题1.D 2.B 3.D 4.C 5.B 6.C 7.B 8.A 9.C 10.D11.D 12.D 13.B 14.A 15.A 16.B 17.C 18.C 19.B 20.B21.D 22.C 23.C 24.D 25.C 26.C 27.D 28.D 29.B 30.A二、填空题1. 从标准设备(键盘)上读入一个字符 向标准设备(键盘)上输出一个字符 #include 2. 以十进制形式输入一个整数 表示从标准输入设备(键盘)读取输入的3个整型数 表示掉过3个整数不读
4、取 用来输入一个字符3. 以十进制形式输出一个整数 以十六进制形式输出一个整数 以十进制小数形式输出,输出的数据长度为7位,其中有两位为小数以字符形式输出一个字符4. 分程序 ; ; 5. -1 6. 非0 07. a%7=0 else 8. 3 9. 2 10.for while do-while 11. Continue 12.a=16,y=4213.10 14.y=19 15.2222216.39 17.7 18.5,519.n=4 20.-3 21.8三、程序阅读分析题 1. 2. 3. 0 4. 5 6 7 5. this number is a huiwen四、编程题1. 编写一个
5、程序,要求用户输入两个整数,判定其中一个是否能整除另一个。#include int main() int a, b; while (scanf(%d %d, &a, &b) = 2) if (a % b) printf(不能整除n);else printf(能整除n); return 0;2. 编程实现:输入一个整数,判断它能否被3,5,7整除,并输出以下信息之一:能同时被3,5,7整除;能被其中两数(要指出哪两个)整除;能被其中一个数(要指出哪一个)整除;不能被3,5,7任一个整除。#include void main() int a; printf(请输入一个整数n); scanf(%d,
6、&a); if(a%3=0&a%5=0&a%7=0) printf(%d能同时被3,5,7整除n,a); else if(a%3!=0&a%5=0&a%7=0) printf(%d能同时被5,7整除n,a); else if(a%3=0&a%5!=0&a%7=0) printf(%d能同时被3,7整除n,a); else if(a%3=0&a%5=0&a%7!=0) printf(%d能同时被3,5整除n,a); else if(a%3=0&a%5!=0&a%7!=0) printf(%d能被3整除n,a); else if(a%3!=0&a%5=0&a%7!=0) printf(%d能被5整
7、除n,a);else if(a%3!=0&a%5!=0&a%7=0) printf(%d能被7整除n,a); else printf(%d不能被3,5,7整除n,a);3. 市郊长途电话收费标准如下:通话时间在三分钟以下收费一角,三分钟以上则每超过一分钟加一角。在7:0021:00之间通话者,按收费标准全价收费;在其它时间通话者,按收费标准的一半收费。请计算某人在x时间通话y分钟,应缴多少电话费。(通话时间利用整数输入实现)#include main() float x,y=0; int t; scanf(%f%d,&x,&t);if (t7 & t21)if(x0); else if(x0)
8、; printf(%f,y);4. 输入a、b、c三条边,判断它是否构成三角形。若能构成三角形,则计算三角形面积。#include #include main() float a, b, c, S = 0, x = 0; printf(输入三角形三条边的边长: ); scanf(%f%f%f, &a, &b, &c); if(a + b c & b + c a & a + c b) x = (a + b + c) / 2.0;S = sqrt(x * (x - a) * (x - b) * (x - c);printf(area = %.3fn, S); Elseprintf(不能构成三角形n
9、);5. 打印出所有”水仙花数”。所谓”水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。例如,153是一个”水仙花数”,因为153=13+53+33。#include stdio.h#include math.hmain() int i; int a,b,c; for(i=100;i=999;i+) a=i%10; /*取个位数*/b=i/10%10; /*取十位数*/c=i/100; /*取百位数*/if (i=a*a*a+b*b*b+c*c*c)printf(%d ,i); 6. 编写一个程序,在屏幕上显示如下图形(图形的层数读者自行设定):* * * * * * * * * *
10、 * * * * * * * * * * * * #include #include main() int i,j,k; for (i=-3;i=3;i+) for (j=1;j=abs(i);j+) printf(%c,32); for (j=1;j=7-2*abs(i);j+) printf(*); printf(n); 7. 求斐波那契(Fibonacci)数列:1,1,2,3,5,8,.的前40个数。斐波那契数列的定义:F1=1 (n=1)F2=1 (n=2) Fn=Fn-1+Fn-2 (n3) #include main()int f1,f2,f;int i;f1=f2=1;prin
11、tf(%dn%dn,f1,f2);for(i=1;i=38;i+) /*已经有两个数,只要再产生38个数即可*/ f=f1+f2; f1=f2; f2=f; printf(%dn,f);8. 编程实现求1+2+3+n之和,并输出当其和第一次大于或等于100时的值及n值。#include main() int i,s,t=0; i=1;s=0; while (i=100 & t1) /*设定t只求第一次和大于100的内容*/ printf(第一次和大于或等于100时和为%dn,s); printf(第一次和大于或等于100时n为%dn,i); t+=1; i=i+1; printf(s=%dn,
12、s);9. 整元换零钱问题。把1元兑换成1分、2分、5分的硬币,共有多少种不同的换法?#include main() int i,j,k,n; n=100,k=0; for(i=0;i=n/5;i+) for(j=0;j=(n-i*5)/2;j+) printf(5 cent=%dt 2 cent=%dt 1 cent=%dn,i,j,n-i*5-j*2); k+; printf(total times=%dn,k);10. 编写解鸡兔同笼问题的程序。用户输入头的数目和脚的数目,输出鸡、兔各有多少只。#include main() int x,y,a,b; printf(输入鸡兔头的数目:); scanf(%d,&x); printf(输入鸡兔脚的数目:); scanf(%d,&y); a=x-(y-2*x)/2; b=(y-2*x)/2; printf(鸡有%d只,兔有%d只,a,b);11. 打印杨辉三角形,即(x+y)n展开式的各项系数。并且在程序运行开始时,问用户n的值为多少,接着打印如下形式至指定行数。11 11 2 1 1 3 3 11 4 6 4 1.#include int main()
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1