第四届全国ITAT教育工程就业技能大赛复赛试题C语言程序设计(A卷)
第五届全国ITAT教育工程就业技能大赛复赛试题Java程序设计A卷

1、某人有5张3分和4张5分的邮票,请编写一个程序,计算由这些邮票中的1张或若干张可以得到多少种不同的邮资,并按照邮资从小到大顺序显示。
(20分)[java]view plaincopyprint?1. package programming;2.3. import java.util.ArrayList;4.5. public class PostageCount {6.7.8. public static void main(String[] args) {9. // TODO Auto-generatedmethod stub10. ArrayList<Integer> list=new ArrayList<Integer>();11. for(int i=0;i<=5;i++)12. for(int j=0;j<=4;j++)13. {14. if(i==0&&j==0)15. continue;16. Integer Postage=i*3+j*5;17. if(!list.contains(new Integer(Postage)))18. list.add(Postage);19. }20. System.out.println("可以得到"+list.size()+"种不同的邮资:");21. for(int i=0;i<list.size();i++)22. for(intj=i+1;j<list.size();j++)23. {24. Integerlist_i=list.get(i);25. Integerlist_j=list.get(j);26. if(list_i>list_j)27. {28. list.set(i,list_j);29. list.set(j,list_i);30. }31. }32. for(int i=0;i<list.size();i++)33. System.out.println(list.get(i));34. }35.36. }37.2、采用Java多线程技术编写程序,其中包括两个线程:A和B,其中A线程准备休眠一小时,B线程每隔一秒输入3句“起床”后,吵醒休眠的线程A。
C语言模拟题

15.以下正确的 if 语句形式是(acd)。
A:if (x>y && x!=y);
B:if (x!=y) scanf("%d",&x) else scanf("%d",&y);
C:if (x==y) x+=y;
D:if (x<y) {x++;y++;}
16.以下关于 typedef 的叙述正确的是(abd)。 A:用 typedef 可以定义各种类型名,但不能用来定义变量 C:用 typedef 只是将已存在的类型用一个新的名字来代表
D)y=x;
if(x<0) y=x-1;
if(x<=0)y=x-1;
else y=x+1;
else y=x+1;
8.若运行时给变量 x 输入 12,则以下程序的运行结果是_____。(知识点:5.2)
main()
{int x,y;
scanf("%d",&x);
y=x>12?x+10:x-12;
6.以下 4 个选项中,可以看作是一条语句的有(bc)。 A:{;} B:a=0,b=0,c=0; C:if(a>0); D:if(b==0) m=1;n=2;
7 以下选项中,合法的字符常量是(abd)。 A:'\t' B:'\17' C:"n" D:'\xaa'
8.以下描述正确的是(ad)。 A:while 循环是先判断表达式,后执行循环语句 B:使用 while 和 do-while 循环时,循环变量初始话的操作应在循环体语句之前完成 C:do-while 和 for 循环均是先执行循环语句,后判断表达式 D:for,while 和 do-while 循环中的循环体均可以由空语句构成
全国ITAT教育工程就业技能大赛模拟试题比赛科目

第四届全国ITAT教育工程就业技能大赛模拟试题(比赛科目: Photoshop平面设计)该试卷只用于测试考试环境,非预赛模拟题,仅供参考。
一、单项选择题(15题每题1分共15分)1. ()颜色模式既不依赖于光线和颜料,也不依赖于设备。
(知识点1.3)A. RGBB. CMYKC. 索引色D. Lab2. 【扩大选取】与【选取相似】命令都可以扩大选区范围,下列相关描述正确的是()。
(知识点2.3)A. 【扩大选取】颜色选区范围受“容差”值控制,【选取相似】则不受“容差”值控制B. 【扩大选取】是扩大与现有选取范围相邻且颜色相近的颜色区域;【选取相似】则是扩大整个图像中与现有选取范围颜色相同的区域C. 二者功能基本相似D. 对于同一幅图像,【扩大选取】选取的颜色范围比【选取相似】相对要大一些3. 使用【仿制图章工具】应采用以下()方式在图像上取样进行复制。
(知识点3.1)A. 在取样的位置单击鼠标并拖动B.按住C. 按住D.- 2 -错误!使用“开始”选项卡将标题2 应用于要在此处显示的文字。
4. 图像修饰工具主要用来为图像润色或增加图像的清晰度,其中()工具主要用来增加图像的清晰度。
(知识点3.2)A. B. C. D.5. 在路径曲线上,()用来控制路径线段的走向和弯曲程度。
(知识点4.1)A.节点 B. 方向线和方向点 C. 路径线段 D. 转角6. 当浮动选区转换为路径时,所创建的路径状态是()。
(知识点4.2)A. 工作路径B. 开放的子路径C. 剪贴路径D. 形状图层7.()不属于Photoshop自定义的5种渐变类型。
(知识点5.2)A. 径向渐变B. 对称渐变C. 多重渐变D.菱形渐变8. 5.3)A B C D9. 如果要对某一图层中所有不透明区域进行填充,在图层面板中应先点中()按钮。
(知识点6.2)A. B. C. D.错误!使用“开始”选项卡将标题2 应用于要在此处显示的文字。
第四届全国ITAT教育工程就业技能大赛C语言复赛试题

第四届全国ITAT教育工程就业技能大赛复赛试题 C语言程序设计(A卷)欢迎各位c语言爱好者都来交流,讨论,看看大家都能做几题。
. (看看谁写的代码最有效率。
欢迎大家给出不同的解法一起交流!)1、编写一个程序,让它有以下功能:从键盘上输入一个五位数,对此整数中的五个数值进行从大到小排序,形成一个新的五位数,输出这个整数。
(15分)2、输入年、月、日,输出该日期是该年的第几天。
(25分)3、利用数组实现数据的存储。
将学生的学号和成绩存储在数组中,利用循环计算出数组中存储学生的平均成绩,找出高于平均分的学生信息并输出。
(20分)4、输入五个国家的名字,按字母顺序(即按ASCII码从小到大的顺序)排列输出。
(20分)5、用指针实现:任意输入20个数,将它们按照从大到小的顺序输出。
(20分)附加题6、编写一个简单的通讯录管理系统。
通讯录包括:姓名、通讯地址、邮编、联系电话,现编写一个通讯录管理系统,可以对通讯录进行输入、显示、查找,通讯录保存到一个文件中。
(50分)(提示:可能用到以下库函数:malloc(),功能:分配size字节的存储区,用法:(类型 *)malloc(size *sizeof(你要定义的类型));包含于<stdlib.h>库中feof(),功能:检测文件是否结束用法: int feof(fp)FILE *fp;包含于<stdio.h>库中。
)第四届全国ITAT教育工程就业技能大赛复赛试题 C语言程序设计(B卷)欢迎各位c语言爱好者都来交流,讨论,看看大家都能做几题。
. (看看谁写的代码最有效率。
欢迎大家给出不同的解法一起交流!)1、编程完成数据加密。
数据是五位的整数,加密规则为:每位数字都加上6,然后用和除以8的余数代替该数字,再将第一位和第五位交换,第二位和第四位交换。
(15分)2、请猜数字,该数字由系统随即产生。
要求:用户最多有10次猜测的机会,如果在10次内猜对数字,则程序显示祝贺信息,如果连续10次都没有猜中数字,则游戏自动退出。
ITAT大赛C语言程序设计复习题

第五届全国ITAT教育工程就业技能大赛预赛试题C语言程序设计试题一、单选题(共计60题)(1)在下述程序中,if (i>j)语句共执行的次数是()。
main(){ int i=0,j=14,k=2,s=0;for(;;){ i+= k ;if(i>j){ printf(“%d”,s);break ;}s+=i ;}}A、6B、9C、7D、12(2)若要用fopen函数打开一个二进制文件,该文件要既能读也能写,当文件不存在时新建文件,则文件打开方式应是()。
A、"ab+"B、"rb+"C、"wb+"D、"ab"(3)下列程序的输出结果是()。
struct student{ int a, b, c; };main(){ struct student stu[2]={{2,3,4},{5,6,7}}; int t;t=stu[0].a+stu[1].b%stu[0].c;printf("%d \n",t); }A、0B、1C、4D、5(4)对于浮点型变量f,能实现对f中的值在小数点后第四位进行四舍五入的表达式是()。
A、f=(f*1000+0.5)/1000.0B、f=(f*1000+0.5)/1000C、f=(int)(f*1000+0.5)/1000.0D、f=(f/1000+0.5)*1000(5)现已定义整型变量int i=1; 执行循环语句“while(i++<5);”后,i的值为()。
A、1B、5C、6D、以上三个答案均不正确(6)下列程序的输出结果是()。
struct LH{ int n;struct LH *m;}p[4];main(){ int i;for(i=0;i<2;i++){p[i].n=i;p[i].m=&p[i+1];}p[i].m=p;printf(“%d,%d\n”,(p[1].m)->n,p[2].m->n); }A、0,1B、0,2C、0,0D、程序出错(7)下列程序的运行结果是()。
第四届全国ITAT教育工程就业技能大赛预赛试题84993949

第四届全国ITAT教育工程就业技能大赛预赛试题C语言、单项选择题〔共60小题,每题1分,共60分〕执行以下程序中的输出语句后,x的值是______.〔知识点3.10〕n〔〕tx;ntf〔“%d\n〞,〔x=5*6,x*2,x+20〕〕;}30B〕60C〕50D〕80以下程序的输出结果是_______.〔知识点3.8〕n〔〕tx=1,y=0,z;〔x<=0〕&&〔y-->=0〕;ntf〔“%d%d%d%\n〞,z,x,y〕;}0-1-1B〕0-10C〕010D〕01-1在C语言中,以下选项属于合法的长整型常数的是_______.〔知识点3.3〕以下选项中属于不正确的赋值语句的是_____.〔知识点3.6〕t++;B〕n1=〔n2=〔n3=0〕〕;C〕k=i==j;D〕a=b,c=1;假设有定义:inta,b;charx,y;并有以下输进数据:1422XxYy〔回车〕么能给a赋整数14,给b赋整数22,给x赋字符x,给y赋字符y的正确程序段是________.〔知识点4.2〕scanf〔“%d%d〞,&a,&b〕;etchar〔〕;y=getchar〔〕;scanf〔“%d%d%c%c〞,&a,&b,&x,&x,&y,&y〕;scanf〔“%d%d%c%c%c%c〞,&a,&b,&x,&x,&y,&y〕;scanf〔“%d%d%c%c〞,&a,&b,&x,&y〕;以下转义字符不正确的选项是_______.〔知识点3.5〕'\\'B〕'\'C〕'\053'D〕'\0'以下选项可作为C语言赋值语句的是_______.〔知识点4.2〕x=3,y=5B〕a=b=6C〕i--;D〕y=int〔x〕;当c的值不为0时,以下选项中能正确将c的值赋给变量a、b的是_______.〔知识点5.2〕c=b=a;B〕〔a=c〕‖〔b=c〕;C〕〔a=c〕&&〔b=c〕;D〕a=c=b;有以下程序:n〔〕signedinta;b=-1;;ntf〔“%u〞,a〕;}程序运行后的输出结果是_______.〔知识点4.5〕-1B〕65535C〕32767D〕-32768假设x、b、m、n均为int型变量,执行下面语句后b的值为_______.〔知识点3.10〕0;n=6;〔--m==n++〕?--m:++n;++;11B〕6C〕19D〕18有以下程序:n〔〕ta=111,b=222;ntf〔“%d\n〞,a,b〕;程序运行后的输出结果是_______.〔知识点4.5〕错误信息B〕111C〕222D〕111,222以下程序的输出结果是_______.〔知识点4.5〕n〔〕ta=2,c=5;ntf〔“a=%%%d,b=%%%d\n〞,a,c〕;}a=%2,b=%5B〕a=2,b=5C〕a=%%%d,b=%%%dD〕a=%%d,b=%%d关于浮点型变量f,能实现对f中的值在小数点后第三位进行四舍五进的表达式是_______.〔知识点3.8〕f=〔f*100+0.5〕/100.0B〕f=〔f*100+0.5〕/100f=〔int〕〔f*100+0.5〕/100.0D〕f=〔f/100+0.5〕*100设a=5,b=6,c=7,d=8,m=2,n=2,执行〔m=a>b〕&&〔n=c>d〕后m,n的值为______.〔知识点5.2〕2,2B〕2,0C〕0,2D〕0,0语句printf〔“%d\n〞,strlen〔“asd\n\x12\1\\〞〕〕;的输出结果是______.〔知识点7.3〕9B〕11C〕7D〕8有以下程序:n〔〕y=1234;ntf〔“y=%6d〞,y〕;ntf〔“y=%+06d\n〞,y〕;程序的运行结果是______.〔知识点4.5〕y=1234y=001234B〕y=1234y=+01234y=1234y=+01234D〕y=1234y=1234语句:printf〔“%d〞,!9〕;的输出结果是______.〔知识点5.2〕0B〕1C〕有语法错误,不能执行D〕-9已有定义语句:intx=6,y=4,z=5;执行以下语句后,能正确表示x、y、z值的选项是______.〔知识点5.3〕〔x<y〕z=x;x=y;y=z;x=4,y=5,z=6B〕x=4,y=6,z=6x=4,y=5,z=5D〕x=5,y=6,z=4以下选项中属于正确的switch语句的是______.〔知识点5.4〕switch〔1.0〕B〕swicth〔1〕se1.0:printf〔“A\n〞〕;{case1:printf〔“A\n〞〕;e2.0:printf〔“B\n〞〕;}case2:printf〔“B\n〞〕;}switch〔〔int〕〔1.0+2.5〕〕D〕switch〔“a〞〕;se1:printf〔“A\n〞〕;{case“a〞:printf〔“A\n〞〕;e1+2:printf〔“B\n〞〕;}case“b〞:printf〔“B\n〞〕;}假设k为int型变量,以下语句段执行后的输出结果是______.〔知识点5.3〕3;〔k<=0〕printf〔“####〞〕eprintf〔“****〞〕;####B〕****C〕####****D〕有语法错误,不能执行当a=2,b=3,c=4,d=5时,执行下面一段程序后x的值为_____.〔知识点5.3〕〔a>b〕〔c<d〕x=1;e〔a<c〕〔b>d〕x=2;ex=3;ex=4;ex=5;2B〕3C〕4D〕5以下程序的运行结果是________.〔知识点6.3〕n〔〕ty=10;y--;}while〔--y〕;ntf〔“%d\n〞,y--〕;}-1B〕1C〕8D〕0以下程序的运行结果是________.〔知识点6.5〕clude<stdio.h>n〔〕i;〔i=1;i<=5;i++〕〔i%2〕printf〔“*〞〕;econtinue;ntf〔“#〞〕;ntf〔“$\n〞〕;*#*#$B〕#*#*#*$C〕*#*#*#$D〕***#$假设x是int型变量,且有下面的程序片段:〔知识点6.5〕〔x=5;x<8;x++〕ntf〔〔x%2〕?〔“**%d〞〕:〔“##%d\n〞〕,x〕;程序片段的输出结果是_______.**5##6B〕##5C〕##5**6##7D〕**5##6**7**7**6##7有以下程序:n〔〕ta=1,b=0;tch〔a〕se1:switch〔b〕se0:printf〔“****〞〕;break;e1:printf〔“####〞〕;break;}e2:printf〔“$$$$〞〕;break;}程序的输出结果是________.〔知识点5.4〕****B〕****$$$$C〕****####$$$$D〕####$$$$以下程序段的输出结果是_______.〔知识点6.4〕x=3;printf〔“%3d〞,x-=2〕;}le〔!〔——x〕〕;1B〕30C〕1-2D〕死循环有以下程序,其中x、y为整型变量;〔x=0,y=0;〔x<=1〕&&〔y=1〕;x++,y——〕;ntf〔“x=%d,y=%d〞,x,y〕;程序的输出结果是_____.〔知识点6.5〕x=2,y=0B〕x=1,y=0C〕x=1,y=1D〕x=0,y=0有以下程序段:n=0,p;scanf〔“%d〞,&p〕;n++;}while〔p!=12345&&n<3〕;处do-while循环的结束条件是_____.〔知识点6.4〕p的值不等于12345同时n的值大于3p的值等于12345同时n的值大于等于3p的值不等于12345或者n的值小于3p的值等于12345或n的值大于等于3在下述程序中,if〔i>j〕语句共执行的次数是_____.〔知识点6.5〕n〔〕ti=0,j=10,k=2,s=0;〔;;〕=k;〔i>j〕intf〔“%d〞,s〕;ak;i;4B〕7C〕5D〕6以下程序的功能是:按顺序读进10名学生和4门课程的成绩,计算出每位学生的平均分进行输出,但运行结果不正确。
全国ITAT教育工程就业技能大赛复赛试题

