1、C语言刷题统计总集第1题 (35.0分) /*-【程序设计】-功能:在键盘上输入一个3行3列矩阵的各个元素的值(值 为整数),然后输出主对角线元素的积,并在fun() 函数中输出。-*/#include void wwjt(); main() int i,j,s,a33; for(i=0;i3;i+) for(j=0;j3;j+) scanf(%d,&aij); s=fun(a); printf(Sum=%dn,s); int fun(int a33) /*Program*/ int sum;int i;sum=0;for(i=0;i3;i+) sum=sum+aii*aii; return
2、sum;/* End */ 第2题 (35.0分) /*-【程序设计】-功能:求小于lim的所有素数并放在aa数组中,该函数返回 所求出素数的个数。 -*/#include#include#define MAX 100void wwjt(); int fun(int lim,int aaMAX) /*Program*/ int n=0; int i,j; for(i=2;i=lim;i+) for(j=2;ji;j+) if(i%j=0) break; if(j=i) aan+=i; return n;/* End */main() int limit,i,sum; int aaMAX; pr
3、intf(Please input ainteger:); scanf(%d,&limit); sum=fun(limit,aa); for(i=0;isum;i+) if(i%10=0&i!=0) printf(n); printf(%5d,aai); 第3题 (35.0分) /*-【程序设计】-题目:输入华氏温度求摄氏温度。转换公式为 c=5/9(f-32), 输出结果取两位小数。-*/#include void wwjt(); double fun(double m) /*Program*/ float n; n=(5.0/9.0)*(m-32); return n; /* End */
4、 void main() double c,f; printf(请输入一个华氏温度:); scanf(%f,&f); c=fun(f); printf(摄氏温度为:%5.2fn,c); 第4题 (35.0分) /*-【程序设计】-功能:找出一批正整数中的最大的偶数。-*/#include void wwjt(); int fun(int a,int n) /*Program*/ int i,amax=-1; for(i=0;iamax) amax=ai; return amax; /* End */ main() int a=1,2,9,24,35,18,k; k=fun(a,6); prin
5、tf(max=%dn,k); 第5题 (35.0分) /*-【程序设计】-功能:编写main程序调用函数fact求解从m个元素选n个元 素的组合数的个数。计算公式是: 组合数m!/(n!.(m-n)!)。要求:m不能小于n,否则 应有容错处理。说明:函数fact(x)的功能是求x!。-*/#include void wwjt(); long fact(int x) long y; int i; y=1; for(i=1;i=x;i+) y=y*i; return y;main() int m,n; long zhsgs; printf(请输入m和n:n); scanf(%d%d,&m,&n);
6、 /*Program*/ while(mn) printf(m和n输入错!请重新输入:n); scanf(%d%d,&m,&n); zhsgs=fact(m)/(fact(n)*fact(m-n); /* End */ printf(从%d个元素选%d个元素的组合数的个数是:%dn,m,n,zhsgs); 第6题 (35.0分) /*-【程序设计】-功能:求一个四位数的各位数字的立方和。-*/#include void wwjt(); int fun(int n) /*Program*/ int d,s=0; while (n0) d=n%10; s+=d*d*d; n/=10; return
7、 s; /* End */ main() int k; k=fun(1234); printf(k=%dn,k);第7题 (35.0分) /*-【程序设计】-功能:在键盘上输入一个3行3列矩阵的各个元素的值(值 为整数),然后输出主对角线元素的平方和,并在 fun()函数中输出。-*/#include void wwjt(); main() int i,j,s,a33; for(i=0;i3;i+) for(j=0;j3;j+) scanf(%d,&aij); s=fun(a); printf(Sum=%dn,s); wwjt();int fun(int a33) /*Program*/ in
8、t sum;int i;sum=0;for(i=0;i3;i+) sum=sum+aii*aii; return sum; /* End */ 第8题 (35.0分) /*-【程序设计】-功能:计算n门课程的平均值,计算结果作为函数值返回。例如:若有5门课程的成绩是:92,76,69,58,88, 则函数的值为76.600000。-*#include void wwjt(); float fun(int a,int n) /*Program*/ int i; float y=0; for(i=0;in;i+) y+=ai; y=y/n; return y; /* End */ main() i
9、nt a=92,76,69,58,88; printf(y=%fn,fun(a,5);第9题 (35.0分) /*-【程序设计】-功能:根据整型形参m,计算如下公式的值:y=sin(m)*10。例如:若m=9,则应输出:4.121185-*/#include #includemath.hvoid wwjt(); double fun(int m) /*Program*/ double y=0; y=sin(m)*10; return(y); /* End */main() int n; printf(Enter n: ); scanf(%d, &n); printf(nThe result i
10、s %1fn, fun(n); 第10题 (35.0分) /*-【程序设计】-功能:求一批数中最大值和最小值的差。-*/#define N 30#include stdlib.h#include void wwjt(); int max_min(int a,int n) /*Program*/ int i,max,min; max=min=a0; for(i=1;imax) max=ai; else if(aimin) min=ai; return(max-min);/* End */main() int aN,i,k; for(i=0;iN;i+) ai=random(51)+10; for
11、(i=0;iN;i+) printf(%5d,ai); if(i+1)%5=0) printf(n); k=max_min(a,N); printf(the result is:%dn,k); 第11题 (35.0分) 题号:354/*-【程序设计】-功能:判断一个整数w的各位数字平方之和能否被5整除, 可以被5整除则返回1,否则返回0。-*/#include #includeconio.hvoid wwjt(); int fun(int w) /*Program*/ int k,s=0; do s=s+(w%10)*(w%10); w=w/10; while(w!=0); if(s%5=0)
12、k=1; else k=0; return(k); /* End */ main() int m; printf(Enter m: ); scanf(%d, &m); printf(nThe result is %dn, fun(m);第12题 (35.0分) 题号:354/*-【程序设计】-功能:对某一正数的值保留2位小数,并对第三位进行四舍 五入。-*/#include #includeconio.hvoid wwjt(); double fun(float h) /*Program*/ int i;i=(int)(h*1000)%10;if(i=5)return(int)(h*100+1
13、)/100.0;elsereturn(int)(h*100)/100.0; /* End */ main() float m; printf(Enter m: ); scanf(%f, &m); printf(nThe result is %8.2fn, fun(m); 第13题 (35.0分) 题号:354/*-【程序设计】-功能:统计出若干个学生的平均成绩,最高分以及得最高 分的人数。例如:输入10名学生的成绩分别为92,87,68,56,92, 84,67,75,92,66,则输出平均成绩为77.9, 最高分为92,得最高分的人数为3人。-*/#include void wwjt();
14、float Max=0;int J=0;float fun(float array,int n) /*Program*/ int i;float sum=0,ave; Max=array0;for(i=0;in;i+) if(Maxarray i) Max=array i; sum=sum+array i; ave=sum/n; for(i=0;in;i+) if(array i=Max) J+;return(ave); /* End */ main( ) float a10,ave; int i=0; for(i=0;i10;i+) scanf(%f,&ai); ave=fun(a,10);
15、 printf(ave=%fn,ave); printf(max=%fn,Max); printf(Total:%dn,J); 第35题 (10.0分) 题号:354/*-【程序设计】-功能:找出一批正整数中的最大的偶数。-*/#include void wwjt(); int fun(int a,int n) /*Program*/ int i,amax=-1; for(i=0;iamax) amax=ai; return amax; /* End */ main() int a=1,2,9,24,35,18,k; k=fun(a,6); printf(max=%dn,k); 第15题 (3
16、5.0分) /*-【程序设计】-功能:对长度为8个字符的字符串,将8个字符按降序排列。例如:原来的字符串为CEAedcab,排序后输出为edcbaECA。-*/#include#include#includevoid wwjt(); void fun(char *s,int num) /*Program*/ int i,j; char t; for(i=0;inum;i+) for(j=i+1;jnum;j+) if(sisj) t=si;si=sj;sj=t; /* End */main() char s10; printf(输入8个字符的字符串:); gets(s); fun(s,8);
17、printf(n%s,s); 第16题 (35.0分) 题号:354/*-【程序设计】-功能:编写函数fun对主程序中用户输入的具有10 个数据的数组a按由大到小排序,并在主程序中输出 排序结果。-*/#include void wwjt(); int fun(int array, int n) /*Program*/ int k,j,t; for (k=0;kn-1;k+) for (j=k+1;jn;j+) if (arraykarrayj) t=arrayk; arrayk=arrayj; arrayj=t; /* End */main() int a10,i; printf(请输入数组a中的十个数:n); for (i=0;i10;i+) scanf(%d,&ai); fun(a,10); printf(由大到小的排序结果是:n); for (i=0;i10;i+) printf(%4d,ai); printf(n); 第17题 (35.0分) 题号:354/*-【程序设计】
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1