《C语言经典例题和答案》由会员分享,可在线阅读,更多相关《C语言经典例题和答案(18页珍藏版)》请在人人文库网上搜索。
1、精选文档作业一一、 求一个任意边长的矩形面积。#include void main()int w,h,sum;scanf(%d%d,&w,&h);sum=w*h;printf(area=%dn,sum);二、 求一个任意半径的圆的面积及周长。#define PI 3.14159#include 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 void main()。
2、 int w,y,z,r;w=5;y=4;z=2;r=w*y/z;printf(%5d,r);作业二一、 从键盘上输入三个数,求出其中的最大值,并输出。#include void main()int a,b,c,max;scanf(%d%d%d,&a,&b,&c);max=a;if(max#define PI 3.14159#include 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。
3、y,否则输出:xvoid main()int x,y;scanf(%d,%d,&x,&y);if(xy)printf(xyn);elseprintf(xvoid main()int a,b,c,t;scanf(%d%d%d,&a,&b,&c);if(ab) t=b;b=a;a=t;if(ac)t=a;a=c;c=t;if(bc)t=b;b=c;c=t;printf(%3d%3d%3dn,a,b,c);.二、 求自然数110之和。#include void main()int i,sum;i=1;sum=0;while(ivoid main()int sum1=0,sum2=0,i,x;i=1;。
4、while(imain() 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);.二、。
5、 输入一个整数,将各位数字反转后输出。如:输入365,则输出显示为563。#include 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 void main()int x,i;scanf(%d,&x);for(i=1;i#include void main()int j=0,x,n,i;for(x=100;xn)printf(%5d,x);j+;if(j%5=0)printf(n);二、。
6、 编程输出三角形的99乘法表。#include void main()int i,j;for(i=1;imain() int a,b,m,n,q;scanf(%d%d,&m,&n);a=m; b=n;if(ab) int z;z=a;a=b;b=z;do q=b%a;b=a;a=q;while(q!=0);printf(%dn,b);作业六一、 利用循环语句求 (直到第100项的和)。#include void main() int i,t=1;float s=1,p=0,n=1;for(i=1;ivoid main() int x,y=0,n,i;for(n=1;n#include void。
7、 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 void main(void) int a10,i,j,t;for(i=0;iaj+1) t=aj;aj=aj+1;aj+1=t;for(i=0;ivoid main(void) int i,count=0;float score10,percent;for(i=0;ivoid main()。
8、 int a33,b33,i,j;for(i=0;i#include void main() char a80,k;int i,j;gets(a);for(i=0,j=strlen(a)-1;ivoid 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=a&qi=A&qi#include void main() char a530,b30;int i,j,k;for(i=0;ichar change (char a) int i;for(i=0;ai!=0;i+)if(ai=a&aiin。
9、t sum(int n) int i,pi=1;for(i=1;iint num(int a23, int n,int m) int sum=0,i,j;for(i=0;i#include void main( )int i,sum=0;int per(int);for(i=6;i=k+1)return n;else return 0; /* 8265*/二、求sin300。+sin600+cos300+cos600之和。(自编sin和cos函数)#include #include #define PI 3.14159void main( ) float y,x30,x60;float sin。
10、1(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;dosum=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;dosum=sum+t;i=i+。
11、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 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;ivoid main( )int a5,i,max;void maxave(int w5,int *p,float *q);fl。
12、oat ave=0;for(i=0;iint sort(int w,int n);void main( ) int i,a10,count=0;for(i=0;iav)c+;return c;三、 编写一个函数,求N阶二维矩阵的主和辅对角线元素之和。#include #define N 3void main( ) int aNN,i,j,sum,sun;for(i=0;i#include void main( ) char w20,ch,*b,*e,*s;int i;s=b=w;gets(w);i=strlen(w);e=s+i-1;for(;b#include void main( )cha。
13、r 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 #include 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); 作业十三一、 通过函数统计某字符串中,英文单词。
14、的个数。(参考p69)#include #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列的矩阵并将每个元素都输出,然后调用子函数,分别计算每一行的元素之和,将和直接存放在每行的第一个元。
15、素中,返回主函数之后输出各行元素的和。#include void main()int a34,i,j;void sum(int w4,int n,int m);for(i=0;istruct studentint num;char name8;float score;float average(struct student w,int n)float av=0;int i;for(i=0;imax)max=wi.score;maxi=i;return maxi;void sort(struct student w,int n)int i,j,k;struct student t;for(i=0。
16、;in-1;i+) k=i;for(j=i+1;jn;j+)if(wk.scorewj.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;i5;i+)if(stui.scoreav)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;i5;i+)printf(%d %s %fn,stui.num,stui.name,stui.score);欢迎您的光临,Word文档下载后可修改编辑.双击可删除页眉页脚.谢谢!你的意见是我进步的动力,希望您提出您宝贵的意见!让我们共同学习共同进步!学无止境.更上一层楼。18。