ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:18.63KB ,
资源ID:29930212      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/29930212.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言编程复习.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言编程复习.docx

1、C语言编程复习【5.4】求!+2!+3!+10!的值#includeint main(void) int f,i,j,s=0; for(i=1;i=10;i+) f=1; for(j=1;j=i;j+) f*=j; s+=f; printf(1!+2!+3!+.+10!=%dn,s); return 0;【5.9】求-2/3+3/5-4/7+5/9-6/11+的前项之和#includeint main(void) int a,i; /a:分子 double s=0; for(i=1;i=20;i+) if(i%2=0) a=-i; else a=i; s+=1.0*a/(2*i-1); pri

2、ntf(=%.2lfn,s); return 0;【5.10】求数列1,2,3,5,8,13,21,34中第25项的值#includeint main(void) int a,b,i,f; a=1,b=2; for(i=3;i=25;i+) f=a+b; a=b; b=f; printf(=%dn,f); return 0;【5.13】输出20002100年之间所有的闰年。符合以下二者之一的年份是闰年:(1)能被整除,但不能被100整除,如2016(2)能被400整除,如2000要求:每行输出5项#includeint main(void) int year,n=0; for(year=200

3、0;year=2100;year+) if(year%4=0&year%100!=0|year%400=0) printf(%6d,year); n+; if(n%5=0) printf(n); return 0; 【5.14】输出所有的水仙花数。水仙花数是一个三位正整数,每位数字的三次方之和等于该数本身。例如:13+53+33=153,153是水仙花数。#includeint main(void)int x,i,j,k; for(x=100;x=999;x+) i=x/100; j=x/10%10; k=x%10; if(x=i*i*i+j*j*j+k*k*k) printf(%5d,x);

4、 printf(n); return 0; 【5.15】输入若干整数,以-1结束,去掉最大值和最小值,求平均值。#includeint main(void) int x,max,min,n=0,sum=0; printf(输入若干个数,以-1结束:n); scanf(%d,&x); max=min=x; while(x!=-1) sum+=x; n+; if(maxx) min=x; scanf(%d,&x); if(n2) printf(平均值为:%.1lfn,1.0*(sum-max-min)/(n-2); else printf(输入的分数个数小于n); return 0; 【5.16】

5、输入一行字符,统计英文字母、数字字符、空格和其他字符的个数。#includeint main(void)int n1=0,n2=0,n3=0,n4=0; char ch; printf(输入一行字符:n); while(ch=getchar()!=n) if(ch=a&ch=A&ch=0&ch=9) n2+; else if(ch= ) n3+; else n4+; printf(英文字母%d个,数字字符%d个,空格%d个,其他字符%d个。n,n1,n2,n3,n4); return 0; 【5.18】根据公式/41-1/3+1/5-1/7+求的近似值,绝对值小于10-5的项不计算。#incl

6、ude#includeint main(void) int a=1; double b=1,s=0; while(abs(a)/b=10e-5) s+=a/b; a=-a; b=b+2; printf(pi=%lfn,s*4); return 0; 【5.21】输入一个正整数n,求n是几位数includeint main(void) int n,count=0; printf(输入一个正整数:n); scanf(%d,&n); while(n) n=n/10; count+; printf(是%d位数n,count); return 0;【5.27】根据输入的行数输出图案。 例如,输入行数为7

7、,则 #include#includeint main(void) int n,i,j; printf(输入行数:); scanf(%d,&n); for(i=-n/2;i=n/2;i+) for(j=1;j=abs(i);j+) printf( ); for(j=1;j=n-2*abs(i);j+) printf(*); printf(n); return 0;【5.28】输出100以内的所有质数,每行输出5个质数#includeint main(void) int n,cou=0,i; for(n=2;n=100;n+) for(i=2;i=n-1;i+) if(n%i=0) break;

8、 if(i=n) printf(%6d,n); cou+; if(cou%5=0) printf(n); return 0;【5.29】一百个铜钱买100只鸡,其中公鸡一只5钱,母鸡一只3钱,小鸡1钱三只。问100只鸡中公鸡母鸡小鸡各多少只?#includeint main(void) int x,y,z; for(x=0;x=100;x+) for(y=0;y=100;y+) for(z=0;z=100;z+) if(x+y+z=100&15*x+9*y+z=300) printf(公鸡%d个,母鸡%d个,小鸡%d个n,x,y,z); return 0;【6.1】输入10个数到数组t中,求最

9、小值及最小值在数组t中的下标#includeint main(void) int t10,i,mini; printf(输入10个数:n); for(i=0;i10;i+) scanf(%d,&ti); mini=0; for(i=1;i10;i+) if(titmini) mini=i; printf(最小值为:%d,其下标为:%dn,tmini,mini); return 0;【6.2】输入10个数到数组t中,再输入x,如果有与x相等的数组元素,输出该元素的下标,否则输出-1#includeint main(void) int t10,x,i,flag=0; printf(输入10个数:n

10、); for(i=0;i10;i+) scanf(%d,&ti); printf(输入x:); scanf(%d,&x); for(i=0;i10;i+) if(x=ti) printf(与x相等的数组元素的下标是:%dn,i); flag=1; if(flag=0) printf(-1n); return 0;【6.3】输入10个数到数组t中,按降序排序,输出排序结果#includeint main(void) int t10,i,j,tmp; printf(输入10个数:n); for(i=0;i10;i+) scanf(%d,&ti); for(i=1;i10;i+) for(j=0;j

