欢迎来到装配图网! | 帮助中心 装配图网zhuangpeitu.com!
装配图网
ImageVerifierCode 换一换
首页 装配图网 > 资源分类 > DOC文档下载
 

最新C语言经典例题和答案

  • 资源ID:130420787       资源大小:253.50KB        全文页数:19页
  • 资源格式: DOC        下载积分:10积分
快捷下载 游客一键下载
会员登录下载
微信登录下载
三方登录下载: 微信开放平台登录 支付宝登录   QQ登录   微博登录  
二维码
微信扫一扫登录
下载资源需要10积分
邮箱/手机:
温馨提示:
用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

最新C语言经典例题和答案

精品资料C语言经典例题和答案.作业一一、 求一个任意边长的矩形面积。#include <stdio.h>void main()int w,h,sum;scanf("%d%d",&w,&h);sum=w*h;printf("area=%dn",sum);二、 求一个任意半径的圆的面积及周长。#define PI 3.14159#include <stdio.h>void main()float r,area,c;scanf("%f",&r);area=PI*r*r;c=2*PI*r;printf("area=%fncircle=%fn",area,c);三、 已知:w=5, y=4, z=2, 求表达式:w*y/z的值,并输出。#include <stdio.h>void main() int w,y,z,r; w=5; y=4; z=2; r=w*y/z; printf("%5d",r);作业二一、 从键盘上输入三个数,求出其中的最大值,并输出。#include <stdio.h>void main()int a,b,c,max;scanf("%d%d%d",&a,&b,&c);max=a;if(max<b) max=b;if(max<c) max=c;printf("max=%dn",max);二、 求sin300。+sin600+cos300+cos600之和。(注意:30*3.14159/180)#include <stdio.h>#define PI 3.14159#include <math.h>void main()float a,b,sum;a=30*PI/180;b=60*PI/180;sum=sin(a)+sin(b)+cos(a)+cos(60);printf("total=%fn",sum);三、 比较两个数的大小。如果x大于y,则输出:x>y,否则输出:x<y。#include <stdio.h>void main()int x,y;scanf("%d,%d",&x,&y);if(x>y) printf("x>yn");else printf("x<yn"); 作业三一、 输入a、b、c三个值,按从小到大排序输出。#include <stdio.h>void main()int a,b,c,t;scanf("%d%d%d",&a,&b,&c); if(a>b) t=b; b=a; a=t; if(a>c) t=a; a=c; c=t; if(b>c) t=b;b=c;c=t; printf("%3d%3d%3dn",a,b,c);.二、 求自然数110之和。#include <stdio.h>void main()int i,sum;i=1;sum=0;while(i<=10)sum=sum+i;i+;printf("sum=%dn",sum);三、 输入10个整数,统计出正数之和以及负数之和。(求奇数之和以及偶数之和)#include <stdio.h>void main()int sum1=0,sum2=0,i,x;i=1;while(i<=10) scanf("%d",&x); if(x%2=0) sum1=sum1+x; else sum2=sum2+x; i+;printf("sum1=%dnsum2=%dn",sum1,sum2);作业四一、 输入一个06的整数,转换成星期输出。#include <stdio.h>main() int a; scanf("%d",&a); switch(a) case 0: printf("Sunday");break; case 1: printf("Monday");break; case 2: printf("Tuesday");break; case 3: printf("Wednesday");break; case 4: printf("Thursday");break; case 5: printf("Friday");break; case 6: printf("saturday");break; default: printf("I am sorry.You are wrong.n");.二、 输入一个整数,将各位数字反转后输出。如:输入365,则输出显示为563。#include <stdio.h>void main()int x,r;scanf("%d",&x);printf("conver is:");while(x!=0) r=x%10; printf("%d",r); x=x/10; printf("n"); 三、 输入一个整数,求出它的所有因子。#include <stdio.h>void main()int x,i;scanf("%d",&x);for(i=1;i<=x;i+)if(x%i=0)printf("%3d",i);作业五一、 求100 200之间的素数。#include <stdio.h>#include <math.h>void main()int j=0,x,n,i;for(x=100;x<=200;x+) n=sqrt(x); for(i=2;i<=n;i+) if(x%i=0)break; if(i>n) printf("%5d",x); j+; if(j%5=0)printf("n");二、 编程输出三角形的9×9乘法表。#include <stdio.h>void main()int i,j;for(i=1;i<10;i+)for(j=1;j<=i;j+)printf("%d*%d=%d ",i,j,i*j);printf("n");三、 求任意二个数的最大公约数。#include <stdio.h>main() int a,b,m,n,q; scanf("%d%d",&m,&n); a=m; b=n; if(a>b) int z; z=a; a=b; b=z; do q=b%a; b=a;a=q; while(q!=0); printf("%dn",b);作业六一、 利用循环语句求 (直到第100项的和)。#include <stdio.h>void main() int i,t=1; float s=1,p=0,n=1; for(i=1;i<=100;i+) p=p+s; n=n+2; t=-t; s=t/n; printf("%fn",p);二、 编写求 S=。#include <stdio.h>void main() int x,y=0,n,i; for(n=1;n<=5;n+) x=1; for(i=1;i<=n;i+) x=x*i; y=y+x; printf("%dn",y);三、 利用公式求 cosx 的近似值(精度为10-6):#include <stdio.h>#include <math.h>void main() float n=1,t=1,pi=0,s=1,x,i=1; scanf("%f",&x); while(fabs(t)>=1e-6) pi+=t; n=n*i*(i+1); s=-s*x*x; i+; t=s/n; printf("%f",pi);作业七一、 用选择法对10个整数排序(由大到小)。#include <stdio.h>void main(void) int a10,i,j,t; for(i=0;i<10;i+) scanf("%d",&ai); for(i=0;i<9;i+) for(j=0;j<9-i;j+) if(aj>aj+1) t=aj; aj=aj+1; aj+1=t; for(i=0;i<10;i+) printf("%6d",ai); printf("n");二、 输入 10个学生的一门课成绩,用一维数组存放其成绩,统计并输出不及格人数及其百分比。#include <stdio.h>void main(void) int i,count=0; float score10,percent; for(i=0;i<10;i+) scanf("%d",&ai); for(i=0;i<10;i+) if(scorei<60) count+; percent=(float)count/10; printf("%d,%5.1f",count,percent); 三、 编程实现N阶方阵转置。#include <stdio.h>void main() int a33,b33,i,j; for(i=0;i<3;i+) for(j=0;j<3;j+) scanf("%d",&aij); for(i=0;i<3;i+) for(j=0;j<3;j+) bji=aij; printf("n"); for(i=0;i<3;i+) for(j=0;j<3;j+) printf("%4d",bij); printf("n"); 作业八一、 把输入的一个字符串按逆序重新排序其字符,并输出。#include <stdio.h>#include <string.h>void main() char a80,k; int i,j; gets(a); for(i=0,j=strlen(a)-1;i<j;i+,j-) k=ai; ai=aj; aj=k; puts(a);二、 从键盘输入一个字符串。要求分别统计出其中英文大写字母、小写字母、数字、空格、以及其它字符的个数#include <stdio.h>void main() int i,a=0,b=0,c=0,d=0,e=0; char q20; gets(q); for(i=0;qi!='0'i+) if(qi>='0'&&qi<='9')a+ ; else if(qi>='a'&&qi<='z')b+; else if(qi>='A'&&qi<='Z')c+; else if(qi=' ')d+; else e+; printf("%3d%4d%3d%3d%3d",a,b,c,d,e); 三、 输入五个英文单词,请找出它们之中按字典排序法排在最前的一个词。 #include <stdio.h>#include <string.h>void main() char a530,b30; int i,j,k; for(i=0;i<5;i+) gets(ai); for(i=0;i<5;i+) k=i;strcpy(b,ai); for(j=i+1;j<5;j+) if(strcmp(aj,b)<0) k=j; strcpy(b,aj); if(k!=i) strcpy(b,ai);strcpy(ai,ak);strcpy(ak,b); puts(ai); printf("n");作业九一、编写一函数,将字符串中的小写字母转换为大写字母,主函数输入字符串并输出结果。#include <stdio.h> char change (char a) int i; for(i=0;ai!='0'i+) if(ai>='a'&&ai<='z') ai=ai-32; void main() char b80; gets(b); change(b); puts(b);二、编写一函数求N!。在主函数中输入N,调用函数求N!,输出结果。#include <stdio.h> int sum(int n) int i,pi=1; for(i=1;i<=n;i+) pi=pi*i; return(pi); void main() int p=0,n; scanf("%d",&n); p=sum(n); printf("%dn",p); 三、编写一个函数,求二维数组所有元素的和,要求二维数组的行、列以及数组通过函数参数传递,并通过主函数调用求2行3列的数组的所有元素之和。#include <stdio.h> int num(int a23, int n,int m) int sum=0,i,j; for(i=0;i<n;i+) for(j=0;j<m;j+) sum=sum+aij; return(sum); void main() int a23,i,j; int p=0,n=2,m=3; for(i=0;i<2;i+) for(j=0;j<3;j+) scanf("%d",&aij); p=num(a,n,m); printf("%d",p); 作业十一、编写程序,通过函数求6 300以内的素数的和。#include <stdio.h>#include <math.h>void main( )int i,sum=0; int per(int); for(i=6;i<=300;i+) sum=sum+per(i); printf("SUM=%dn",sum);int per(int n) int k,i; k=sqrt(n); for(i=2;i<=k;i+) if(n%i=0)break; if(i>=k+1) return n; else return 0; /* 8265*/二、求sin300。+sin600+cos300+cos600之和。(自编sin和cos函数)#include <stdio.h>#include <math.h>#define PI 3.14159void main( ) float y,x30,x60; float sin1(float); float cos1(float); x30=30*PI/180; x60=60*PI/180; y=sin1(x30)+cos1(x30)+sin1(x60)+cos1(x60); printf("SUM=%fn",y);float sin1( float x) float sum=0,t=x; int i=1,f=1; do sum=sum+t; i=i+2; f=-f; t=t*f*x*x/(i*(i-1); while(fabs(t) >1e-6); return sum;float cos1(float x) float sum=0,t=1; int i=0,f=1; do sum=sum+t; i=i+2; f=-f; t=t*f*x*x/(i*(i-1); while(fabs(t)>1e-6); return sum; /*SUM=2.608201*/ 三 、编写函数,求级数S=1+2+3+.n,并在主函数中求:#include <stdio.h>int f(int);void main( ) float s; s=(float)(f(3)+f(4)+f(5)/(f(5)+f(6)+f(7); printf("SUM=%fn",s);int f(int a)int sum=0,i; for(i=1;i<=a;i+) sum=sum+i; return sum;/* SUM=0.484375*/作业十一一、 编写一个函数,求一维数组的平均值、最大值。#include <stdio.h>void main( )int a5,i,max; void maxave(int w5,int *p,float *q); float ave=0; for(i=0;i<5;i+) scanf("%d",&ai); maxave(a,&max,&ave); printf("MAX=%d,AVER=%fn",max,ave);void maxave(int w5,int *p,float *q)int i; *p=w0; for(i=1;i<5;i+) if(*p<wi) *p=wi; for(i=0;i<5;i+) *q=*q+wi; *q=*q/5; 二、 输入10个数,编写一个函数,按降序对其排序,统计其中大于平均值的数的个数。#include <stdio.h>int sort(int w,int n);void main( ) int i,a10,count=0; for(i=0;i<10;i+) scanf("%d",&ai); count=sort(a,10); for(i=0;i<10;i+) printf("%3d",ai); printf("nCOUNT=%dn",count);int sort(int w,int n) int i,j,t,c=0; float av=0; for(i=0;i<n-1;i+) for(j=i+1;j<n;j+) if(wi<wj) t=wi;wi=wj;wj=t; for(i=0;i<n;i+) av=av+wi; av/=10; for(i=0;i<n;i+) if(wi>av) c+; return c; 三、 编写一个函数,求N阶二维矩阵的主和辅对角线元素之和。#include <stdio.h>#define N 3void main( ) int aNN,i,j,sum,sun; for(i=0;i<N;i+) for(j=0;j<N;j+) scanf("%d",&aij); for(i=0;i<N;i+) for(j=0;j<N;j+) printf("%3d",aij); printf("n"); sum=zdj(a,N); sun=fdj(a,N); printf("sum=%d,sun=%dn",sum,sun);int zdj(int cN,int n)int i,s=0; for(i=0;i<n;i+) s+=cii; return s;int fdj(int dN,int n)int i,j,s=0; for(i=0;i<n;i+) for(j=0;j<n;j+) if(i+j=n-1) s+=dij; return s;作业十二一、 用指针的方法,把输入的一个字符串按逆序重新排序其字符,并输出。#include <stdio.h>#include <string.h>void main( ) char w20,ch,*b,*e,*s; int i; s=b=w; gets(w); i=strlen(w); e=s+i-1; for(;b<e;b+,e-) ch=*b; *b=*e; *e=ch; puts(s);二、 用指针的方法,将键盘输入的两个字符串连接起来形成一个新字符串。#include <stdio.h>#include <string.h>void main( )char a30,b20,*p,*q,*s; int i,j; p=s=a; q=b; gets(p); gets(q); i=strlen(p); p=p+i; while(*p+=*q+) ; puts(s);三、 用指针的方法,将键盘上输入的一串数值字符串转换为数值输出。如输入:-132,则输出为:-132。#include <stdio.h>#include <string.h>void main( )char a10,*p; int t=1,n=0; gets(a); p=a; if(*p='-') t=-t; p+; while(*p!='0') n=n*10+(*p-'0'); p+; n=n*t; printf("%dn",n); 作业十三一、 通过函数统计某字符串中,英文单词的个数。(参考p69)#include <stdio.h>#define YES 1#define NO 0void main() int nl,nw,nc,inword; char c; inword=NO; nl=nw=nc=0; while(c=getchar()!='*') +nc; if(c='n')+nl; if(c=' ' | c='t' | c='n')inword=NO; elseif(inword=NO)inword=YES; +nw; nl+; nc+; printf("%dt%dt%dn",nl,nw,nc);二、 在主函数中初始化一个3行4列的矩阵并将每个元素都输出,然后调用子函数,分别计算每一行的元素之和,将和直接存放在每行的第一个元素中,返回主函数之后输出各行元素的和。#include <stdio.h>void main()int a34,i,j; void sum(int w4,int n,int m); for(i=0;i<3;i+) for(j=0;j<4;j+) scanf("%d",&aij); for(i=0;i<3;i+) for(j=0;j<4;j+) printf("%3d",aij); printf("n"); sum(a,3,4); for(i=0;i<3;i+) printf("%3d",ai0); printf("n"); void sum(int w4,int n,int m)int i,j; for(i=0;i<n;i+) for(j=1;j<m;j+) wi0+=wij; 三、 己知有若干个学生的数据(包括学号、姓名和一门课程的成绩)。请编程实现:1 求课程的平均成绩,输出低于平均成绩的同学的学号、姓名及成绩;2 找出学生中的成绩最高者,输出该学生的学号、姓名及成绩;3 按成绩从高到低排序并输出。#include <stdio.h>struct student int num; char name8; float score;float average(struct student w,int n)float av=0; int i; for(i=0;i<n;i+) av=av+wi.score; av=av/n; return av;int mmax(struct student w,int n)int i, maxi=0; float max=w0.score; for(i=0;i<n;i+) if(wi.score>max) max=wi.score; maxi=i; return maxi;void sort(struct student w,int n)int i,j,k; struct student t; for(i=0;i<n-1;i+) k=i; for(j=i+1;j<n;j+) if(wk.score<wj.score)k=j; if(k!=i) t=wi; wi=wk; wk=t; void main()struct student stu5=11,"aa",80,22,"bb",90,33,"cc",70,44,"dd",80,55,"ee",60; int i,maxi;float av; av=average(stu,5); for(i=0;i<5;i+) if(stui.score<av) printf("%d %s %fn",stui.num,stui.name,stui.score); maxi=mmax(stu,5); printf("%d %s %fn",stumaxi.num,stumaxi.name,stumaxi.score); sort(stu,5); for(i=0;i<5;i+) printf("%d %s %fn",stui.num,stui.name,stui.score);光临,Word文档下载后可修改编辑.双击可删除页眉页脚.谢谢!你的意见是我进步的动力,希望您提出您宝贵的意见!让我们共同学习共同进步!学无止境.更上一层楼。

注意事项

本文(最新C语言经典例题和答案)为本站会员(无***)主动上传,装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知装配图网(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!