主题:参加了学校的程序大赛,找了几道题,大家一起做哈
本人只会java,各位高手最好用java做,不过其他语言一样可以,呵呵,大家本都是一家嘛!
有几题很有趣哦!
07年第4届第1题
本题5分
编写程序P1,实现以下功能:
从键盘输入8名学生的成绩(整数),然后在屏幕上输出与平均成绩最接近的那个成
绩。如果不止一个成绩满足条件,
只需输出一个。
07年第4届第2题
本题10分
编写程序P2,实现以下功能:
从键盘输入几十名学生的成绩(整数),以 -1表示结束,然后把这批数据按照与平
均成绩的差距排序,差距小的排在
前面,最后从屏幕依次输出排序后的全部成绩,所有成绩在同一行,两个成绩之间
用一个空格分隔。
说明:比平均成绩高3和比平均成绩低3,“与平均成绩的差距”都是3。
07年第4届第3题
本题10分
编写程序P3,实现以下功能:
从键盘输入一个大于1的正整数,然后分解它的质因数,并从小到大输出全部质因数
,两个质因数之间用一个空格分隔
,不换行。
例如,输入140,输出:
2 2 5 7
07年第4届第4题
本题15分
编写程序P4,实现以下功能:
某项比赛采用单淘汰赛制,n位参赛运动员的编号是1到n,运动员按编号从小到大两
两配对进行首轮(round 1)比赛,
每对中的失败者被淘汰,胜者(winner)再按编号从小到大两两配对进行第二轮
(round 2)比赛,淘汰一半后再进入
下一轮,如此逐轮进行,直到产生唯一的冠军(champion)为止。
请编写程序,从键盘输入参赛运动员人数n,(n是2的整数次幂,n>1。程序不必检
查n是否符合要求),然后在屏幕上
输出比赛进程示意图。下面是n为8时应有的输出样例,请首先看懂这个输出样例,
判断出输出格式中的规律,你的程序
必须按此规律输出。
注意:在程序中一一列举n=2、4、8、16、……时的输出者不能得分。
输出样例(各行左边的空格个数无严格限制,但应能明显区分各轮):
1
winner in round 1
2
winner in round 2
3
winner in round 1
4
champion
5
winner in round 1
6
winner in round 2
7
winner in round 1
8
07年第4届第5题
本题15分
编写程序P5,实现以下功能:
下面是一个5行5列的螺旋方阵:
1 16 15 14 13
2 17 24 23 12
3 18 25 22 11
4 19 20 21 10
5 6 7 8 9
编写程序,从键盘输入n(1<n<20),然后从屏幕输出n行n列的螺旋方阵。左右相邻
的数之间用一个空格分隔。
07年第4届第6题
本题15分
编写程序P6,实现以下功能:
编写程序,从键盘输入任意正整数n,然后计算n! 的尾部有多少个0,最后从屏幕输
出0的个数。
例如,键盘输入5,屏幕输出1,因为5!=120,尾部有1个0;输入26,屏幕输出6,因
为26!=
403291461126605635584000000,尾部有6个0。
不要傻乎乎地直接计算 n! 哦,溢出是得不到分的。
07年第4届第7题
本题15分
编写程序P7,实现以下功能:
中国有句俗语“三天打鱼两天晒网”,某人从2003年3月3日起三天打鱼两天晒网。
编写程序实现以下功能:
从键盘依次输入年、月、日3个数,计算此人在这一天是打鱼还是晒网,打鱼则屏幕
输出1,晒网则输出0。
说明:
1、输入的日期在2003年3月3日到2099年12月31日之间,不必检查其正确性。
2、必须考虑闰年,即年份能被4整除的年份,2月有29天。
04年第4届第8题
本题35分
编写程序P8,实现以下功能:
某班有26名学生(用小写字母a到z表示),身高互不相同,现有一批关于他们两两
比较身高的数据,需要用计算机判断
其中是否有自相矛盾的错误,例如,如果数据中有a比b高,b比e高,e比a高,那么
这批数据就是有矛盾的。
两两比较身高的数据是由偶数个小写字母组成的一个字符串,长度不超过100,其中
每一对字母表示一个比较关系,例
如“abftmb”表示a比b高,f比t高,m比b高。
编写程序,首先从键盘输入上述字符串,然后进行判断,最后从屏幕输出判断结果
,有矛盾输出字符n,否则输出字符y
,输出后程序终止。
例如:
键盘输入ab,屏幕输出y 。
键盘输入abbeea,屏幕输出n 。
键盘输入abcdefghijklmn,屏幕输出y 。
有几题很有趣哦!
07年第4届第1题
本题5分
编写程序P1,实现以下功能:
从键盘输入8名学生的成绩(整数),然后在屏幕上输出与平均成绩最接近的那个成
绩。如果不止一个成绩满足条件,
只需输出一个。
07年第4届第2题
本题10分
编写程序P2,实现以下功能:
从键盘输入几十名学生的成绩(整数),以 -1表示结束,然后把这批数据按照与平
均成绩的差距排序,差距小的排在
前面,最后从屏幕依次输出排序后的全部成绩,所有成绩在同一行,两个成绩之间
用一个空格分隔。
说明:比平均成绩高3和比平均成绩低3,“与平均成绩的差距”都是3。
07年第4届第3题
本题10分
编写程序P3,实现以下功能:
从键盘输入一个大于1的正整数,然后分解它的质因数,并从小到大输出全部质因数
,两个质因数之间用一个空格分隔
,不换行。
例如,输入140,输出:
2 2 5 7
07年第4届第4题
本题15分
编写程序P4,实现以下功能:
某项比赛采用单淘汰赛制,n位参赛运动员的编号是1到n,运动员按编号从小到大两
两配对进行首轮(round 1)比赛,
每对中的失败者被淘汰,胜者(winner)再按编号从小到大两两配对进行第二轮
(round 2)比赛,淘汰一半后再进入
下一轮,如此逐轮进行,直到产生唯一的冠军(champion)为止。
请编写程序,从键盘输入参赛运动员人数n,(n是2的整数次幂,n>1。程序不必检
查n是否符合要求),然后在屏幕上
输出比赛进程示意图。下面是n为8时应有的输出样例,请首先看懂这个输出样例,
判断出输出格式中的规律,你的程序
必须按此规律输出。
注意:在程序中一一列举n=2、4、8、16、……时的输出者不能得分。
输出样例(各行左边的空格个数无严格限制,但应能明显区分各轮):
1
winner in round 1
2
winner in round 2
3
winner in round 1
4
champion
5
winner in round 1
6
winner in round 2
7
winner in round 1
8
07年第4届第5题
本题15分
编写程序P5,实现以下功能:
下面是一个5行5列的螺旋方阵:
1 16 15 14 13
2 17 24 23 12
3 18 25 22 11
4 19 20 21 10
5 6 7 8 9
编写程序,从键盘输入n(1<n<20),然后从屏幕输出n行n列的螺旋方阵。左右相邻
的数之间用一个空格分隔。
07年第4届第6题
本题15分
编写程序P6,实现以下功能:
编写程序,从键盘输入任意正整数n,然后计算n! 的尾部有多少个0,最后从屏幕输
出0的个数。
例如,键盘输入5,屏幕输出1,因为5!=120,尾部有1个0;输入26,屏幕输出6,因
为26!=
403291461126605635584000000,尾部有6个0。
不要傻乎乎地直接计算 n! 哦,溢出是得不到分的。
07年第4届第7题
本题15分
编写程序P7,实现以下功能:
中国有句俗语“三天打鱼两天晒网”,某人从2003年3月3日起三天打鱼两天晒网。
编写程序实现以下功能:
从键盘依次输入年、月、日3个数,计算此人在这一天是打鱼还是晒网,打鱼则屏幕
输出1,晒网则输出0。
说明:
1、输入的日期在2003年3月3日到2099年12月31日之间,不必检查其正确性。
2、必须考虑闰年,即年份能被4整除的年份,2月有29天。
04年第4届第8题
本题35分
编写程序P8,实现以下功能:
某班有26名学生(用小写字母a到z表示),身高互不相同,现有一批关于他们两两
比较身高的数据,需要用计算机判断
其中是否有自相矛盾的错误,例如,如果数据中有a比b高,b比e高,e比a高,那么
这批数据就是有矛盾的。
两两比较身高的数据是由偶数个小写字母组成的一个字符串,长度不超过100,其中
每一对字母表示一个比较关系,例
如“abftmb”表示a比b高,f比t高,m比b高。
编写程序,首先从键盘输入上述字符串,然后进行判断,最后从屏幕输出判断结果
,有矛盾输出字符n,否则输出字符y
,输出后程序终止。
例如:
键盘输入ab,屏幕输出y 。
键盘输入abbeea,屏幕输出n 。
键盘输入abcdefghijklmn,屏幕输出y 。