版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、,.皖西学院 2018年 c 语言上机题试卷 1 改错题在屏幕上输入以下图形(每行前没有空格,星号之间也没有空格)*#include void main()int i,j;i=1;/*$ERROR1$*/改为 i=0;while(i5)j=0;while( j0)j=0;while( j5-i)/*$ERROR2$*/改为 while( j=5-i)printf(*);j+;printf(n);i+ ; /*$ERROR3$*/改为 i-;试卷 1 填空题某部门有三位职工,要求输入职工的工资信息,计算每位职工的实发工资和部门实发工资总额( total )说明:,.( 1 ) 描述职工工资信息的
2、数据包括编号(num )、姓名( name )、基本工资( bwage )奖金( bonus )、保险( ins )和实发工资( rwage ) ;( 2 ) 实发工资 = 基本工资 + 奖金保险;( 3 ) 职工编号长度小于 10 位且为整数,姓名不包括空格。#include #define N 3struct employeelong num;charname15;long bwage,bonus,ins,rwage;void main()sruct employeeNK1$*/int i;long total;total=0;/*$BLANK2$*/printf(Please input
3、 data:n);printf(nnumnamebwagebonusins:n);for(i=0;iN;i+),.scanf(%ld%s, &workeri.num, );scanf(%ld%ld%ld, &workeri.bwage, &workeri.bonus, &workeri.ins);for(i=0;iN;i+)Workeri.rwage=workeri.bonus-workeri.ins;/$BLANK3$*/total=total+workeri.rwage;printf(output:n );printf(nnumnamereal wagen);for
4、(i=0;iN;i+)printf(%-9ld%-14s%-ldn,workeri.num,,workeri.rwage);printf(ntotal wage =%ldn,total);试卷 1 程序题某果农有一车水果,第一天卖掉三分之而后吃了两个,第二天卖掉了剩下的三分之二又吃了两个,第三天到第七天都如此,到第八天一看只剩了五个苹果。求此车共装有多少个苹果(要求用循环实现) 。参考程序 1,.#include void PRINT(int s)FILE *out;printf(s=%dn,s);if(out=fopen(C:24000110RESULT.DAT,w+
5、)!=NULL)fprintf(out,s=%d,s);fclose(out);void main()int i ;s=5;for (i=1;i8;I+)s=(s+2)*3;PRINT(s);试卷 2 改错题计算所有三位正整数中各个数位上数字之和是13 的数的总和。如将139 、 148 、 157 等这样的数求和。#include void main(),.int i,j,s;long sum;sum=1;/*$ERROR1$*/改为 sum=0;for(i=100;i1)/*$ERROR2$*/改为 while(j0)s=s+j/10;/*$ERROR3$*/改为 s=s+j%10;j=j
6、/10;if(s=13)sum+=i;printf(%ldn,sum);试卷 2 填空题从键盘上输入两个正整数,并输入他们的最大公约数。#include int gcd(int m,int n)int r,t;,.if(m0)r=m%n;m=n;n=r;return(_m ) ;/*$BLANK2$*/void main()int m,n,result;printf(Pease input two number:n);scanf(%d%d,&m,&n ) ;/*$BLANK3$*/result=gcd(m,n);printf(result=%dn,result);,.试卷 2 程序题求 100
7、999之间的回文素数之和。说明:( 1 )回文素数是一个素数,且从左向右和从右向左读是相同的,如:101,131,181( 2 )要求使用循环实现。参考程序 1#include void PRINT(long s)FILE *out; printf(s=%ldn,s); if(out=fopen(C:24000110RESULT.DAT,w+)!=NULL)fprintf(out,s=%ld,s);fclose(out);void main()long s=0; int a,b,I,t;for (a=1;a=9;a+) for (b=0;b=9;b+)t=101*a+10*b;,.for (i
8、=2;it/2) s+=t;PRINT(s);参考程序 2#include void PRINT(long s)FILE *out;printf(s=%ldn,s);if(out=fopen(C:24000110RESULT.DAT,w+)!=NULL)fprintf(out,s=%ld,s);fclose(out);void main()long s=0;int a,b,I,t;for (i=100;i1000;i+),.a =i100;b =i10%10;c =i%10;if (a=c)for (t=2;ti/2)s+=I;PRINT(s);试卷 3 改错题把字符串 s 中所有数字字符按以
9、下规律改写:(1 )0,1,2,3,4,5,6,7,8分别改写成1,2,3,4,5,6,7,8,9( 2)9 改成 0( 3 )其他字符保持不变#include #include void main()char s80;int i;getc(s);/*$ERROR1$*/改为 gets (s);,.for(i=0; si!=0; i+)if(si=9)/*$ERROR2$*/改为 if (si= 9 )si=0;else if(si=0 & si=8)si=si+1;printf(%cn,s);/*$ERROR3$*/改为 printf (“ %sn ”,s);试卷 3 填空题定义求 n! 的
10、递归函数f (),并调用函数f ()求 1 !+2 ! +3 ! +4 !+5 !的值。#include long f(int n)if(n=1|n=0)return(1);elsereturn(n*f(_n-1 );/*$BLANK1$*/void main()int i;,.long s;s=_0_ ;/*$BLANK2$*/for(i=1;i=5;i+)s+=f(i);printf(1!+2!+3!+4!+5!=%ldn,_s_);/*$BLANK3$*/试卷 3 程序题计算 10000以内 9 的偶数倍数之和, 即:sum=18+36+54+9990 其中 18,36,549990等分
11、别是 9 的 2,4,6 1110 倍。参考程序 1#include void PRINT(long sum)FILE *out;printf(sum=%ldn,sum);if(out=fopen(C:24000110RESULT.DAT,w+)!=NULL)fprintf(out,sum=%ld,sum);fclose(out);void main()int i ;,.int sum =0;for (i=2;i=1110;i+=2)sum*=9;PRINT(sum);参考程序 2#include void PRINT(long sum)FILE *out;printf(sum=%ldn,su
12、m);if(out=fopen(C:24000110RESULT.DAT,w+)!=NULL)fprintf(out,sum=%ld,sum);fclose(out);void main()int I ;int sum =0;for (i=18;i10000;i+=18)sum+=i ;PRINT(sum);,.参考程序 3#include void PRINT(long sum)FILE *out;printf(sum=%ldn,sum);if(out=fopen(C:24000110RESULT.DAT,w+)!=NULL)fprintf(out,sum=%ld,sum);fclose(o
13、ut);void main()int I ;int sum =0;for (i=1;i10000;i+)if (i%2=0 & i%9=0) sum+=I;PRINT(sum);试卷 4 改错题若有车的车牌号和罚分记录数据,统计罚分达到或超过12 分的车辆总数并输入这些车辆的信息(说明: id 域代表车牌号,score 域代表罚分) 。,.#include struct car char id12;int score;void main()int i,n=0;carc6=A-QQ111,8,/*$ERROR1$*/改为structcarc6= “ A-QQ111” ,8,A-TT222,12,
14、B-WJ333,12,C-LC444,5,F-PC555,6,B-MY666,12;printf(idtscoren);i=0;while(i=12)/*$ERROR2$*/改为 if (ci.score=12)printf(%st%dn,ci.id,ci.score);,.n-;/*$ERROR3$*/改为 n+ ;i+;printf(n=%dn,n);试卷 4 填空题输入所有的“水仙花数”,并输入“水仙花数”的个数。所谓的“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。例如153=1*1*1+5*5*5+3*3*3。#include void main()int i,a,b,c
15、,n;n=_;/*$BLANK1$*/for(i=101;i=999;i+)a=i%10;b=i/10%10;c=_;/*$BLANK2$*/if(a*a*a+b*b*b+c*c*c=i)printf(%6d,i);,._;/*$BLANK3$*/printf(nn=%dn,n);试卷 4 程序题【三色球问题】若一个口袋中放有12 个球,其中有3 个红色的, 3 个白色的和6 个黑色的,从中任取8 个球,求共有多少种不同的颜色搭配。如: 2 个白色球和6 个黑色球; 1 个红色球、 3 个白色球和4 个黑色球;等都是满足条件的颜色搭配。参考程序 1#include void PRINT(int
16、 n)FILE *out;printf(count=%dn,n);if(out=fopen(C:24000110RESULT.DAT,w+)!=NULL)fprintf(out,count=%dp,n);fclose(out);void main(),.int n=0;int a,b,c;for (a=0;a=3;a+)for (b=0;b=3;b+)for (c=0;c=6;c+)if (a+b+c=8)n+;PRINT(n);参考程序 2#include void PRINT(int n)FILE *out;printf(count=%dn,n);if(out=fopen(C:240001
17、10RESULT.DAT,w+)!=NULL)fprintf(out,count=%dp,n);fclose(out);void main()int n=0;,.int a,b,c;for (a=0;a=3;a+)for (b=0;b=3;b+)c=8-a-b;If (c=6) n+;PRINT(n);试卷 5 改错题在屏幕上输入以下图形(数字之间没有空格)。0123456789012345678901234#include void main()char a9=int i,j,k,n=0;for(i=0;i5;i+);,.for(j=0;ji*2+1;j+)k=4-i+j;n=n/10;/*
18、$ERROR1$*/改为: n=n%10;ak=0+n;n+;for(j=0;j9;j+)printf(%c,a+j);/*$ERROR2$*/改为: printf(“ %c ” ,aj);printf(/n);/*$ERROR3$*/改为: printf( “ n ” );试卷 5 填空题输入 100300之间个位数码为3 的全部素数之和。#include void main( )int i,j,s;s=0;/*$BLANK1$*/for(i=101;i300;i+=2)for( j=2;ji/2)&(i%10=3)s+=i;/*$BLANK3$*/printf(s=%dn,s);试卷 5
19、程序题已知数列 F( n )当 n=1 时 F( n ) =5当 n=(F(n-1)+10/F(n-1)/2求该数列第五项即F( 5)的值。说明:( 1 )结果保留五位小数;( 2 )要求使用循环实现。#include void PRINT(double f)FILE *out;printf(F(5)=%.5fn,f);if(out=fopen(C:24000110RESULT.DAT,w+)!=NULL)fprintf(out,F(5)=%.5f,f);fclose(out);,.void main()double f=5;int i ;for (i=2;i=5;i+)f=(f+10/f)/
20、2;PRINT(f);试卷 6 改错题将字符串 str1 和字符串str2合并成一个新字符串str, 然后输出字符串str 。#include #include void main()charstr1100,str230;int i,j;printf(Enter the firstgets(str1);printf(Enter the secondgets(str2);for(i=0;str1i !=0 ;i+);string:);string:);,.j=0;while(str2j != 0)str1i+ = str2j;i+;/*$ERROR1$*/改为: j+ ;str1i = 0;/*
21、$ERROR2$*/改为: strj= 0 ;printf(%cn, str1);/*$ERROR3$*/改为: printf( “ %sn ” ,str);试卷 6 填空题输入 10 个数据,计算并输入其中所有正数的平均值。#include #define N 10void main()double ave=0,aN, *p;int n=0;p=a;/*$BLANK1$*/while(p0)/*$BLANK2$*/,.n+;ave+=*p;p+;if(n0)ave/=n;/*$BLANK3$*/printf(ave=%lfn,ave);else printf(Not exist positi
22、ve number n);试卷 6 程序题求满足下列条件的三位数之和。条件如下:( 1 ) 各位数字只能从 5、6、7、8 中选;( 2 ) 各位数字互不相同。#include void PRINT(long s)FILE *out;printf(s=%ldn,s);,.if(out=fopen(C:24000110RESULT.DAT,w+)!=NULL)fprintf(out,s=%ld,s);fclose(out);void main()long s=0;int a,b,c;for (a=5;a=8;a+)for (b=5;b=8;b+)for (c=5;c=8;c+)if (a!=b
23、&a!=c&c!=b) s+=100*a+10*b+c;PRINT(s);试卷 7 改错题下面程序通过指针操作,输入由二进制数字组成的字符串“”对应的无符号十进制整数。#include void main(),.unsigned int v10,t;v10=1;/*$ERROR1$*/改为:p=v20;/*$ERROR2$*/改为:while(*p!=0)t=*p-0;v10=v10*2+t;p-;/*$ERROR3$*/改为:printf(n%s is convered to integer number: %un,v2,v10);试卷 7 填空题下列程序的功能是计算并输出给定整数n 的所有
24、因子之和 (不包括1 和它自身)。规定 n 的值不大于 1000.#include void main()int n,i,s;printf(Please input n:);scanf(%d,_);/*$BLANK1$*/s_;/*$BLANK2$*/for(i=2; i=n-1; i+),.if(n%i=0)s=s+_;/*$BLANK3$*/printf(s=%dn,s);试卷 7 程序题已知三角形的三条边长分别为a 、 b 和 c,且满足下列条件:( 1 ) 边长为小于等于 100 的正整数;( 2 ) 边长 a 小于 b;(3 )A*a+b*b=c*c。统计满足上述条件的三角形的个数。
25、参考程序 1#include #include void PRINT(int n)FILE *out;printf(n=%dn,n);if(out=fopen(C:24000110RESULT.DAT,w+)!=NULL)fprintf(out,n=%d%d,n);fclose(out);void main(),.int n=0;int a,b,c;for (a=1;a=100;a+)for (b=a+1;b=100;b+)for (c=b+1;c=100;c+)if (a*a+b*b=c*c)n+;PRINT(n);参考程序 2#include #include void PRINT(int
26、 n)FILE *out;printf(n=%dn,n);if(out=fopen(C:24000110RESULT.DAT,w+)!=NULL)fprintf(out,n=%d%d,n);fclose(out);void main(),.int n=0;int a,b,c;for (a=1;a=100;a+)for (b=a+1;b=100;b+)t=a*a+b*b;If (t=(int)sqrt(t)*(int)sqrt(t)& t=10000)N+;PRINT(n);试卷 8 改错题convert函数的功能是: 模拟将长度为16 位的二进制数字字符串转换为有符号的十进制整数。要求主函数通
27、过调用convert函数将两个字符串转换后的结果相加并输出。说明:( 1 )存储字符串的数组长度为17 。( 2 )本程序的运行结果是 n=5 #include #include int convert(char a)int i,v;v=0;,.for(i=0;i16;i+)v = v *2+(ai-0);if(a0=1)/* 对负数的处理 */v=-(65536-v);return v;void main()stringa17,b17; /*$ERROR1$*/改为: char a17,b17;int n;strcpy(b,0000000000000111);n=convert(a0)+co
28、nvert(b0);/*$ERROR2$*/改为: n=convert(a)+convert(b);printf(%sn,n); /*$ERROR3$*/改为: printf(“ %dn ” ,n);试卷 8 填空题输出以下图形*A* 8ABA* 8ABCBA* 8ABCDCBA,.*ABCDEDCBA*ABCDEFEDCBAABCDEFGFEDCBA#include #define N7/*$BLANK1$*/void main()int i,j;for(i=0;iN;i+)for(j=0;j2*(N-1-i);j+)printf(*);for(j=0;j=0;j-)/*$BLANK3$*/
29、printf(%c,j+A);printf(n);试卷 8 程序题计算 22015之间所有完数之和。说明:,.( 1 ) 一个数如恰好等于它的因子 (因子包含 1 但不包括它本身) 之和,这个数就是完数。( 2 ) 如 6 的因子为 1 、2 和 3,因子之和也为 6,所有 6 是完数;( 3 ) 要求使用循环实现。#include void PRINT(long sum)FILE *out;printf(sum=%ldn,sum);if(out=fopen(C:24000110RESULT.DAT,w+)!=NULL)fprintf(out,sum=%ld,sum);fclose(out);
30、void main()long sum=0;int i , j , t ;for (i=2;i=2015;i+)t=1;for (j=2;j=i/2;j+)if (i%j=0)t+=j;if(t=i)sum+=t;,.PRINT(sum);试卷 9 改错题已知数列:第一项和第二项都是1,从第三项开始每项都是其前两项之和。求第n 项( n 从键盘输入,用递归实现)。#include longf(int n)if(n=1| n=2)/*$ERROR1$*/改为: if (n=1 |n=2)return 1;elsereturn f(n-1) - f(n-2);/*$ERROR2$*/改为: ret
31、urn f(n-1)+f(n-2);void main()long m;int n;printf(nPlease input n:n);scanf(%d,n);/*$ERROR3$*/改为: scanf( “%d ” ,&n);if(n0)m=f(n);,.printf(%ldn,m);else printf(Data errorn);试卷 9 填空题以下程序判断输入的字符串是否“回文”(即顺读和倒读都一样,例如:ABCBA, 假设字符串前后没有空格) 。#include#includevoid main()char s100;int left,right,middle,lenth;print
32、f(Please input a string:);gets(s);lenth = strlen(s);left =0BLANK1$*/middle = lenth/2;while(left=middle)right = lenth-1-left;if(sleft _=_ sright)/*$BLANK2$*/,.left+;elsebreak;if(left _=_ middle)/*$BLANK3$*/printf(Non);elseprintf(Yesn);试卷 9 程序题求 s=1+(2*2)+(3*3*3)+(4*4*4*4)+ ( 9*9*9*9*9*9*9*9*9)的值(要求使用循环实现)#include void PRINT(long s)FILE *out;printf(s=%ldn,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年高职大气污染防治管理(管理技术)试题及答案
- 2025年中职(城市绿化管理)绿化维护阶段测试题及答案
- 2025年大学大三(焊接技术与工程)焊接修复技术综合测试题及答案
- 2025年大学纳米材料与技术(纳米材料技巧)试题及答案
- 2026年银耳类食品(胶质检测)试题及答案
- 教学临时用电安全技术课件
- 中国采矿技术
- 养老院老人康复设施维修人员考核奖惩制度
- 青岛新东方国际双语学校项目EPC项目工期履约总结交流
- 养老院工作人员奖惩制度
- 2026年1月福建厦门市集美区后溪镇卫生院补充编外人员招聘16人考试参考试题及答案解析
- 2026年腹腔镜缝合技术培训
- 2026年广西贵港市华盛集团新桥农工商有限责任公司招聘备考题库及一套答案详解
- 地铁安检施工方案(3篇)
- 小学生寒假心理健康安全教育
- 汽机专业安全培训课件
- 2026高考蓝皮书高考关键能力培养与应用1.批判性与创造性思维能力的基础知识
- 多学科团队(MDT)中的医患沟通协同策略
- 期末复习知识点清单新教材统编版道德与法治七年级上册
- 分子对称性和点群
- 物业前台岗位职责6篇
评论
0/150
提交评论