华中科技大学复试机试题目
2008年
一.
1、狼过河问题(运用到回溯)
2、统计文件中单词数目
3、N阶楼梯上楼问题:一次可以走两阶或一阶,问有多少种上楼方式。(递归)
4、链表操作
二.
第一个是一个上楼梯的种数的统计,本来是一个用递归可以解决的问题,但是题目偏偏要求编写快速算法,言下之意就是要求你把递归转化成非递归。
第二个题是链表的,要求依照给出的结构体依次实现输入链表,保存链表,删除链表,从磁盘读取链表,显示链表这几个操作。做这个题,如果不记得保存文件的函数,很可能做不全或者做不出来。
第三个是要求根据 - | \ / 四个字符来实现题目所规定的一个长方体。并能使这个长方体适当的放大。这个是一个递归问题,但是我想了半天也没有做出来。
2006
1.输入一个数列以0位结束标志,建立链式线性表,查找其中最大的数并输出删除释放节点,然后对剩余的进行排序,并输出释放节点
2.输入一个数列以0位结束标志,建立二叉遍历数,并对其进行逆中序遍历,释放空间
第一题是 对输入的5个数排序,输出的结果到文件里。
第二题是 用链表去对上面的5个数字排序。
第三题是 输入一个ip地址串,判断是否合法。
2005
第一题:对给定的一个字符串,找出有重复的字符,并给出其位置,如:
输入:abcaaAB12ab12
输出:a,1;a,4;a,5;a,10
b,2;b,11
1,8;1,12
2,9;2,13
第二题:输入一个四行五列的矩阵,找出每列最大的两个数,如:
输入:1 2 3 4 9
-1 4 9 8 8
12 9 8 7 0
7 8 9 7 0
输出:12 9 9 8 9
7 8 9 7 8
第三题:输入一个字符串,建立一个二叉排序树,并中序遍历输出;
其它年份题目
1.给出年分m和一年中的第n天,算出第n天是几月几号(提示中给出了判断闰年的方法),按 yyyy-mm-dd的格式打印出来
2.职工有职工号,姓名,年龄.输入n个职工的信息,找出3个年龄最小的职工打印出来,n可以取6
3.n个人排一圈123报数,报到3的人退到圈外,直到剩最后一个人为止
4.冒泡排序。
5.建立二叉树,并中序遍历。
6.生成一个长度为21的数组,依次存入1到21;建立一个长度为21的单向链表,将上述数组中的数字依次存入链表每个结点中;将上述链表变为单向封闭(循环)链表;从头结点开始数,将第17个结点删除,将它的下一个结点作为新的头结点;重复上述过程,直到该链表中只剩一个结点,显示该结点中存入的数字。
08年的华科招收外校保送生上机试题:
(1)输入一个十进制数,将其先转化为八进制数,然后再输出
(2)用户输入一个文本名,编程实现输出文本中最长的一行和最短的一行。如果最长和最短的不止一行,请全部输出。
(3)输入学生信息:学号,三门课程的成绩,学号为0时结束,将其存储在链表A中,从中找出分数大于平均分的学生,并将该学生信息按平均分降序排列存入到链表B中,最后输出链表B。
08年的华科本校生保送上机试题:
(1)采用命令行方式复制任意多个文件内容到一个文件中,如下所示:
命令行形式:mycopy 1.txt 2.txt 3.txt 4.txt ...
功能:复制2.txt 3.txt 4.txt …的内容到1.txt中
(2)判定一个C语言变量的命名是否正确
(3)建立一种数据结构,可以存储任意个、任意长度的整数,利用这个数据结构,输入一串数,排序,求累加和
2001年保研复试题目
1.统计一字符串字符重复的个数;
例如:输入q3s4sa1aa
输出s,3; s,5
a,6; a,8; a,9
2,输入一个5行4列的的矩阵,输出每列最大两个元素
3.建立一个链表,以输入0为结束,删除其中数值最大的元素,并输出后删除元素后的链
表(不能用数组)
2000年
1. 输入n,
求y1=1!+3!+...m!(m是小于等于n的最大奇数)
y2=2!+4!+...p!(p是小于等于n的最大偶数)
2。输入一个5×5的矩阵,判断是否对称
3。建立一个升序链表并遍历
2002年
1、编一个程序,读入用户输入的,以“.”结尾的一行文字,统计一共有多少个单词,并分别输出每个单词含有多少个字符。(凡是以一个或多个空格隔开的部分就为一个单词)
2、守形数是这样一种整数,它的平方的低位部分等于它本身。比如25的平方是625,低位部分是25,因此25是一个守形数。编一个程序,找