长沙理工大学2018年上期期末c语言编程地的题目库_第1页
长沙理工大学2018年上期期末c语言编程地的题目库_第2页
长沙理工大学2018年上期期末c语言编程地的题目库_第3页
长沙理工大学2018年上期期末c语言编程地的题目库_第4页
长沙理工大学2018年上期期末c语言编程地的题目库_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

1、实用标准文案C算机编程题题目标题:四位反序数(卜胜贤)题目描述:设N是一个四位数,它的n倍恰好是其反序数(例如:123的反序数是321 ),编程,输出一个满足条件的N。(知识点:控制语句)输入描述:输入为一个整形数n (2<=n<=9)输出描述描述:输出为一个四位数的整形数样式输入:9样式输出:1089#in clude<stdio.h>#i ncludevstri ng.h>int mai n()int n;intg5s,b,q,i;scan f(n%dH,&n);for(i=1000;i<10000;i+)q=i/1000;b=i/100%10;

2、s=i/10%10;g=i%10;if(i* n=q+b*10+s*100+g*1000) prin tf("%dn,i);return 0;题目标题:年龄分组(卜胜贤)题目描述:统计各年龄段的人数。N (N=20)个年龄通过键盘输入,并放在age数组中;要求函数把0至9岁年龄段的人数放在d0中,把10至19岁年龄段 的人数放在d中,把20至29岁年龄段的人数放在d2中,其余依此类推,把100 岁(含100)以上年龄的人数都放在d10中。依次输出d0至d10o输入描述:输入为20个正整数;输出描述描述:输出为门个正整数;样式输入1 2 11 12 22 23 33 34 44 45

3、55 56 66 67 68 88 99 100 101102样式输出:222222301 13 #i nclude<stdio.h>int main()in t,age20,d11=0;for(i=0;i<20;i+)scan f("%d",&agei);for(i=0;i<20;i+)swith(agei/10)case O:dO+;break;case 1:d1+;break;case 2:d2+;break;case 3:d3+;break;case 4:d4+;break;case 5:d5+;break;case 6:d6+;br

4、eak;case 7:d7+;break;case 8:d8+;break;case 9:d9+;break; default:d10+;break;for(i=0;i<10;i+)prin tf(”d”,di); prin tf(”d”,d10); return 0;题目标题:求二个整数的最大公约数(杨洁)题目描述:对任意三个整数,求它们的最大公约数输入描述:三个整数a,b,c#in clude<stdio.h>int gcd(i nt n ,i ntm)if(m=O) return n; return gcd(m, n%m);int mai n()int x,y, z;s

5、can f(”d%d%d”,&x,& y, &z); prin tf(”d”,gcd(gcd(x,y),z); return 0;题目标题:发放奖金(杨鼎强)题目描述: 某车间按工人加工零件的数量发放奖金,奖金分为五个等级: 每月加工零件数Nv100者奖金为10元;100v = Nv110者奖金为30元;110< = N<120者奖金为50元;120 v = N v130者奖金为70元;N >130者奖金为80元。请编程,由键盘输入加工零件数量,显示应发奖金数。输入描述:输入10个加工零件数量,数量小于400.输出描述描述:对每一个加工零件个数,输出应

6、发奖金数,每个奖金数之间用空格隔#in clude<stdio.h>int a10;int mai n()int i,k;for(i=0;i<10;i+)sea nf("%dH,&ai);for(i=0;i<10;i+)k=ai/10;if(k<10) ai=10;elseswiteh(k)ease 10:ai=30;break;ease 11:ai=50;break;case 12:ai=70;break; default:ai=80;break;prin tf(”d”,aO);for(i=1 ;i<10;i+)prin tf(n%dH,

7、ai);return 0;五.题目标题:矩阵计算(甘正佳)题目描述:求一个33矩阵对角线元素之和。输入描述:按行输入9个整数。输出描述描述:对角线元素之和#in clude<stdio.h>int mai n()int a33;int i,j;for(i=0;iv3;i+)for(j=0;jv3;j+)sea nf(”d”,&aij);prin tf(n%dn,a00+a1 1 +a22);return 0;题目标题:歌手比赛(甘文)题目描述:青年歌手参加歌曲大奖赛,有10个评委对她的进行打分,试编程求 这位选手的平均得分(去掉一个最高分和一个最低分)。输入描述:10个评委

8、的分数,每个分数是一个浮点数输入数据保证有一个最低分,一个最高分,且最高分,最低分不相同其它是数据与最低、最高均不相同 输出描述描述:输出歌手的得分,保留一位小数所有输出的最后一行不能 有回 车#in clude<stdio.h>int mai n()double a10,max,mi n,sum; int i;for(i=0;i<10;i+)sea nf("%lfH,&ai);sum=min=max=a0;for(i=1 ;iv10;i+)if(max<ai) max=ai;if(mi n> ai) mi n=ai; sum+=ai;prin

9、tf("%lfH,(sum-mi n-max)/8); return 0;七.题目标题:统计(左利芳)题目描述:统计个位数为6的n位数,且能被m整除的共有多少个?输入描述:一个整数n(nv=5),表示该整数的位数,一个整数m (1-9):输出描 述描述:符合条件的数的个数。#in clude<stdio.h>int f(int n)int t=1,i;for(i=1 ;i<=n ;i+)t*=10;return t;int mai n()int n, mJ,co un t=0;scan f(”d%d”,&n,&m);for(i=f(n-1)+6; i

10、<f(n);i+=10)if(i%m=O)coun t+;prin tf(”d”,cou nt);return 0;题目标题:四位数(左利芳)题目描述:计算满足下述条件的四位数的个数:把数字abed重新组成两个新 的两位数:ac及db,如果新组成的两个十位数aodb,且ac必须是偶数且能被n (n为19的整数)整除,db必须是奇数,同时两个新数的十位数字均不为零。输入描述:一个19的整数。输出描述描述:符合条件的数的个数。#in clude<stdio.h>int mai n()int i,j,co unt=0,n;scan f(”d”,&n);for(i=10;i&

11、lt;100;i+=2)for(j=11;j<100;j+=2)if(i>j&&%n=0) coun t+;prin tf(”d”,cou nt); return 0;九.题目标题:产值翻番计算(左利芳)题目描述:假设当年工业产值为100,工业产值的增长率每年为c%,从键盘输 入一个c ( 0<=c<=30),试求工业产值过多少年可实现翻番(即增加一倍)。注:后一年的产值是在前一年的基础上增长c%。输入描述:一个030的实数(增长率)。输出描述描述:实现翻番的年数。样式输入:6样式输出:12#in clude<stdio.h>int mai

