1、c程序设计课后习题答案详解1、编写一个程序,输入a b c三个值,输出其中最大者。解:#includevoid main()int a,b,c,max;printf(请输入三个数a,b,c:n); scanf(%d,%d,%d,&a,&b,&c);max=a;if(maxb)max=b;if(maxc)max=c;printf(最大数为:%d,max);2、输入一个华氏温度,要求输出摄氏温度,公式为C=5/9(F-32),输出要有文字说明,取两位小数.解: #includevoid main()float c,f;printf(请输入一个华氏温度:n);scanf(%f,&f);c=(5.0/
2、9.0)*(f-32);printf(摄氏温度为:%5.2fn,c);3、输入四个整数,按大小顺序输出.#includevoid main() int t,a,b,c,d; printf(请输入四个数:); scanf(%d,%d,%d,&a,&b,&c,&d); printf( a=%d,b=%d,c=%d,d=%d n,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; printf(n 排序结果如下: n);printf(
3、 %d %d %d %d n,a,b,c,d);4、有三个整数a,b,c,由键盘输入,输出其中最大的数.#includevoid main()int a,b,c,termp,max; printf( 请输入 A,B,C: ); scanf(%d,%d,%d,&a,&b,&c); printf(A=%d,B=%d,C=%dn,a,b,c); temp=(ab)?a:b; max=(tempc)? temp:c; printf( A,B,C中最大数是%d,max);5、输入两个数,求最小公倍数.#includevoid main()int m,n,i;scanf(%d %d,&m,&n);for(
4、i=m*n;i=1;i-)if(i%m=0)&(i%n=0)break;printf(%d,i);6.输入一行字符,分别统计出其中英文字母,空格,数字和其它字符的个数.解:#include void main()char c;int letters=0,space=0,degit=0,other=0;printf(请输入一行字符:n);while(c=getchar()!=n)if(c=a&cA&c=0&c=9)digit+;elseother+;printf(其中:字母数=%d 空格数=%d 数字数=%d 其它字符数=%dn,letters,space,digit,other);7、水仙开花
5、#include void main()int i,j,k,n;printf( 水仙花数是:n);for(n=100;n1000;n+)i=n/100;j=n/10-i*10;k=n%10;if(i*100+j*10+k=i*i*i+j*j*j+k*k*k)printf(%dn,n);8、判断整数是否为素数#include void main()int prime(int); int number; printf(请输入一个正整数:n); scanf(%d,&number); if(prime(number) printf(n %d 是素数.,number); else printf(n %d
6、 不是素数,number);int prime(int number)int flag=1,n;for(n=2;nN) printf(超过长度,请重输!); else flag=0;sort(str);printf(n 排序结果:);for(i=0;iN;i+) printf(%c,stri);sort(str)char strN;int i,j;char t;for(j=1;jN;j+) for(i=0;(istri+1) t=stri; stri=stri+1; stri+1=t; 10、/*判断输入年份是否为闰年*/#define LEAP_YEAR(y) (y%4=0) & (y%10
7、0!=0)|(y%400=0)main() int year; printf(n请输入某一年:); scanf(%d,&year); if(LEAP_YEAR(year) printf(%d 是闰年.n,year); else printf(%d 不是闰年.n,year); /*用函数方法,从三个数中找出最大值*/main() int a,b,c; printf(请输入三个整数:); scanf(%d,%d,%d,&a,&b,&c); printf(三个之中最大值为:%dn,max(a,b,c); max(x,y,z) int x,y,z; int t; t=(xy? x:y); return
8、(tz? t:z); 11、输入四个整数,按大小顺序输出.#includeVoid main() int t,a,b,c,d; printf(请输入四个数:); scanf(%d,%d,%d,%d,&a,&b,&c,&d); printf(nn a=%d,b=%d,c=%d,d=%d n,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(n 排序结果如下: n);printf
9、( %d %d %d %d n,a,b,c,d);12、设圆半径r=1.5,圆柱高h=3,求圆周长,圆面积,圆球表面积,圆球体积,圆柱体积,用scanf输入数据,输出计算结果,输出时要求有文字说明,取小数点后两位数字.请编程.解:main()float pi,h,r,l,s,sq,vq,vz;pi=3.1415926;printf(请输入圆半径r圆柱高h:n);scanf(%f,%f,&r,&h);l=2*pi*r;s=r*r*pi;sq=4*pi*r*r;vq=4.0/3.0*pi*r*r*r;vz=pi*r*r*h;printf(圆周长为: =%6.2fn,l);printf(圆面积为:
10、=%6.2fn,s);printf(圆球表面积为: =%6.2fn,sq);printf(圆球体积为: =%6.2fn,vz);13、用筛选法求100之内的素数./*用筛选法求100之内的素数*/#include#define N 101main()int i,j,line,aN;for(i=2;iN;i+) ai=i;for(i=2;isqrl(N);i+)for(j=i+1;jN;j+) if(ai!=0 & aj!=0) if(aj%ai=0) aj=0;printf(n);for(i=2,line=0;iN;i+) if(ai!=0) printf(%5d,ai); line+; if
11、(line=10) printf(n); line=0; 14、球反弹问题main()float sn=100.0,hn=sn/2;int n;for(n=2;n=10;n+)sn=sn+2*hn;/*第n次落地时共经过的米数*/hn=hn/2;/*第n次反跳高度*/printf(第10次落地时共经过%f米 n,sn);printf(第10次反弹%f米.n,hn);15、冒泡#includevoid main() int a10; int i,j,t; printf(input 10 numbers:n); for (i=0;i=9;i+) scanf(%d,&ai); printf(n);
12、for (j=0;j=9;j+) for(i=0;iai+1) t=ai; ai=ai+1; ai+1=t; printf(the sorted numbers:n); for(i=0;i=9;i+) printf(%d ,ai); printf(n);16、对角线#includevoid main()float a33,sum=0; int i,j; printf(请输入矩阵图n); for(i=0;i=2;i+) for(j=0;j=2;j+) scanf(%f,&aij); printf(n); for(i=0;i=2;i+) for(j=0;j=2;j+) if(i+j=2|i=j) sum=su
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1