第五届全国ITAT教育工程就业技能大赛复赛试题Flash动画设计(A卷)请考生仔细阅读并严格遵守题目中关于文件保存和命名的要求。
请务必按照试卷要求为文件命名。
考生答题完毕后,首先创建以“准考证号”命名的文件夹(形式如:433034683),并将考试结果严格按题目上的命名要求进行命名并直接保存在该文件夹下。
注意:考生不得在该文件夹下创建任何子文件夹,所有考试结果均直接保存在该文件夹根目录下。
然后选中整个文件夹,用Winrar压缩工具打包后存放在本考场指定的考试结果存放地址,经监考老师确认上传无误后方可离开考场。
注意:在提交答案时,请务必选中上述存放作品的文件夹(如前面创建的433034683文件夹,而不是文件夹下的全部文件)进行压缩,在完成答案提交后,请确保上述压缩包仍保存在本地计算机中。
请务必按照试卷要求提交指定的文件,不得包含非题目要求的过程文件和临时文件,不得包含本试题文件和试题素材。
注意:凡违反上述规定的考生,其成绩一律按零分处理。
提示:本次竞赛共包含三道题目,总分150分,三个题目分值依次为40、60、50。
请参赛者开始动手制作之前,先了解每个题目的具体内容和要求,以便合理分配时间,获得最好的综合成绩。
第一题:(40分)请参照提供的素材文件“探照灯效果.exe”中的效果,制作一个探照灯效果。
注意阴影部分会随着照射位置的变化而变化的效果。
制作好的源文件保存为“1.fla”,并输出为“1.swf”。
第二题:(60分)阿基米德曾经说过“给我一个支点,我能撬起地球”,这说明了“杠杆”的作用。
“杠杆”在物理教学中是非常重要的一课。
杠杆原理的应用,在日常生活中也非常普遍。
比如“剪刀”、“扳手”、“羊角锤”、“跷跷板”、“水龙头”、“方向盘”、“铁锹”、“船桨”、“杆秤”、“钓鱼竿”等都利用了杠杆原理。
图中给出了一些例子。
请发挥想象力,选择一个或者两个例子(上面提到的或者没有提到的),制作一个教学动画,能够表现出杠杆的原理和用途。
全国ITAT教育工程就业技能大赛试题

