切换到宽版
  • 6704阅读
  • 0回复

2007年潍坊市青少年信息学奥林匹克竞赛试题(普及组) [复制链接]

上一主题 下一主题
离线雪饮狂刀
 
只看楼主 倒序阅读 0 发表于: 2007-11-13
2007年潍坊市青少年信息学奥林匹克竞赛试题(普及组)
考试时间:13:30-16:30
考生须知:
★若试卷中试题字迹不清,考生可以在审题时举手请求解释,由考务人员加以说明。涉及题意理解问题,则不得提问且考务人员不予解答;
★考生必须持准考证对号入座,考试结束前按要求上传到服务器上;
★本试卷共四题,满分100分。
★程序名字严格按照试卷要求命名,否则不得分,答题完毕后只上交源程序。

1.文件名:program1.pas/c/cpp (15分;说明:.pas/c/cpp是指,若编程语言为Pascal,则后缀为.pas,语言为C,则后缀为.C,语言为C++,则后缀为.CPP,以下同)
【问题描述】
输入圆的半径R(1<R≤30000),求圆形的面积(圆周率的值取3.1415926),若存在不符合要求的输入,则输出“input error”。
键盘输入:整数R  屏幕输出:面积S(保留小数点后两位)
【样例输入】123
【样例输出】47529.15

2.文件名:program2.pas/c/cpp (20分)
【问题描述】转置矩阵是指原矩阵的行列内容互换而成的矩阵。如矩阵A为 { 123  } ,
                                                                  456
                                                                  789
其转置矩阵为{147}
                          258
                          369 。

现有输入文件提供的N×M(0<N≤20,0<M≤20)矩阵(各数据元素为整数),要求输出其转置矩阵。
【输入文件】输入文件program2.in,N+1行M列,第一行为N和M的值,用空格隔开,其余为矩阵的各元素的值
【输出文件】输出文件为program2.out,M行N列,为转置矩阵各元素的值
【样例输入】
3  3
1  2  3
4  5  6
7  8  9
【样例输出】
1  4  7
2  5  8
3  6  9

3. 文件名:program3.pas/c/cpp (25分)
【问题描述】输入一个以“@”结束的字符串,从左至右翻译。若下一个字符是数字n(0<n≤9),表示后一个字符重复n+1次,不论后一个字符是否为数字;若下一个字符非数字,则表示自己。翻译后,以3个字符为一组输出,组与组之间用空格分开。
例如“A2B5E34FG0ZYWPQ59R@”可翻译成“ABB BEE EEE E44 44F GZY WPQ 999 999 R@”。
【输入文件】输入文件program3.in,为需要输入的字符串(串长≤255)
【输出文件】输出文件program3.out,为翻译后的字符串。
【样例输入】
A2B5E34FG0ZYWPQ59R@
【样例输出】
ABB BEE EEE E44 44F GZY WPQ 999 999 R@

4. 文件名:program4.pas/c/cpp (30分)
【问题描述】
有n名选手的乒乓球循环比赛,代号分别为1到n,其中n=2m,现要设计一个满足以下条件的比赛日程表:
(1)    每名选手要与其它n-1名选手都进行一次比赛
(2)    每名选手每天只赛一次
(3)    整个比赛共进行n-1天,要求每天没有选手轮空
键盘输入:选手人数n(n≤100)
屏幕输出:n×n阵列的比赛安排表,每行第一个数字为1到n名选手的代号,后面有‘.’作标注,其余分别为每名选手在第1天到第n-1天的比赛对手
【样例输入】4
【样例输出】
1.    2  3  4
2.    1  4  3
3.    4  1  2
4.    3  2  1
快速回复
限100 字节
 
上一个 下一个