第三届“C语言程序设计”编程比赛题目及规则
比赛目的:为了提高广大学生编程兴趣,提高学生动手编程实践能力,在我系形成良好的学习氛围。
参赛对象:电气信息III106班、管科类103班
比赛时间:6月5日9:00-24:00
参赛方式:参赛学生在所限定时间内完成特定的题目,为了评选方便,程序开发的环境暂定为:visual c++ ,Dev C++ ,Code:Blocks,Turbo C
注意事项:
1、学生在完成题目后,请将源程序、运行效果截图、必要的说明文档打包,递交到网络平台上(递交方式与以往作业相同)。
源程序请以题目序号命名,如(file1.c),要求变量名见名知意,有适当的注释、空行和良好的缩进格式;说明文档目的主要是为了教师了解学生开发情况,内容主要是对较复杂题目的主要设计思想进行一定的说明,如程序结构说明、重要数据的说明、程序函数清单等,文件格式可以存成(.doc或.txt文件),此次比赛不需要画流程图。
/*每个函数的书写格式请参照为:
函数名:
函数功能:
参数说明:
算法描述:
*/
2、参赛学生可以根据个人情况任意选择答题顺序。
将依据评分办法来确定参赛者的获奖名
次。
评分办法:
1、参赛学生需在个人机器上独立编程,每道题目需上机调试通过。
作品需兼顾程序可读性、
界面友好型、容错性等。
遵循规范实用、稳定可靠、算法优良的原则。
2、参赛题目共3题,总分100分。
从易到难分别为(50分、30分、20分)。
3、将从中选出一等奖1名,二等奖2名,鼓励奖若干名。
4、参赛题目见下页!!!!
参赛题目
1、(50分)网络新手的原型是一个名为BIFF的人,他有一种独特的编写消息的方法.下面是一条常见的BIFF公告:
样式输入: Enter message: Hey dude, C is rilly cool
样式输出:In Biff-speak: H3Y DUD3, C IS R1LLY COOL!!!!!!!!!! 程序需要把消息转换成大写字母,用数字代替特定的字母(a→4,b→8,e→3,i→1,O→0,s→5),然后添加10个左右的感叹号.
2、(30分)编程测试任意输入两个英文单词是否为变位词(相同字母的重新排列):
样式输入:Enter first word:smartest
Enter second word: mattress
样式输出:The words are anagrams.
若输入:Enter first word:dumbest
Enter second word: stumble
The words are not anagrams.
4、(20分)编写程序,生成一种贯穿10*10字符数组(初始时全为字符’.’)的“随机步法”。
程序必须随机地从一个元素“走到”另一个元素。
每次都向上、向下、向左、向右移动一个元素位置。
已访问过的元素按访问顺序用字母A到Z进行标记。
下面是一个输出示例:
提示:利用srand函数和4的余数。
余数一共有4中可能的值(0、1、2和3),指示下一次移动的4种可能方向。
在执行移动之前,需要检查两项内容:一是不能走到数组外面,而是不能走到已有字母标记的位置。
只要有一个条件不满足,就得尝试换一个方向移动。
如果四个方向都堵住了,程序就必须终止了。
下面是提前结束的一个示例,Z了。