2011年技能考试试卷C语言(真题)

上传人:灯火****19 文档编号:121893822 上传时间:2020-02-27 格式:DOC 页数:15 大小:84KB
返回 下载 相关 举报
2011年技能考试试卷C语言(真题)_第1页
第1页 / 共15页
2011年技能考试试卷C语言(真题)_第2页
第2页 / 共15页
2011年技能考试试卷C语言(真题)_第3页
第3页 / 共15页
2011年技能考试试卷C语言(真题)_第4页
第4页 / 共15页
2011年技能考试试卷C语言(真题)_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《2011年技能考试试卷C语言(真题)》由会员分享,可在线阅读,更多相关《2011年技能考试试卷C语言(真题)(15页珍藏版)》请在金锄头文库上搜索。

1、第一部分【程序填空】第一套:题目:函数gcd()计算整型数组a中相邻两元素的最大公约数,最小公倍数,其中最大公约数存入数组b中,最小公倍数存入数组c中。-注意:请勿改动主函数main()中的其他内容。-#include #include void gcd(int a,int n,int b,int c) int i,x,y,z;/*SPACE*/ for(i=0;i【?】;i+) x=ai; y=ai+1; while(z=x%y) x=y;y=z; bi=y;/*SPACE*/ ci=ai*ai+1/【?】; int main() int a5=8,12,5,7,14; int b4,c4;

2、 int i; gcd(a,5,b,c); for(i=0;i5;i+) printf(%dt,ai); printf(n); for(i=0;i4;i+) printf(%dt,bi); printf(n); for(i=0;i4;i+) printf(%dt,ci); printf(n); getch(); return 0;第二套题目:函数reverse()对字符串str进行逆序。#include#include#includevoid reverse(char str) int len, j; char c;/*SPACE*/ len = 【?】(str);/*SPACE*/ for

3、(j=len-1; 【?】; j-) c=strj; strj=strlen-1-j; strlen-1-j=c; int main() char a80; printf(Please enter a string: ); gets(a); reverse(a); printf(The inversed string is: ); puts(a); getch(); return 0;第三套题目:对主函数main()中数组a进行处理:如果相邻元素相同则保留一个。例如对数组a处理后,它的前11个元素为-5,7,-4,25,0,2,4,16,8,5,20。#include #include int

4、 main() int a20=-5,-5,7,-4,-4,25,25,0,0,0,2,4,16,16,8,5,5,5,5,20; int i,prev,next; prev=0; next=1; while(next20)/*SPACE*/ if(aprev!=【?】) a+prev=anext; next+; /*SPACE*/ for(i=0;i【?】prev;i+) printf(%d ,ai); printf(n); getch(); return 0;第四套题目:程序输出由03四个数字组成的符合下列条件的4位整数: 1. 每个4位整数中,03四个数字只能出现一次; 2. 百位数不能

5、为3,十位数不能为2。#include #include int main() int g,s,b,q; int num=0; for(b=0;b4;b+) if(b=3) continue; for(s=0;s4;s+) if(b=s)|(s=2) continue;/*SPACE*/ for(q=【?】;q4;q+) if(q=b)|(q=s) continue;/*SPACE*/ g=【?】-q-b-s; printf(%dn,q*1000+b*100+s*10+g); num+; printf(%dn,num); getch(); return 0;第五套题目:在一维数组a中找出最大,

6、最小元素,并将最大元素和数组最后一个元素交换,最小元素和数组首元素交换。#include #include int main() int a10=15,8,12,6,10,1,4,5,9,-3; int i,t,max_index,min_index; max_index=min_index=0; for(i=1;iamax_index) max_index=i; if(aiamin_index) min_index=i; t=a0;a0=amin_index;amin_index=t;/*SPACE*/ if(max_index=【?】) t=amin_index;amin_index=a9

7、;a9=t; else/*SPACE*/ 【?】; for(i=0;i10;i+) printf(%dt,ai); printf(n); getch(); return 0;=第二部分【程序改错】第一套题目:主函数main()调用函数change()将二维数组strrow中的字符按列存入一维数组strcol中。下面给定的程序存在错误,请改正。#include #include /*FOUND*/void change(char t5,char s) int i,j; for(j=0;j5;j+) for(i=0;i3;i+)/*FOUND*/ s3*j+i=tji;/*FOUND*/ sj=0

8、;int main() char strrow5=C,r,r, ,s, ,o,a,T,t,P,g,m,e,!; char strcol16; change(strrow,strcol); puts(strcol); getch(); return 0;第二套题目:在主函数中main()中输入年、月、日,然后计算该天是这一年的第几天。其中函数LeapYear()是判断某年是否为闰年。下面给定的程序存在错误,请改正。#include #include int LeapYear(int year)/*FOUND*/ return (year%4=0 & year%100) & (year%400=0

9、);int main() int mon_days211=31,28,31,30,31,30,31,31,30,31,30,31,29,31,30,31,30,31,31,30,31,30; int year,mon,day,days; int i; scanf(%d %d %d,&year,&mon,&day); days=day;/*FOUND*/ for(i=0;imon-2;i+)/*FOUND*/ days=mon_daysLeapYear(year)i; printf(%dn,days); getch(); return 0;第三套题目:主函数main()调用函数MyStrcat()将字符串src连接到字符串dstStr后面。下面给定的程序存在错误,请改正。#include #include void MyStrcat(char dstStr, char srcStr) int i,j; i=j=0;/*FOUND*/ while(dstStri+) i+; i-=1; while(srcStrj) dstStri=srcStrj; i+;j+; /*FOUND*/ srcStri=0;int main() char dst100=This

展开阅读全文
相关资源
相关搜索

当前位置:首页 > IT计算机/网络 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号