




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C语言操作题常考编程题库C语言编程题覆盖到的算法:1、个人所得税计算;2、求一组数的正、负数(或奇、偶数)的个数 和平均值;3、二维数组主、次对角线之和;4、求素数(用函数实现);5、级数有限项求和问题;6、两个一维数组相加(用函数实现);7、求最大、最小值;8判断闰年(用函数实现);9、求水仙花数;10、百钱百鸡;11、求最大公约数、最小公倍数。12、求回文数;13、排序;14、二维数组的转置;15、递归函数求阶乘;16、求斐波那契数列;17、求和:a+aa+aaa+aaaa+.;18、求符合条件的整数(如:是某个二位数的平 方,个位、十位、百位数各不相同等);(包括素 数,回文,完数,等等
2、)19、字符串加密;20、统计字符串中字母和数字的个数;/*1.个人所得税计算,以实验指导P24T5为标准*/#in cludevoid mai n()int i,n;double a,b,c;n=i/400;prin tf(please in put in come: n);sca nf(%d,&i);a=(i-800)*0.05,b=20+(i-1200)*0.08,c=84+(i-2000)*0.2;switch( n)case 0:case 1:pri ntf(不需缴税n);break;case 2:pri ntf(需交纳 %lf 兀n,a);break;case 3:case 4:p
3、ri ntf(需交纳 %lf 兀n,b);break;default:pri ntf(需交纳 %lf元n,c);break;/*2.求一组数的奇数个数,偶数个数和平均值 #in clude#defi ne N 10void mai n()int aN;int i,m=0, n=0,sum=0;double average;prin tf(please in put 10 nu mbers:n);for(i=O;iN;i+)sca nf(%d, &ai);if(ai%2=0)m+;elsen+;sum+=ai;average=(double)sum/N;prin tf(wehave %d odd
4、s and %deve nsn, n,m);prin tf(average=%lfn,average);*/*2.求一组数的正数个数和负数个数与平均值*/#in clude#defi ne N 10void mai n()int aN;int i,m=0, n=0,sum=0;double average;prin tf(please in put 10 nu mbers: n);for(i=O;i0)m+;elsen+;sum+=ai;average=(double)sum/N;prin tf(wehave %dpositive n umbers and %dn agetive nu mbe
5、rsn,m, n);prin tf(the average =%lf,average);/*3.求二维数组的主次对角线之和*/#in clude #defi ne M 5#defi ne N 5void mai n()int aMN;int i,j,sum1=0,sum2=0;prin tf(please in put the matrix:n);for(i=0;iM;i+)for(j=0;jN;j+)sca nf(%d,&aij);for(i=0,j=0;iM;i+,j+)sum1+=aij;for(i=0,j=N-1;iM;i+,j-)sum2+=aij;printf(主对角线和为 dn,
6、sum1);printf(次对角线和为 %dn,sum2);/*4.调用函数判断素数*/#in clude#in cludeint isPrime(i nt n)int i;for(i=1;isqrt (n );i+)if(n %i=0)return 0;return 1;void mai n()int n,i;prin tf(please in put a n umber n);sea nf(%d,&n);i=isPrime( n);if(i)prin tf(%d is a primen, n);elseprin tf(%d is n ot a primen, n);5.级数有限项求和(以格
7、里高利公式求n为例)#in clude#in cludevoid mai n()int n=1;double p=O,t,pi;t=1/(pow(-1),( n+1)*2*( n-1);while(fabs(t)=1e-6)pi+=t;n+;pi=4*p;prin tf(%lf,pi);arrayarray6.两个一维数组相加/*# in clude #defi ne N 5void mai n()int aN,bN,cN;int i;prin tf(pleasein putthe firstaN:n);for(i=0;iN;i+)sca nf(%d, &ai);prin tf(please
8、in put the sec ondbN:n);for(i=0;iN;i+)scanf(%d,&bi);for(i=0;iN;i+)ci=ai+bi;prin tf(the sum is: n);for(i=0;iN;i+)prin tf(%dt,ci);*/6.1调用函数实现/#in clude#defi ne N 5 int f(i nt a,i nt b)int sum;sum=a+b;return sum;void mai n()int aN,bN,cN;int i;prin tf(pleasein put the firstaN:n);for(i=0;iN;i+)sca nf(%d,
9、 &ai);prin tf(pleasein putthe sec ondbN:n);arrayarrayfor(i=0;iN;i+)sea nf(%d,&bi);for(i=0;iN;i+)ei=f(ai,bi);prin tf(the sum is:n);for(i=0;iN;i+) printf(%dt,ci);/*7.求一组数的最大最小值*/*# in clude void mai n()int i,max,mi n;int a10;prin tf(please in put ten n umbers n); for(i=0;i10;i+)sca nf(%d, &ai);max=a0;
10、min=a0;for(i=1;imax)max=ai;if(aimi n)min=ai;prin tf(max is %d,min is %dn,max,mi n);*/*随机数*/#in clude#in cludevoid mai n()int i,max,mi n;int a10;for (i=0;i10;i+)ai=ra nd()%90+10;prin tf(%dt,ai);max=aO;min=a0;for(i=1;imax)max=ai;if(aimi n)min=ai;prin tf(max=%dtmi n=%dn,max,mi n);/*8.判断闰年*/#in clude in
11、t f(i nt n) if(n %4=0&n %100!=0| n%400=0) return 1;elsereturn 0;void mai n()int n;prin tf(please in put year: n);sca nf(%d,&n);if(f(n)printf(%d 是闰年 n,n);elseprintf(%d 不是闰年 n,n);/*可能会有要输出某一范围内所有闰年,思想一样,用循环调用函数即可*/*9.判断水仙花数(运用循环)#in cludevoid mai n()int n,a,b,c,m;prin tf(please in put a n umber: n);sc
12、a nf(%d,&n);a=n/100;b=n/10%10;c=n%10;m=a*a*a+b*b*b+c*c*c;if(m=n)printf(%d is the number we wantn,n);elseprin tf(%d is not the n umber n, n);*/(书P108为/*9.输出所有水仙花数(调用函数 循环做法)*/#in cludeint f(i nt n)int a,b,c,m;a=n/100;b=n/10%10;c=n%10;m=a*a*a+b*b*b+c*c*c;if(m=n)return 1;elsereturn 0;void mai n()inf Lr
13、rfor (耳 OOXOOOT+) 宀f(三=K(II巴)prin爲 d5m=. (関四自出 P15)二=H=inc-udeASs:iohvvoid main。宀inf LjKfor(niAH2i+)for(j=0;jv=33;j+)for(k=3;k=99;k+=3)if(i+j+k=lO0)&( 5*i+3*j+k/3=100)printf(“公鸡宀只,母鸡宀只,小鸡 %d只 n,i,j,k);/*11.求最大公约数和最小公倍数,函数实现*/#in cludeint f(int m,i nt n)int i=1,t; if(mn)t=m;m=n;n=twhile(i=m% n)!=0)m=
14、n;n=i;return n;int g(i nt m,i nt n) int i,j; i=f(m, n);j=m* n/i;return j; void mai n()int m, n,a,b;prin tf(please in put two n umbers:n);sea nf(%d %d,&m,&n);a=f(m, n);b=g(m, n);printf( 最大公约数为%dn,a);printf( 最小公倍数为%dn,b);12.1输出10-2000之间的回文数(循环)/*# in cludevoid mai n()int i,j,k=0,a;n);prin tf(10-2000 之
15、间的回文数有:for(i=10;iv=2000;i+)a=i;j=0;while(a0)j=j*10+a%10;a/=10;if(i=j)prin tf(%dt,i);k+;if(k%5=0)prin tf(n);prin tf(n);*/12.2输出10-2000之间的回文数(函数调用)/*# in cludeint f(i nt n)int i=0;while( n0)i=i*10+n%10;n/=10;return i;void mai n()int n,k;n);prin tf(10-2000之间的回文数有:for(n=10; n=2000; n+)if(n=f(n)prin tf(%
16、dt, n);k+;if(k%5=0)prin tf(n);prin tf(n);*/12.3判断回文数(循环)/*# in cludevoid mai n()int i,a,j=0;prin tf(please input a nu mber:n);scanf(%d,&i);a=i;while(a0)j=j*10+a%10;a/=10;if(j=i)printf(%d是回文数 n,i);elseprintf(%d 不是回文数 n,i);*/12.4判断回文数(函数调用)/#in cludeint f(i nt n)int i=0;while( n0)i=i*10+n%10;n/=10;ret
17、urn i;void mai n()int n;prin tf(please in pit a n umber:n);sea nf(%d,&n);if(n=f(n)printf(%d是回文数 n,n);elseprintf(%d不是回文数 n,n);13.排序/选择法/*# in clude#defi ne N 10void f(i nt a,i nt n)int i,j,k,t;for(i=0;i=n ;i+)k=i;for(j=i+1;j n;j+)if(ajak) k=j;if(k!=i)t=ak;ak=ai;ai=t;void mai n()int aN=8,2,34,5,12,78,
18、4,78,76,9;int i=0;int size=sizeof(a)/sizeof(i nt);for(i=O;iN;i+)prin tf(%4d,ai);prin tf(n);f(a,size);for(i=0;iN;i+)prin tf(%4d,ai);printf (n);/冒泡法/#in clude#defi ne N 5void f(i nt a,i nt n)int i,j;int tfor(i=0;i n-1;i+)for(j=0;j aj+1)t=aj;aj=aj+1; aj+1=t;*/插入法/#in clude#defi ne N 5void f(i nt a,i nt
19、 n)int i,j;int tfor(i=0;i0&aj-1t)aj=aj-1;-j;aj=t;void mai n()int aN=8,2,34,5,12;int i=0;int size=sizeof(a)/sizeof(i nt);for(i=0;iN;i+)prin tf(%4d,ai);prin tf(n);f(a,size);for(i=0;iN;i+)prin tf(%4d,ai);printf (n);/二维数组的转置/#in clude#defi ne N 3#defi ne M 3 void mai n()int aMN,bMN;int i,j;prin tf(pleas
20、e inp ut aMNn);for(i=0;iM;i+)for(j=0;jN;j+)sca nf(%d,&aij);for(i=0;iM;i+)for(j=0;jN;j+)bij=aji;prin tf(bMN=n);for(i=0;iM;i+)for(j=0;jN;j+)prin tf(%4d,bij); prin tf(n);prin tf(n);15.调用递归函数求阶乘II#in cludeint f(i nt n)if(n=1| n=0) return 1;elsereturn f(n-1)*n;void mai n()int n,m;prin tf(please in put a
21、n umber: n);sca nf(%d,&n);m=f( n);prin tf(%d!=%dn, n,m);/*16.运用递归函数求斐波拉契数列(前 30项)*/#in cludeint f(i nt n)if (n=1| n=2)return 1;elsereturn f(n-1)+f( n-2);void mai n()int i,k=0;for (i=1;iv=30;i+)prin tf(%dt,f(i);k+;if(k%5=0)prin tf(n);prin tf(n);17.求 a+aa+aaa+aaaa/*# in clude#in clude#defi ne N 5void mai n()int n ,i,j,k,a,sum1=0;prin tf(please in put a n umber: n);sca nf(%d,&n);for(i=1;i=N;i+)k=fabs(10,i-1);j=n+n *(i-1)*k;sum1+=j;prin tf(sum=%dn,sum1);*/#in clude#defi ne N 5int k(i nt a,i nt sum)sum=sum*10
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 购房合同补充协议范本
- 财务管理系统实施合同
- 农业订单合同样本
- 材料供应合同书样本
- 度室内装饰壁画合同:手绘墙画服务协议
- 农业灌溉合同转让协议
- 农业机械租赁合同(范本7)
- 期货市场算法交易策略定制服务考核试卷
- 家禽饲养业产品质量安全追溯体系构建考核试卷
- 工业控制计算机在印刷机械控制中的实践考核试卷
- Unit1 My day 单元作业设计(素材)人教PEP版英语五年级下册
- 赢的思考与态度课件
- 2024年2月国考海关面试题目及参考答案
- TZSA 158-2023 双引擎分布式视频处理器技术规范
- 2型糖尿病科普讲座课件
- 术中物品清点不清时应急预案及流程课件
- 第1课《生存的家园》课件
- 选矿厂三级安全教育课件
- 《座社交恐惧症》课件
- 豆角绿色防控技术方案
- 颅脑创伤后颅内压变化规律分析
评论
0/150
提交评论