第四届全国ITAT教育工程就业技能大赛试题(比赛科目: 3dmax三维设计)(共80题,其中单选60题,每道题1分;多选20题,每道题2分,合计100分。
)一、单选题(60题每题1分共60分)1、将下面工作视图中图1用户视图的显示内容调整成图2的显示内容应进行的正确操作是()。
图1 图2A、直接打开渲染工具,进行渲染B、调整椅子的材质高光和背景颜色C、在视图左上角的用户位置右击,在弹出菜单的视图项中选择Active Shade视图D、在该视图显示模式中打开Active Shade显示模式【知识点:工作视图的布局、设置和切换编号:1. 3】2、移动物体有多种坐标轴模式,如果要将图1中红线框选物体的移动模式改变成图2中红线框选物体的移动模式应执行的正确操作是()。
图1 图2A、移动它的坐标轴方向B、进行图3所示的操作: 图3C、进行图4所示的操作: 图4D、进行图5所示的操作: 图5【知识点:物体坐标轴向的变换和修改编号:2. 6】3、在建立一些尺寸精度较高的工业造型时,需要对某个造型细节进行精确变换。
可以打开【移动变换输入】对话框,准确的输入该造型移动的方向和距离的操作是()。
A、将光标移动到主工具栏中的任意工具按钮上,单击鼠标右键,即可打开【移动变换输入】对话框B、将光标移动到主工具栏中的【移动】按钮上,单击鼠标中键,即可打开【移动变换输入】对话框C、将光标移动到主工具栏中的任意工具按钮上,单击鼠标左键,即可打开【移动变换输入】对话框D、将光标移动到主工具栏中的【移动】按钮上,单击鼠标右键,即可打开【移动变换输入】对话框【知识点:物体的变换编号:2. 3】4、为便于操作已经将下图所示的手枪群组在一起,现在想要制作手枪扳机扳动的动画,应该进行的正确操作是()。
A、选择“组”→“成组”命令,然后选择扳机制作移动动画B、选择“组”→“炸开”命令,然后选择扳机制作移动动画C、选择“组”→“打开”命令,然后选择扳机制作旋转动画D、选择“组”→“打开”命令,然后选择扳机制作移动动画【知识点:物体的群组编号:2.4】5、选择不同的视图控制工具,能对视图角度、位置进行调整,下面视图控制工具中红色框选图标所代表的意思是()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第四届全国ITAT教育工程就业技能大赛复赛试题C语言程序设计(A卷)请考生仔细阅读并严格遵守题目中关于文件保存和命名的要求。
请务必按照试卷要求为文件命名。
考生答题完毕后,首先创建以“准考证号”命名的文件夹(形式如:433034683),并将考试结果严格按题目上的命名要求进行命名并直接保存在该文件夹下。
注意:考生不得在该文件夹下创建任何子文件夹,所有考试结果均直接保存在该文件夹根目录下。
然后选中整个文件夹,用Winrar压缩工具打包后存放在本考场指定的考试结果存放地址,经监考老师确认上传无误后方可离开考场。
注意:在提交答案时,请务必选中上述存放作品的文件夹(如前面创建的433034683文件夹,而不是文件夹下的全部文件)进行压缩,在完成答案提交后,请确保上述压缩包仍保存在本地计算机中。
请务必按照试卷要求提交指定的文件,不得包含非题目要求的过程文件和临时文件,不得包含本试题文件和试题素材。
注意:凡违反上述规定的考生,其成绩一律按零分处理。
题目命名要求:请将编写好的源程序以题号命名,例如第1题的源程序保存为“1.C”)。
重要提示:(1)由于时间有限,请考生首先保证编写的程序在Turboc2.0英文版环境下可以编译通过并执行,在此基础上保证完成考题要求的全部功能,以免因编译不通过影响考生的考试成绩;(2)由于编程算法不同,提供的库函数不会包含考生需要的所有内容,但保证所提供函数一定能够完成本考题全部功能。
1、编写一个程序,让它有以下功能:从键盘上输入一个五位数,对此整数中的五个数值进行从大到小排序,形成一个新的五位数,输出这个整数。
(15分)/* HELLO.C -- Hello, world */#include "stdio.h"#include "conio.h"main(){ int i,j;char a[4];printf("please input the five integer:");for(i=0;i<5;i++){scanf("%c",&a[i]);}for(i=0;i<5;i++){for(j=0;j<4-i;j++) {if(a[j]<a[j+1]){int temp;temp=a[j];a[j]=a[j+1];a[j+1]=temp;}}}for(i=0;i<5;i++){printf("%c",a[i]);}getch();}2、输入年、月、日,输出该日期是该年的第几天。
(25分)/* HELLO.C -- Hello, world */#include "stdio.h"#include "conio.h"main(){int year,month,date,leap,days=0;scanf("%4d%2d%2d",&year,&month,&date);leap=(year%4==0&&year%100!=0||year%400==0);switch(month){case 12:days+=30;case 11:days+=31;case 10:days+=30;case 9:days+=31;case 8:days+=31;case 7:days+=30;case 6:days+=31;case 5:days+=30;case 4:days+=31;case 3:days+=28+leap;case 2:days+=31;case 1:days+=date;break;}printf("%4dyear%2dmonth%2ddateis%ddays\n",year,month,date,days);getch();}3、利用数组实现数据的存储。
将学生的学号和成绩存储在数组中,利用循环计算出数组中存储学生的平均成绩,找出高于平均分的学生信息并输出。
(20分)/* HELLO.C -- Hello, world */#include "stdio.h"#include "conio.h"main(){ int a[100][2],n,i,sum=0;float ave;printf("how many students ?");scanf("%d",&n);printf("please input student message:\n");printf("no\tscore\n");for(i=0;i<n;i++){scanf("%d",&a[i][0]);scanf("%d",&a[i][1]);}/*printf("ave is %d",a[1][0]);*/for(i=0;i<n;i++){sum=sum+a[i][1];}ave=sum/n;printf("ave is %4.2f",ave);getch();}4、输入五个国家的名字,按字母顺序(即按ASCII码从小到大的顺序)排列输出。
(20分)/* HELLO.C -- Hello, world */#include "stdio.h"#include "conio.h"typedef struct{char cou[15];}C;C raw[5];C *p[5];void main(){/*定义结构数组*//*定义指针指向结构体变量*/C* q;int i,j;printf("input countries:\n");/*循环输入国家名并存储在结构数组中*/for(i=0;i<5;i++){scanf("%s",&raw[i].cou);p[i]=&raw[i];/* strupr(p[i].cou);*/}/*冒泡排序将国家名称排序*/for(i=0;i<4;i++)for(j=0;j<4-i;j++){/*strcmp函数比较相邻两个国家名的Ascii码*/if(strcmp(p[j]->cou,p[j+1]->cou)>0){q=p[j];p[j]=p[j+1];p[j+1]=q;}}printf("\n");/*循环输出*/for(i=0;i<5;i++)printf("%s ",p[i]->cou);getch();}5、用指针实现:任意输入20个数,将它们按照从大到小的顺序输出。
(20分)6、编写一个简单的通讯录管理系统。
通讯录包括:姓名、通讯地址、邮编、联系电话,现编写一个通讯录管理系统,可以对通讯录进行输入、显示、查找,通讯录保存到一个文件中。
(50分)(提示:可能用到以下库函数:malloc(),功能:分配size字节的存储区,用法:(类型*)malloc(size *sizeof(你要定义的类型));包含于<stdlib.h>库中feof(),功能:检测文件是否结束用法:int feof(fp)FILE *fp;包含于<stdio.h>库中。
)/* HELLO.C -- Hello, world */#include "stdio.h"#include "conio.h"#include "stdlib.h"#include "string.h"void input();void show();void find();void save();struct addlist{char name[20];char add[100];char code[20];char tel[20];struct addlist *next;};struct addlist *head=NULL,*currnode,*new;main(){int i;int flag=1;while(flag){printf("\n\nmenu\n\n1:input\n\n2:show\n\n3:find\n\n4:save\n\n");scanf("%d",&i);switch(i){case 1:input();break;case 2:show();break;case 3:find();break;case 4:save();break;defalut:flag=0;}getch();}void input(){new=(struct addlist *)malloc(sizeof(struct addlist)); if(head==NULL) head=new;else{currnode=head;while(currnode->next!=NULL)currnode=currnode->next;currnode->next=new;}currnode=new;printf("\nenter name:");scanf("%s",currnode->name);printf("\n");printf("enter address:");scanf("%s",currnode->add);printf("\nenter code:");scanf("%s",currnode->code);printf("\nenter telephone:");scanf("%s",currnode->tel);currnode->next=NULL;}void show(){int i=0;if(head==NULL){printf("\n empty list\n");return ;}currnode=head;do{printf("\n record number:%d\n",++i);printf("\n name:%s\n",currnode->name);printf("\n address:%s\n",currnode->add);printf("\n code:%s\n",currnode->code);printf("\n telephones:%s\n",currnode->tel);currnode= currnode->next;} while(currnode!=NULL);void find(){int i=0;char namestr[20];printf("\nplease input name:");scanf("%s",namestr);if(head==NULL){printf("\n empty list\n");return ;}currnode=head;do{if(strcmp(currnode->name,namestr)==0){ printf("\n record number:%d\n",++i);printf("\n name:%s\n",currnode->name);printf("\n address:%s\n",currnode->add);printf("\n code:%s\n",currnode->code);printf("\n telephones:%s\n",currnode->tel);}currnode= currnode->next;} while(currnode!=NULL);}void save(){FILE *fp;char filename[20];printf("\nfilename??");scanf("%s",filename);if(head==NULL){printf("\n empty list\n");return ;}if (fp=(fopen(filename,"w"))==NULL){printf("can't open this file");exit(0);}do{fwrite(currnode,sizeof(struct addlist),1,fp);currnode= currnode->next;} while(currnode!=NULL);do{fread(currnode,sizeof(float),1,fp);printf("\n record number:%d\n",++i);printf("\n name:%s\n",currnode->name);printf("\n address:%s\n",currnode->add);printf("\n code:%s\n",currnode->code);printf("\n telephones:%s\n",currnode->tel);currnode= currnode->next;} while(currnode!=NULL);printf("\nsave finish!\n");}。