11、10-i;j+) if(tjtj+1) tmp=tj; tj=tj+1; tj+1=tmp; for(i=0;i10;i+) printf(%6d,ti); printf(n); return 0;【6.7】求3行5列二维数组中的最小值,及最小值在数组中的行号和列号#includeint main(void) int a35,i,j,mini,minj; printf(输入3行5列数组:n); for(i=0;i3;i+) for(j=0;j5;j+) scanf(%d,&aij); mini=minj=0; for(i=0;i3;i+) for(j=0;jaij) mini=i; minj=

12、j; printf(最小值:%d,最小值行号:%d,列号:%dn,aminiminj,mini,minj); return 0;【6.8】求3行5列二维数组中每列数组元素的最小值,输出。#includeint main(void) int a35,i,j,min; printf(输入3行5列数组:n); for(i=0;i3;i+) for(j=0;j5;j+) scanf(%d,&aij); for(i=0;i5;i+) min=a0i; for(j=1;jaji) min=aji; printf(%d列最小值为:%dn,i,min); return 0;【6.9】求3行5列二维数组主对角线

13、上元素之和#includeint main(void) int a33,i,j,sum=0; printf(输入3行3列数组:n); for(i=0;i3;i+) for(j=0;j3;j+) scanf(%d,&aij); for(i=0;i3;i+) sum+=aii; printf(主对角线上元素只和为:%dn,sum); return 0;【6.11】不调用库函数strcpy,将以下数组s1的字符串复制到数组s2中,并输出s2的字符串Char s180,s280;Gets s1;#includeint main(void) int i=0; char s180,s280; printf

14、(输入一个字符串:); gets(s1); while(s1i!=0) s2i=s1i; i+; s2i=0; printf(复制的字符串为:); puts(s2); return 0;【6.14】输出数组s中字符串的子串,子串从sbegin开始长度为lenChar s80;Int begin ,len;Gets(s);Scanf(“%d%d, &begin, &len);【6.14】#includeint main(void) int i,begin,len; char s80; printf(输入一个字符串:); gets(s); printf(输入子串的开始位置及长度:); scanf(

15、%d%d,&begin,&len); for(i=begin;ibegin+len;i+) printf(%c,si); printf(n); return 0;nf(“%d%d, &begin, &len);【7.3】编4个程序,分别用4种方法引用数组元素,输入10 个整数,按升序排序,输出排序结果#includeint main(void) int a10,*p,t,i,j; printf(输入10个整数:n); for(p=a;pa+10;p+) scanf(%d,p); for(i=0;i10;i+) p=a+i; for(j=i+1;j*(a+j) p=a+j; t=*p; *p=*

16、(a+i); *(a+i)=t; for(p=a;pa+10;p+) printf(%5d,*p); printf(n); return 0;【7.5】不调用库函数strcpy,将p指向的字符串复制到数组s中,并输出数组s中的字符串。Char s10,*p=”Chinese”;#includeint main(void) char s10,*p=Chinese; int i=0; while(*(p+i)!=0) si=*(p+i); i+; si=0; puts(s); return 0;【8.9】一只函数头为”int getgcd(int m,int n)”,函数 getgcd的功能:返回

17、形参m、n的最大公约数。编写并调用函数getgcd.#includeint getgcd(int m,int n);int main(void) int a,b,c; printf(input 2 positive integers:); scanf(%d%d,&a,&b); c=getgcd(a,b); printf(%dn,c); return 0;int getgcd(int m,int n) int gcd; if(mn) gcd=n; else gcd=m; while(m%gcd|n%gcd) gcd-; return gcd;【8.10】已知函数头为“int prime(int

18、n)”,函数prime的功能:如果n是质数,返回1;否则返回0.编写并调用函数prime输出100以内的所有质数,每行输出5个质数#include#includeint prime(int n);int main(void) int a,b,c=0; for(a=1;a=100;a+) b=prime(a); if(1=b) c+; printf(%3d,a); if(c%5=0) printf(n); return 0;int prime(int n) int i,m,flag=1; m=(int)(sqrt(n)+1); for(i=2;im;i+) if(n%i=0) flag=0; r

19、eturn flag;【8.12】已知函数头为“int avg(int n,int)”,函数avg的功能:去掉长度为n的一维数组t中的最大值和最小值,计算并返回平均值,编写并调用函数avg#includeint avg(int n,int t);int main(void) int a80,i; printf(input 10 numbersn); for(i=0;i10;i+) scanf(%d,&ai); printf(avg=%dn,avg(10,a); return 0;int avg(int n,int t) int j,sum=0,max,min; max=t0; min=max;

20、 for(j=0;jn;j+) if(maxtj) min=tj; sum+=tj; return (sum-max-min)/(n-2);【8.15】已知函数头为“int getmin(int n,inr3)”,函数getmin的功能:计算并返回行数为n列数为3的二维数组t中的最小值。编写并调用函数getmin.#includeint getmin(int n,int r3);int main(void) int a23,i,j; printf(输入两行三列个正整数n); for(i=0;i2;i+) for(j=0;j3;j+) scanf(%d,&aij); printf(min=%dn,getmin(2,a); return 0;int getmin(int n,int r3) int i,j,min; min=r00; for(i=0;in;i+) for(j=0;jrij) min=rij; return min;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1