C语言编程.doc_第1页
C语言编程.doc_第2页
C语言编程.doc_第3页
C语言编程.doc_第4页
C语言编程.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

程序文件名定义 例如: 4.24 = FX4_24.C4.24 编程判断输入的正整数是否既是5又是7的整倍数。若是,输出yes,否则输出no。4.25 设N是一个四位数,它的9倍恰好是其反序数(例如:123的反序数是321),求N的值。4.28 编写一程序,对于给定的一个百分制成绩,输出相应的五分制成绩。 设:90分以上为A,8089分为B,7079分为C,6069分为D,60分以下为E。5.31求这样一个三位数,该三位数等于其每位数字的阶乘之和。 即:abc = a! + b! + c!5.32 如果一个正整数等于其各个数字的立方和,则称该数为阿姆斯特朗数(亦称为自恋性数)。 如407=43+03+73就是一个阿姆斯特朗数。编写程序求1000以内的所有阿姆斯特朗数。 (代表乘方)5.33显示200以内的完全平方数和它们的个数。(完全平方数:A2+B2=C2,求A、B、C)5.34 输入n值,输出如图所示高为n的等腰三角形。 /* / * / * / * / * / * /n=6时的等腰三角形5.35连续输入若干个正整数,求出其和及平均值,直到输入为0结束。5.36 编写程序,求S=1/(1+2)+1/(2+3)+1/(3+4)+前50项之和。5.37编程求出1000到3000之间能被7、11、17同时整除的整数的平均值, 并输出(结果保留两位小数)。5.38 编程找出满足下列条件的所有四位数的和并输出:该数第一、三位数字之和为10, 第二、四位数字之积为12。5.39求n!5.41 输入10个整数,统计同时能被3和7整除的个数,将结果输出5.42 输入一个1位整数m,打印出100以内其十位值是m的所有两位数。5.43 键盘输入10个实型数,求其倒数的和并输出5.44 键盘输入10个正实型数,求其方根的和并输出5.45 计算 s=1-2!+3!-4!+-10!的值并输出。5.46 计算 s=1-1/3 + 1/5- 1/7+1/101 的值并输出5.47 输入一个正整数,要求以相反的顺序输出该数。 例如输入12345,输出位54321。5.48编写程序,输入三角型的三条边长,求其面积。 注意:对于不合理的边长输入要输出数据错误的提示信息5.50 编写程序,求S=1/(1*2)+1/(2*3)+1/(3*4)+前50项之和。5.51 统计在1030-25830之间有多少个数能同时被13和27整除6.16 在主函数中输入8个整数,调用函数对其进行排序(从小到大), 排序方法不限,最后在主函数中输出结果。6.28在主函数中输入两个正整数, 调用一个函数求其最大公约数和最小公倍数,再调用一个函数将结果输出。6.28在主函数中输入两个正整数, 调用一个函数求其最大公约数和最小公倍数,再调用一个函数将结果输出。6.29编一子函数,求出一个字符串中所有字母的个数。6.30输入一串字符,长度不超过80个,分别统计出其中大写英文字母、空格和其它字符的个数并分别输出6.31求一维整型数组中正数的和。 要求:主函数定义数组a10,从键盘输入十个数, 调用自定义函数求出正数的和,然后在主函数中输出结果6.33通过键盘输入一个字符串, 在用户自定义的函数中实现将字符串反序并在主函数中做输出6.34 通过调用自定义函数来完成求圆柱体的体积(v=3.14*r*r*h), 要求圆柱体的高和底半径在主函数中做输入,圆柱体的体积在主函数中做输出7.27 输入5*5的数组,编写程序实现: (1)求出对角线上各元素的和; (2)求出对角线上行、列下标均为偶数的各元素的积; (3)找出对角线上其值最大的元素和它在数组中的位置。7.28从键盘输入5学生的成绩至数组中,将最低分的成绩输出。/4.24 编程判断输入的正整数是否既是5又是7的整倍数。/若是,输出yes,否则输出no。#includemain()int x; while(1) printf(输入的正整数(负数退出)=); scanf(%d,&x); if(x0) break; else printf(%d 是否既是5又是7的整倍数?n,x);if(x%5=0&x%7=0)printf(yesnn);elseprintf(nonn); /4.25 设N是一个四位数,它的9倍恰好是其反序数(例如:123的反序数是321),求N的值。#includemain()int i; char a,b,c,d; for(i=1000;i=9999;i+) a=i/1000; b=i/100%10; c=i/10%10; d=i%10;if(i*9=d*1000+c*100+b*10+a)printf(%6d,i); printf(n);/4.28 编写一程序,对于给定的一个百分制成绩,输出相应的五分制成绩。/设:90分以上为A,8089分为B,7079分为C,6069分为D,60分以下为E。#includemain()int x; char c; while(1) printf(输入分数(0-100),否则程序退出); scanf(%d,&x);if(x100)break;elseif(x=90)c=A; else if(x=80)c=B; else if(x=70)c=C; elseif(x=60)c=D; else c=E; printf(%d分数对应五分制成绩 %cn,x,c); /5.31求这样一个三位数,该三位数等于其每位数字的阶乘之和。/即:abc = a! + b! + c!#includemain()int abc,pa,pb,pc,a,b,c; for(abc=100;abc0;a-)pa*=a; /pa=a! for(pb=1;b0;b-)pb*=b; /pb=b! for(pc=1;c0;c-)pc*=c; /pc=c!if(abc=pa+pb+pc)printf(%5d,abc); printf(n);/5.32 如果一个正整数等于其各个数字的立方和,/则称该数为阿姆斯特朗数(亦称为自恋性数)。/如407=43+03+73就是一个阿姆斯特朗数。/编写程序求1000以内的所有阿姆斯特朗数。(代表乘方#include#includemain()int i,a,b,c; for(i=1;i1000;i+) a=i/100; b=i/10%10; c=i%10; if(i=pow(a,3)+pow(b,3)+pow(c,3) printf(%5d,i); printf(n);/5.33显示200以内的完全平方数和它们的个数。(完全平方数:A2+B2=C2,求A、B、C)#includemain()int i,a,b,c,n;printf(200以内的完全平方数a*a+b*b=c*cn); for(i=1,n=0;i200;i+) a=i/100; b=i/10%10; c=i%10; if(a*a+b*b=c*c) printf(%5d a=%d b=%d c=%dn,i,a,b,c); n+; printf(n它们的个数=%dn,n);/5.34 输入n值,输出如图所示高为n的等腰三角形。/*/ */ */ */ */ */n=6时的等腰三角形#includemain()int n,i,j; printf(输入n值,输出如图所示高为n的等腰三角形n=); scanf(%d,&n); for(i=n;i0;i-) for(j=n-i;j0;j-) printf( ); for(j=2*i-1;j0;j-) printf(*); printf(n); /5.35连续输入若干个正整数,求出其和及平均值,直到输入为0结束。#includemain()int n,s,x; printf(35连续输入若干个正整数,求出其和及平均值,直到输入为0结束n); n=0;s=0; while(1) printf(x=); scanf(%d,&x); if(x=0) break; if(x0) s+=x; n+; printf(共输入%d个正整数,其和=%d,平均值=%.2fn,n,s,(float)s/n);/5.36 编写程序,求S=1/(1+2)+1/(2+3)+1/(3+4)+前50项之和。#includemain()int i,a,b; double s; a=1;b=2; for(s=0,i=1;i=50;i+) s+=1.0/(a+b); a+;b+; printf(求S=1/(1+2)+1/(2+3)+1/(3+4)+前50项之和=%fn,s);/5.37编程求出1000到3000之间能被7、11、17同时整除的整数的平均值,/并输出(结果保留两位小数)。#includemain()int n,i,s; for(i=1000,n=0,s=0;i=3000;i+) if(i%7=0&i%11=0&i%17=0) s+=i; n+; printf(1000到3000之间能被7、11、17同时整除的整数的平均值=%.2fn,(float)s/n); printf(共有=%d数,总和=%dn,n,s);/5.38 编程找出满足下列条件的所有四位数的和并输出:该数第一、三位数字之和为10,第二、四位数字之积为12。#includemain()int s,i,a,b,c,d; for(i=1000,s=0;i=9999;i+) a=i/1000; b=i/100%10; c=i/10%10; d=i%10; if(a+c=10&b*d=12) s+=i; printf(%5d,i); printf(n满足条件的所有四位数的和=%dn,s);/5.39求n!#includemain()long int p; int n,i; printf(求n! 输入n值(12|n=0) printf(数据输入错误!n); else for(i=1,p=1;i=n;i+) p*=i; printf(%d! =%ldn,n,p); /5.41 输入10个整数,统计同时能被3和7整除的个数,将结果输出#includemain()int n,i,x; for(i=1,n=0;i=10;i+) printf(输入x%d=,i); scanf(%d,&x);if(x%3=0&x%7=0)n+; printf(10个数中同时能被3和7整除的个数=%d n,n); /5.42 输入一个1位整数m,打印出100以内其十位值是m的所有两位数。#includemain()int m,i; printf(输入1位整数m值=); scanf(%d,&m); m=m%10; m*=10; for(i=0;i=9;i+) printf(%3d,m+i); printf(n);/5.43 键盘输入10个实型数,求其倒数的和并输出#includemain()int i; double s; float x; for(i=1,s=0;i=10;i+) printf(x%d=,i); scanf(%f,&x); s+=1/x; printf(10个实型数倒数和= %.3fn,s);/5.44 键盘输入10个正实型数,求其方根的和并输出#include#includemain()int i; double s; float x; for(i=1,s=0;i=0) s+=sqrt(x); else printf(b负数不计算n); printf(10个正实型数方根和= %.3fn,s);/5.45 计算 s=1-2!+3!-4!+-10!的值并输出。#includemain()int i; long s,p; for(i=1,s=0,p=1;i=10;i+) p*=i; if(i&1) s=s+p;elses=s-p; printf(s=1-2!+3!-4!+-10!的值=%ldn,s);/5.46 计算 s=1-1/3 + 1/5- 1/7+1/101 的值并输出#includemain()int i,t=1; double s; for(i=1,s=0;i=101;i+=2) s=s+t/(float)i; t=-t; printf(s=1-1/3 + 1/5- 1/7+1/101 的值=%fn,s);/5.47 输入一个正整数,要求以相反的顺序输出该数。/例如输入12345,输出位54321。#includemain()char a; long x; printf(请输入小于10位的十进制=); scanf(%ld,&x); while(x) a=x%10; x=x/10; printf(%d,a); printf(n);/5.48编写程序,输入三角型的三条边长,求其面积。/注意:对于不合理的边长输入要输出数据错误的提示信息#include#includemain()float a,b,c; double area,s; printf(请输入三角形的a边=); scanf(%f,&a); printf(请输入三角形的b边=); scanf(%f,&b); printf(请输入三角形的c边=); scanf(%f,&c); if (a+bc & b+ca & c+ab) s=1.0/2*(a+b+c); area=sqrt(s*(s-a)*(s-b)*(s-c); printf(area=%.2fn,area); else printf(输入的边不能形成三角形n); printf(n);/5.50 编写程序,求S=1/(1*2)+1/(2*3)+1/(3*4)+前50项之和。#includemain()char a,b,i; double s; a=1,b=2; for(i=1,s=0;i=50;i+) s=s+1.0/(a+b); a+; b+; printf(S=1/(1*2)+1/(2*3)+1/(3*4)+前50项之和=%fn,s);/5.51 统计在1030-25830之间有多少个数能同时被13和27整除#includemain()int i,n; for(i=1030,n=0;i=25830;i+) if(i%13=0&i%27=0) n+; printf(1030-25830之间有 %d 个数能同时被13和27整除n,n);/6.16 在主函数中输入8个整数,调用函数对其进行排序(从小到大),/排序方法不限,/最后在主函数中输出结果。void aaa(int array,int n);#include#define N 8main()int aN,i; for(i=0;iN;i+) printf(a%d=,i); scanf(%d,&ai); aaa(a,N);printf(调用函数对其进行从小到大排序n); for(i=0;iN;i+) printf(a%d=%d ,i,ai); printf(n);void aaa(int array,int n)int i,j,m,t; for(i=0;in-1;i+) m=i; for(j=i+1;jn;j+) if(arrayjarraym) m=j; t=arrayi; arrayi=arraym; arraym=t; /6.28在主函数中输入两个正整数, 【方法1】/调用一个函数求其最大公约数和最小公倍数,/再调用一个函数将结果输出。#includeint mn(int m, int n);main()int a,b,m; printf(请输入a=); scanf(%d,&a); printf(请输入b=); scanf(%d,&b); m=mn(a,b); printf(%d和%d最大公约数= %d;最小公倍数= %dn,a,b,m,a*b/m);/辗转相除法求最大公约数int mn(int m, int n)int k; if(nm) k=m; m=n; n=k; while (k=m%n) m=n; n=k; return(n);/6.28在主函数中输入两个正整数, 【方法2】/调用一个函数求其最大公约数和最小公倍数,/再调用一个函数将结果输出。#includeint *mn(int m, int n);main()int a,b,*m; printf(请输入a=); scanf(%d,&a); printf(请输入b=); scanf(%d,&b); m=mn(a,b); printf(n%d和%d最大公约数= %d;最小公倍数= %dn,a,b,*m,*(m+1);/辗转相除法求最大公约数he最小公倍数int *mn(int m, int n)int k; static int mm2; if(nm) k=m; m=n; n=k; mm1=m*n; while (k=m%n) m=n; n=k; mm0=n; mm1/=n; return(&mm);/6.29编一子函数,求出一个字符串中所有字母的个数。#include#define N 50int a_z(char array);main()char strN; printf(输入字符串=); gets(str); printf(字符串中所有%d个字母数n,a_z(str);int a_z(char array)int n=0,i=0; while(arrayi!=0) if(arrayi=A&arrayi=a&arrayi=z) n+; i+; return(n);/6.30输入一串字符,长度不超过80个,/分别统计出其中大写英文字母、空格和其它字符的个数并分别输出#include#define N 81int qtl(char str,int *AL,int *sL);main()char sssN; int a_z,sp,qt; printf(输入一串字符,长度不超过80个n); gets(sss); qt=qtl(sss,&a_z,&sp); printf(串中大写字母数=%d;空格数=%d;其它符号数=%dn,a_z,sp,qt);int qtl(char str,int *AL,int *sL)int i=0,k=0; *AL=0;*sL=0; while(stri!=0) if(stri=A&stri=Z) (*AL)+; elseif(stri= )(*sL)+;else k+; i+; return(k);/6.31求一维整型数组中正数的和。 要求:主函数定义数组a10,从键盘输入十个数,/调用自定义函数求出正数的和,然后在主函数中输出结果#include#define N 10int Usum(int *p,int n);void main(void)int aN,i,s; for(i=0;iN;i+) printf(a%d=,i); scanf(%d,&ai); s=Usum(a,N); printf(数组中正数的和为%dn,s);int Usum(int *p,int n)int i,sum; for(i=0,sum=0;i=0) sum=sum+ *(p+i); return sum;/6.33通过键盘输入一个字符串,/在用户自定义的函数中实现将字符串反序并在主函数中做输出#include#define N 80void sz_a(char *pc)int n,i; n=strlen(pc); for(i=0;i=n/2;i+) char c;c=pci; pci=pcn-i-1; pcn-i-1=c; void main(void)char strN; int i; puts(输入字符串); gets(str); sz_a(str); puts(字符串反序n); puts(str);/6.34 通过调用自定义函数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论