C语言编程习题.doc

上传人:李医生 文档编号:7194887 上传时间:2020-11-04 格式:DOC 页数:16 大小:90.01KB
返回 下载 相关 举报
C语言编程习题.doc_第1页
第1页 / 共16页
C语言编程习题.doc_第2页
第2页 / 共16页
C语言编程习题.doc_第3页
第3页 / 共16页
C语言编程习题.doc_第4页
第4页 / 共16页
C语言编程习题.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《C语言编程习题.doc》由会员分享,可在线阅读,更多相关《C语言编程习题.doc(16页珍藏版)》请在三一文库上搜索。

1、编程习题1.交换2个变量的值。 #include int main(int argc, char *argv) int x,y,temp; scanf(%d%d,&x,&y); printf(x=%d,y=%dn,x,y); temp=x; x=y; y=temp; printf(x=%d,y=%dn,x,y); 2. 从键盘输入5个学生的成绩,计算出总成绩和平均成绩。#include int main(int argc, char *argv) float i,j,n,m,z; int sum=0,avg=0; printf(请输入成绩n); scanf(%f%f%f%f%f,&i,&j,&

2、n,&m,&z); sum=i+j+n+m+z; avg=sum/5; printf(%.1dn%.ldn,sum,avg ); 3. 用if或switch语句编程,将百分制成绩转换为等级分:90以上A,80-89为B,70-79为C,60-69为D,其他为F.解法一switch:#include int main(int argc, char *argv) int x; scanf(%d,&x); switch(x/10) case 9:printf(An);break; case 8:printf(Bn);break; case 7:printf(Cn);break; case 6:pri

3、ntf(Dn);break; default:printf(Fn); 解法二if:#include int main(int argc, char *argv) int x; scanf(%d,&x); if(x/10=9) printf(An); else if(x/10=8&x/10=7&x/10=6&x/107) printf(Dn); else printf(Fn); 4. 用if或switch语句编程,要求实现:从键盘输入1、2、3、4,分别显示excellent、good、pass、fail,输入其他键时显示“error”。解法一switch:#include int main(i

4、nt argc, char *argv) int x; printf(请输入数字n); scanf(%d,&x); switch(x) case 1:printf(excellentn);break; case 2:printf(goodn);break; case 3:printf(passn);break; case 4:printf(failn);break; default:printf(errorn); 解法二if:#include int main(int argc, char *argv) int x; printf(请输入数字n); scanf(%d,&x); if(x0&x=

5、4) if(x=1) printf(excellentn,1); if(x=2) printf(goodn,2); if(x=3) printf(passn,3); if(x=4) printf(failn,4); else printf(errorn); 5. 编写一个程序,计算并输出一个整数n的个位数字之和。比如n=5678,各位数字之和为5+6+7+8,n的值由键盘输入,可以是任意几位数。#include int main(int argc, char *argv)int n,sum=1,i,j=0; printf(输入整数n); scanf(%d,&n); for(i=0;in;i+)

6、 j=n-n/10*10;n=n/10; sum=sum+j; if(n=0) break; printf(%dn,sum);6. 编写程序实现编程输出所有的水仙花数,并统计输出个数,所谓水仙花数是指一个3位自然数,其各位数字的立方和等于该数本身。例如153就是一个水仙花数,因为153=1*1*1+5*5*5+3*3*37. 编程实现九九乘法表#include int main(int argc, char *argv) int i,j; for(i=1;i10;i+) for(j=1;j=i;j+) printf(%d*%d=%d,i,j,i*j); printf(n); printf(n)

7、; 8. 编一函数判别某一数是否为素数,若是,返回值为1,否则,返回值为0。main函数中调用该函数9. 编写函数输出1-20的所以素数。#include int main(int argc, char *argv) int flag=0; for(int i=1;i=20;i+) flag=0; for(int j=2;ji;j+) if(i%j=0) flag=1; break; if(!flag) printf(%dn,i); return 0; 10. 编写程序实现编程输出所有的水仙花数,并统计输出个数,所谓水仙花数是指一个3位自然数,其各位数字的立方和等于该数本身。例如153就是一个

8、水仙花数,因为153=1*1*1+5*5*5+3*3*3。要求设计一个函数shuixian用于判断一个数是否为水仙花数,在main函数中调用该函数,输出所有水仙花数。 #include int shuixian(int n) int flag=0,n1,n2,n3; n1=n%10; n2=(n/10)%10; n3=n/100; if(n1*n1*n1+n2*n2*n2+n3*n3*n3=n) flag=1; else flag=0; return flag; int main(int argc, char *argv) int i; for(i=100;i1000;i+) if(shuix

9、ian(i) printf(%6d,i); printf(n); return 0; 10. 运用指针,将abcde反向输出。#include int main(int argc, char *argv) char st=abcde,*p; int i,n; n= strlen(st); puts(st); for(i=0;i2;i+) *p=*(st+i); *(st+i)=*(st+n-i-1); *(st+n-i-1)=*p; puts(st); return 0; 11. 编程实现菱形*图。【要求:菱形行数从键盘输入。】#include int main(int argc, char

10、*argv) int i,k,j,n; scanf(%d,&n); for(i=1;i=n;i+) for(k=1;k=n-i;k+) printf( ); for(j=1;j0;i-) for(k=1;k=n-i;k+) printf( ); for(j=1;j=2*i-1;j+) printf(*); printf(n); 12.编程求1+1/2+1/3+1/4+.+1/n #include int main(int argc, char *argv) double fun(int n); int n; scanf(%d,&n); printf(sum=%f,fun(n); double

11、fun(int n) double sum=0; int i; for(i=1;i=n;i+) sum+=1.0/i; return sum; 13编程.输出“this is a test string,haha!”的字符串的长度,空格出现的次数和元音字母的个数。 #include int main(int argc, char *argv) int n=0,m=0,s=0; char ch50=this is a test string,haha!; while(chn!=0) if(chn= ) m+; else if(chn=a|chn=e|chn=i|chn=o|chn=u) s+;

12、n+; printf(字符串的长度(n)为:%dn,n); printf(空格出现的次数(m)为:%dn,m); printf(元音字母个数(s)为:%dn,s); return 0; 14.二维数组,求一个4*4阶矩阵元素的最小值。#include int main(int argc, char *argv) static int a44=12,76,4,1,-19,28,55,-6,2,10,13,-3,3,-9,112,111; int i,j,row,column,min; min=a00; for(i=0;i4;i+) for(j=0;j4;j+) if(aijmin) min=aij; row=i,column=j; printf(Min=%d,%d rows,%d columnn,min,row+1,column+1);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1