12、n ()int coun t=0;double c,t=1;scan f(”lf”,&c);while(t<2)t*=(c/100+1); coun t+;prin tf(”d”,cou nt); return 0;十.题目标题:四位数(左利芳)题目描述:计算满足下述条件的四位数的个数:把数字abed重新组成两个新的两位数:ac及db,如果新组成的两个十位数aodb,且ac必须是偶数且能 被n (n为19的整数)整除,db必须是奇数,同时两个新数的十位数字 均不为 零。输入描述:个19的整数。输出描述描述:符合条件的数的个数题目标题:分数比较(彭纪良)题目描述:请编程实现比较两个

13、分数的大小。(注:进行分数的通分后再比较分 子的大小)输入描述:输入两个分数,格式为分子/分母分子/分母,分子,分母均为整 数。输出描述描述:输出比较后的结果。如果等于,贝U输出分子/分母=分子/分母; 如果小于分子/分母V分子/分母;如果大于,则输出分子/分母 > 分子/分母#in clude<stdio.h>int gcd(i nt xj nt y)int r=x%y;while(r)x=y;y=r;r=x%y;return y;int mai n()int a,b,c,d,t;scan f(”d%d%d%cT,&a,&b,&c,&d);i

14、f(b>d)t=gcd(b,d);elset=gcd(d,b);if(a*d/t>c*b/t)prin tf(”d%d>%d%d”,a,b,c,d);else if(a*d/t=c*b/t)prin tf(n%d%d=%d%dn,a,bJc,d); elseprin tf(”d%dv%d%cT,a,b,c,d);return 0;十二题目标题:求人数(甘文)题目描述:定义一个函数,功能是计算n个学生的成绩中,高于平均成绩的人数,并作为函数值。用主函数来调用它,统计 50个学生成绩中,高于平均 成绩的有多少人?输入描述:输入50个学生的成绩输出描述描述:输出一个整数表示高于平均

