有关C语言常考题的编程.doc_第1页
有关C语言常考题的编程.doc_第2页
有关C语言常考题的编程.doc_第3页
有关C语言常考题的编程.doc_第4页
有关C语言常考题的编程.doc_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

1:求输入分数,输出等级.如:输入97 ,输出A?#includeint main()int t,s;scanf(%d,&s);if(s60)t=5;elset=s/10;switch(t)case 10:case 9:printf(An);break;case 8:printf(Bn);break;case 7:printf(Cn);break;case 6:printf(Dn);break;case 5:printf(En);break;default: printf(enter datd error!n);return 0;2:求2+3/2+5/3+8/5+13/8+.?(20个相加)#includeint main()int j=1;float s=2.0,sum=0.0,i=2.0,t=1.0,n;while(j=20)j+;sum=sum+s;n=i; i=n+t;t=n;s=i/t;printf(%fn,sum);return 0;3:求a+aa+aaa+(n个a)的值?#includeint main()int t,a,n,sum=0;scanf(%d%d,&a,&n);t=a;while(n!=0)sum=sum+t;t=t*10+a;-n;printf(sum is%ldn,sum);return 0;4:求一元二次方程的根?#include#includeint main()double a,b,c,disc,x1,x2,p,q;scanf(a=%lfb=%lfc=%lf,&a,&b,&c);disc=b*b-4*a*c;p=-b/(2.0*a);q=sqrt(disc)/(2.0*a);x1=p+q;x2=p-q;printf(x1=%7.2fnx2=%7.2fn,x1,x2);return 0; 5:找100到200之间的素数?#include#includeint main()int i,j,k,m=0;for(i=100;i=200;i+)k=sqrt(i);for(j=2;j=k+1)m+;printf(%5d,i);if(m%10=0)printf(n);return 0;6:求100到999的水仙花(例如(153=1的3次方+5的3次方+1的3次方即(151=13+53+13)?#include#includeint main()int n,a,b,c;for(n=100;n=999;n+)a=n/100;b=n%100/10;c=n%10;if(n=a*a*a+b*b*b+c*c*c)printf(%d=%d3+%d3+%d3n,n,a,b,c);printf(n); return 0;7:求输入任意十个整数,输出由小到大的十个整数?#includeint main()int a10;int i,j,t;printf(please enter 10 numbles:n);for(i=0;i=9;i+)scanf(%d,&ai);for(j=0;j9;j+)for(i=0;iai+1)t=ai;ai=ai+1;ai+1=t;printf(please the sorted numbers:n);for(i=0;i=9;i+)printf(%4d,ai);printf(n);return 0;8:将一个二维的行列互换,存到另一个二维数组中?#includeint main()int a23=1,2,3,4,5,6;int b32,i,j;printf(array a:n);for(i=0;i=1;i+)for(j=0;j=2;j+)printf(%5d,aij);bji=aij;printf(n);printf(array b:n);for(i=0;i=2;i+)for(j=0;j=1;j+)printf(%5d,bij);printf(n);return 0;9:求一个矩阵的最大值元素,以及其所在的行号与列号?#includeint main()int i,j,row=0,colum=0,max;int a34=1,2,3,4,9,8,7,6,-10,10,-5,2;max=a00;for(i=0;i=2;i+)for(j=0;jmax)max=aij;row=i;colum=j;printf(max=%dnrow=%dncolum=%dn,max,row,colum);return 0;10:输出一个已知字符串?#includeint main()char c10=i, ,a,m, ,h,a,p,p,y;int i;for(i=0;i=9;i+)printf(%c,ci);printf(n);return 0;11:输出一个菱形图?#includeint main()char c66= , ,*, , , ,*, ,*, ,*, , , ,*, ,*, ,*, , , ,*, , ;int i,j;for(i=0;i=4;i+)for(j=0;j=4;j+)printf(%c,cij); printf(n); printf(n);return 0;12:Strcat函数的使用?#include#includeint main()char str120,str220;gets(str1);gets(str2);printf(%sn,strcat(str1,str2); printf(n);return 0;13:Strcpy函数的使用?#include#includeint main()char str120,str210;gets(str2);printf(%sn,strcpy(str1,str2); printf(n);return 0;14:Strcmp函数的使用?#include#includeint main()char str120,str220;gets(str1);gets(str2);if(strcmp(str1,str2)0)printf(ye); printf(n);return 0;15:Strlen函数的使用?#include#includeint main()char str120,str220;gets(str1);gets(str2);printf(%dn%d,strlen(str1),strlen(str2); printf(n);return 0;16:Strlwr与strupr函数的使用?#include#includeint main()char str120,str220;gets(str1);gets(str2);printf(%sn%s,strlwr(str1),strupr(str2); printf(n);return 0;17:属于一行字符,统计其中有多少个单词,单词之间用空格分阁开?#includeint main()char c130;int i,num=0,word=0;gets(c1);for(i=0;c1i!=0;i+)if(c1i= )word=0;else if(word=0)word=1; num+;printf(There are %d words in this line.n,num);return 0;18:有三个字符串,要求找出其中的最大者?#include#includeint main()char str130,str230,str330,str440;gets(str1);gets(str2);gets(str3);if(strcmp(str1,str2)0)strcpy(str4,str1);elsestrcpy(str4,str2);if(strcmp(str3,str4)0)strcpy(str4,str3);printf(nthe largest str4 is:n%sn,str4);return 0;19将一个数组中值按逆序重新输出,例如:8 6 5 4 1输出1 4 5 6 8#includeint main()int a5,i;for(i=0;i=0;i-)printf(%4d,ai);printf(n);return 0;20输出以下的杨辉三角形(要求输出10行)?#includeint main()int i,j,a1010;printf( 杨辉三角形n);for(i=0;i=9;i+)for(j=0;j=i;j+)if(j=0|i=1|i=j)aij=1;elseaij=ai-1j+ai-1j-1;printf(%4d,aij);printf(n);printf(n);return 0;21:编写一个程序。将两个字符串连接起来,不要用strcat函数?函数:1:用函数实现函数调用;#includeint main()void print_star();void print_message(); print_star(); print_message(); print_star();return 0;void print_star()printf(*n);void print_message() printf(How do you do!n);2:求两个数中的最大值?#includeint max(int x,int y);int main()int c,a,b;scanf(%d%d,&a,&b);c=max(a,b);printf(max is %dn,c);return 0;int max(int x,int y)return (xy?x:y);3:求两个数的和?#includeint main()int add(int x,int y);int a,b,c;scanf(%d%d,&a,&b);c=add(a,b);printf(sum is %dn,c);return 0;int add(int x,int y)return (x+y);4求输入四个数,要求输出四个数中的最大值?#includeint main()int max1(int a,int b,int c,int d);int a,b,c,d,max;printf(please enter 4 numbers:);scanf(%d%d%d%d,&a,&b,&c,&d);max=max1(a,b,c,d);printf(max=%dn,max);return 0;int max1(int a,int b,int c,int d)int max2(int a,int b);int m;m=max2(a,b);m=max2(m,c);m=max2(m,d);return (m);int max2(int a,int b)return (ab?a:b);5:输入三个数,要求输出齐最大值,且只用一个函数的调用?#includeint main()int max(int a,int b);int a,b,c,max1;scanf(%d%d%d,&a,&b,&c);max1=max(c,max(a,b);printf(max is %dn,max1);return 0;int max(int a,int b)return(ab?a:b);函数的递归调用6:有五个学生坐在一起,问第五个同学多大,他说比第四个大2岁;问第四个同学多大,他说比第三个同学大2岁;。;第一同学说自己10岁,问第五个同学多大?int age(int n)int c;if(n=1)c=10;elsec=age(n-1)+2;return(c);#includeint main()int age(int n);printf(no.5,age: %dn,age(5);return 0;7:求输入某个数的阶乘?#includeint main()int fac(int n);int n,y;printf(input an integer number:);scanf(%d,&n);y=fac(n);printf(%d!=%dn,n,y);return 0;int fac(int n)int f;if(n0)printf(n0,data error!);else if(n=0|n=1)f=1;elsef=fac(n-1)*n;return(f);8:输入10个数,要求输出其中的最大值元素,和该元素在第几个数?#includein

温馨提示

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

评论

0/150

提交评论