1、C语言课后答案第3章三、编程题1 编写程序,输入一个非负数,输出以此数为半径的圆周长以及面积。#include stdio、h #define PI 3、1415void main() float r,area,circumference; scanf(%f,&r); area=PI*r*r; circumference=2*r*PI; printf(area=%6.2fncircumference=%6.2fn,area,circumference);2 编写程序,输出下面结果,注意,双引号也要输出:“Im a student!”#include void main() printf(Im
2、a student!n);3 编写程序,输入一个小写字母,将其转换为大写字母输出。例如输入b,则输出B。提示:小写字母与对应的大写字母的ASCII码值相差32。void main() char ch; ch=getchar(); ch-=32; putchar(ch); /printf(%c,ch);4 编写程序,输入一个华氏温度f,输出其相应的摄氏温度c。华氏温度与摄氏温度的转换公式为: #include void main() float f,c; scanf(“%f”,&f); c=5、0*(f-32)/9; printf(“华氏温度%5.2f转换为摄氏温度为:%5.2fn”,f,c);
3、第4章三、编程题1 输入一个整数,判断这个整数就是奇数还就是偶数(提示:整数的奇偶性可以利用取余运算符%判定)。#include void main() int a; scanf(%d,&a); if(a%2) printf(奇数n); else printf(偶数n);2 编写程序,输入一个24小时制的时间,转换为12小时制时间后进行输出。以13点15分为例,输入:13:15,则输出:下午1:15。#include void main() int hour,minute; scanf(%d:%d,&hour,&minute); if (hour12) hour=hour-12; printf
4、(%d:%dn,hour,minute);3 输入年号,判断它就是否就是闰年(如果年号能被400整除,或能被4整除,而不能被100整除,则就是闰年,否则不就是)。void main() int year; scanf(%d,&year); if (year%400=0|(year%4=0&year%100=0) printf(%d就是闰年n,year); else printf(%d不就是闰年n,year);4 输入一个字符,如果就是大写字母则输出对应的小写字母,如果就是小写字母则输出相应的大写字母,如果都不就是则原样输出。#include void main() char ch; scanf
5、(%c,&ch); if(ch=a&ch=A&ch=Z) ch+=32; printf(n%cn,ch);5 设计一个简单的计算器程序,能输入整型运算数与基本运算符(+,-,*,/),输出计算结果。例如:输入2+6,输出2+6=8。#includemain() float a,b,result; char op; scanf(%f%c%f,&a,&op,&b); switch(op) case+: result=a+b; printf(=%f,result); break; case-: result=a-b; printf(=%f,result); break; case*: result=
6、a*b; printf(%f,result); break; case/: if(b=0、0) printf(error!n); result=a/b; printf(=%f,result); default: printf(error due to the illegal input!n); 第5章三、编程题1 编写程序,显示100200之间能被7除余2的所有整数。#include stdio、hmain() int i; for(i=100;i=200;i+) if(i%7=2) printf(t%dt,i); 2 输入n个整数,求这n个整数中的最大数、最小数与偶数平均数,并输出。#inc
7、lude void main() int i,n,data,max=0,min=0,even=0,evennumber=0; printf(Please input the number of data:); scanf(%d,&n); printf(Please input the data:n); scanf(%d,&data); max=data; min=data; if (data%2=0) even=even+data; evennumber+; for(i=1;imax) max=data; else if (datamin) min=data; if (data%2=0) ev
8、en=even+data; evennumber+; printf(The max is %dnThe min is %dn The average of even is %5.2fn,max,min,(float)(even)/evennumber);3 输入一串字符,以回车作为结束标志。统计并输出这串字符中大写字母、小写字母与数字字符的个数。#include void main() int upper=0,lower=0,number=0; char letter; while(letter=getchar()!=n) if (letter=a&letter=A&letter=0&lett
9、er=9) number+; printf(the number of uppercase is:%dn,upper); printf(the number of lowercase is:%dn,lower); printf(the number of number is:%dn,number);4 输出九九乘法表。#include void main() int i,j; for(i=1;i=9;i+) for(j=1;j=i;j+) printf(%d*%d=%-3d ,i,j,i*j); printf(n); 5 编写程序,输出31000之间全部素数。#include #include
10、 math、hvoid main() int k,data,tag; for(data=3;data=1000;data+) /外层循环,用来产生21000之间的整数 tag=0; /tag用于表示数i就是否就是素数,没有判断前先假定就是素数 for(k=2;k=3)(即从第三个数起,每个数等于前2个数之与)。#include stdio、h void main() int f40,n; f0=1; f1=1; printf(Fibonacci数列的前40个数就是:%dt%dt,f0,f1); for(n=2;n40;n+) fn=fn-1+fn-2; printf(%dt,fn); 8 一个
11、穷人找到一个百万富翁,给她商讨一个换钱计划如下:我每天给您十万元,而您第一天只需给我一元钱,第二天给我二元钱,第三天给我四元钱,即我每天都给您十万元,您每天给我的钱都就是前一天的两倍,直到满一个月(30天)。百万富翁很高兴地接受了这个换钱计划。请编写程序计算满一个月时,穷人给了富翁多少钱,而富翁又给了穷人多少钱。#include void main() long poor=100000,rich=1,i; for(i=2;i0;i-) k = (j + 1) * 2; j = k; printf(%total=%dn,k);第6章三.1、 #include #define n 10void m
12、ain() int an,i,count1=0,count2=0,sum=0;float ave;for (i=0;i80) count1+=1; else if(ai60) count2+=1;ave=sum/n;printf(%d个优秀, %d个不及格,平均分:%f。,count1,count2,ave);2、 #include #define n 10void main() int an,i,j,k,max,min;for (i=0;in;i+)scanf(%d,&ai); if (!i) max=min=ai; j=k=i; else if (maxai) min=ai; k=i; p
13、rintf(最大值%d在第%d位,最小值%d在第%d位。,max,j+1,min,k+1); 3、 #include #include void main() char s20,ch;int i,n; printf(请输入字符串:); gets(s); n=strlen(s); for(i=0;in/2;i+) ch=si; si=sn-1-i; sn-1-i=ch; printf(逆序存放的字符串:); puts(s); 4、 #include #define N 10void main() int i,j,n,aN+1;printf(请输入%d个由小到大排列的整数:,N);for(i=0;
14、iN;i+)scanf(%d,&ai);printf(请输入要插入的数:);scanf(%d,&n);for(i=0;in) j=i; break; if (i=N) j=i; for(i=N-1;i=j;i-) ai+1=ai;aj=n;printf(插入后的排列:);for(i=0;i=N;i+) printf(%d ,ai);5、 #include #define N 3void main() int i,j,aNN,sum=0; printf(请输入%d*%d矩阵的元素:,N,N); for(i=0;iN;i+) for(j=0;jN;j+) scanf(%d,&aij); if(i=
15、j) sum+=aij; printf(主对角线元素之与:%d。,sum); 6、 #include #includevoid main() int i,j, n,k=0, b300; for (i=1;i300;i+) n=int(sqrt(i); for(j=2;jn) bk=i; k+; for(i=0;ik;i+) printf(%5d,bi); 7、 #include #define N 7void main() int i,j,k,aN,temp;printf(请输入%d个整数:,N); for(i=0;iN;i+) scanf(%d,&ai); for(i=0;iN-1;i+)
16、k=i; temp=ai; for(j=i+1;jaj) k=j; temp=aj; if (k!=i) ak=ai; ai=temp; printf(排序后的数列:); for(i=0;iN;i+) printf(%3d,ai); 8、 #include void main() int i=0,count1=0,count2=0,count3=0; char s20; printf(请输入字符串:); gets(s); while(si!=0) if(si=a&si=A&si=0&si=9) count2+; else count3+; i+; printf(字符%d个,数字%d个,其她%d
17、个。,count1,count2,count3); 9、 #include #include void main()char s20,ch;int i=0; printf(请输入字符串:); gets(s); while(si!=0) si+=3; if (siz) si-=26; i+; printf(加密后:); puts(s); 10、 #include #include void main()char s120,s220;int i=0,j=0; printf(请输入字符串1:); gets(s1); printf(请输入字符串2:); gets(s2); while (s1i!=0)
18、 i+; s1i=s2j; do i+; j+; s1i=s2j; while (s2j!=0); printf(连接后:); puts(s1); 11、 #include #include void main()char s120,s220,s340;int i=0,j=0,k=0; printf(请输入按字母序排列的字符串1:); gets(s1); printf(请输入按字母序排列的字符串2:); gets(s2); while(s1i!=0&s2j!=0) if (s1is2j) s3k=s1i; k+;i+; else s3k=s2j; k+;j+; while(s1i!=0) s3
19、k=s1i; k+;i+; while(s2j!=0) s3k=s2j; k+;j+; s3k=0; printf(合并后的字符串:); puts(s3); 12、 #include void main()int i,j,a55; for(i=0;i=0;j-) if(j=i) aij=1; else aij=aij+1+1; for(i=0;i5;i+) for(j=0;j5;j+) printf(%3d,aij); printf(n); 13、 #include void main()int i,j,a88; for(i=0;i8;i+) for(j=0;j8;j+) if(j=i|(i+
20、j)=7) aij=1; else aij=0; for(i=0;i8;i+) for(j=0;j8;j+) printf(%3d,aij); printf(n); 14、 #include void main()int i,j,sum,a53=20,30,26,30,20,25,25,50,20,46,15,10,35,15,12; for(i=0;i5;i+) sum=0; for(j=0;j3;j+) sum+=aij; switch (i) case 0:printf(第一个);break; case 1:printf(第二个);break; case 2:printf(第三个);break; case 3:printf(第四个);break; case 4:printf(第五个);break; printf(企业的总产值就是:%d万元。n,sum); for(j=0;j3;j+) sum=0; for(i=0;i5;i+) sum+=aij; switch (j) case 0:printf(A);break; case 1:printf(B);break; case 2:printf(C);break; printf(产品的总产值就是:%d
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1