文档详情

《二零一六年上海市高等学校计算机等级考试试卷》.doc

发布:2016-05-30约4.75千字共9页下载文档
文本预览下载声明
2012年上海市高等学校计算机等级考试试卷 二级 C语言程序设计 B卷(二)编程题(2小题,共35分,第1小题15分,第2小题20分) 1.编程题1 编程要求:请按题中的功能要求,编写程序并能得到正确的结果。将结果(包括B_4_1.C文件和B_4_1.EXE文件)保存到目录C:\KS\中。 程序功能:输入一个字符串,输出三角形样式图案,每行包含行号与子串,格式参见示例。 运行示例: 输入: London 输出: 0:London 1:ondon 2:ndon 3:don 4:on 5:n 参考答案: #include stdio.h int main(void) { char s[80]; int i; gets(s); for (i=0;s[i]!=\0;i++) { printf(%d:,i); puts(s+i); } return 0; } 测试数据: 输出结果: 1:hanghai 2:anghai 3:nghai 4:ghai 5:hai 6:ai 7:i 2.编程题2 编程要求:请按题中的功能要求,编写程序并能得到正确的结果。将结果(包括B_4_2.C文件和B_4_2.EXE文件)保存到目录C:\KS\中。 背景说明:在2012伦敦奥运会上,中国选手陈若琳获得跳水女子10米跳台冠军,中国代表团夏季奥运会第200枚金牌,下图是决赛中完成第2跳之后的裁判打分及跳水得分。 规则说明:共7个裁判对单人跳水进行打分,打分范围为0.0至10.0,且为0.5整数倍。 去掉2个最高分,去掉2个最低分,保留3个中间有效分; 3个有效分的之和乘难度系数为跳水得分。 以第2跳为例,得分=(9.0+8.5+9.0)*3.2=84.80。 程序功能:输入某轮次跳水的难度系数与7个裁判打分,输出该轮次跳水的得分,格式参见示例。 运行示例: 输入: 3.0 10.0 9.5 9.0 9.5 9.5 9.0 9.5 输出: 85.50 参考答案: #include stdio.h int main(void) { int j,k; float a[7],dif,score,sum,t; sum=0; scanf(%f,dif); for (j=0;j7;j++) scanf(%f,a[j]); for (j=0;j7-1;j++) for (k=0;k7-1-j;k++) if (a[k]a[k+1]) { t=a[k]; a[k]=a[k+1]; a[k+1]=t; } score=dif*(a[2]+a[3]+a[4]); printf(%.2f\n,score); return 0; } 测试数据: 输出结果: C卷(二)编程题(2小题,共35分,第1小题15分,第2小题20分) 1.编程题1 编程要求:请按题中的功能要求,编写程序并能得到正确的结果。将结果(包括C_4_1.C文件和C_4_1.EXE文件)保存到目录C:\KS\中。 程序功能:输入一个字符串,输出三角形样式图案,每行包含行号与子串,格式参见示例。 运行示例: 输入: Beijing 输出: 0:Beijing 1:Beijin 2:Beiji 3:Beij 4:Bei 5:Be 6:B 参考答案: #include stdio.h #include string.h int main(void) { char s[80]; int i,n; gets(s); n=strlen(s); for (i=0;in;i++) { printf(%d:,i); s[n-i]=\0; puts(s); } return 0; } 测试数据: 输入:Nanjing 输出: 0:Nanjing 1:Nanjin 2:Nanji 3:Nanj 4:Nan 5:Na 6:N 2.编程题2 编程要求:请按题中的功能要求,编写程序并能得到正确的结果。将结果(包括C_4_2.C文件和C_4_2.EXE文件)保存到目录C:\KS\中。 背景说明:在2012伦敦奥运会上,金牌数前10名的国家按名字排序如图所示,以此画出金牌数的直方图,其中最小金牌数对应1个#号,最多金牌数对应10个#号。 程序功能:按示例编程实现以下功能: 输入10个整数(存于整数数组a中,下标0至9) 计算并输出最小值(记为min) 计算并输出最大值(记为max) 按以下公式计算
显示全部
相似文档