15、成绩的人数样式输入:45 46 47 48 4950 4152 53 5455 56 57 58 5960 6162 63 6465 66 67 68 6970 7172 73 7475 76 77 78 7980 8182 83 8485 86 87 88 8990 9192 93 94样式输出:25#in clude<stdio.h>#in clude<math.h>#i ncludevstri ng.h>int aver(i nt a,double sum)int i=O,n=O;for(;i<50;i+) if(ai>sum)n+;return

16、 n;int mai n()int a55,i;double sum=0;for(i=0;iv50;i+)sea nf("%d",&ai); sum+=ai;sum/=50;prin tf(”d”,aver(a,sum); return 0;十三.题目标题:3.2求圆的周长和面积题目描述:从键盘输入圆的半径,求该圆的周长和面积。(注:取3.14)输入描述:一个实数r。输出描述描述:圆的周长和面积。#in clude<stdio.h>#defi ne PI 3.14int mai n()double r,l,s;scan f(”lf”,&r);l=

17、2*PI*r;s=p|*r*r;prin tf(,r=%.2f,l=%.2f,s=%.2f,l,s);return 0;十四.题目标题:3.4确定一个数的位数题目描述:编写程序用来确定一个数的位数。女口:输入:567输出:The number 567 has 3 digits假设输入的数最多不超过四位。输入描述:一个整数n °输出描述描述:按指定格式输出这个数的位数。#in clude<stdio.h>mai n()int n,x,digits=O;scan f(n%dH,&n);x=n;dox=x/10;digits+;while(x);printf(”The

18、numberb %d has %d digits",n,digits);十五题目标题:3.9阶乘累加题目描述:计算1 ! +2 ! +3 ! +n !输入描述:一个整数n (*=10)。输出描述描述:1到n的阶乘累加之和样式输入:5样式输出:s=153#in clude<stdio.h>mai n()int n ,i,s,sum;scan f(”d”,&n);long s=15sum=0;for(i=1 ;iv=n ;i+)sum+=s;prin tf(,s=%lld,sum);return 0;十六计算e的近似值利用泰勒级数e=1+1/1 !+1/2!+伽!,计

19、算e的近似值。精度要求最后一项的绝对值小于f (如:f=1e-5 )。#in clude<stdio.h>#in clude<math.h>double fac(i nt n)if(n=1)return 1;else return n *fac(mai n()int i=1;double e=1.0,t,f; scan f(”le”,&f);for(t=1 O;t>f;i+)t=1.0/fac(i);e+=t;prin tf(Me=%.6lf,e);return 0;十七.题目标题:3.12求水仙花数题目描述:打印n (三位的整数)以内的所有水仙花数。所谓

20、水仙花数是指一个三位的整数,其各位数字的立方和等于该数本身。例如:153是水仙花数,因为153=1a3+5a3+3a3。输入描述:一个整数n。输出描述描述:符合条件的水仙花数。#in clude<stdio.h> mai n()int i,x,y, z,a;sean f(”d”,&a);for(i=100;i<=a;i+)x=i/100;y=i/10%10;z=i%10;if(i=x*x*x+y*y*y+z*z*z);prin tf(,%dn,i);return 0;题目标题:3.17百马百担问题题目描述:百马百担问题:有匹马,驮n2担货,大马驮3担,中马驮2担,两匹小马驮1担,问有多少种驮法?注意:每种马至少有1匹.输入描述:两个整数"(马匹数)和n2 (担货数)。输出描述描述:驮法数。#in clude<stdio.h>mai n()int d,z,x;int sum,n2;scanf(M%d %dM,&n 1,&n 2);for(d=1 ;d<=n 1 ;d+)for(z=1 ;z<=n 1d;z+)x=n 1-d-z; if(3*d+2*z+0.5*z)=n2); sum+;prin tf(n%dM,sum);return 0;题目标题:函数求解1/n的累乘(

温馨提示

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

评论

0/150

提交评论