【2017年整理】华科计算机保研复试机试题目2

上传人:爱****1 文档编号:949452 上传时间:2017-05-23 格式:DOC 页数:63 大小:236.50KB
返回 下载 相关 举报
【2017年整理】华科计算机保研复试机试题目2_第1页
第1页 / 共63页
【2017年整理】华科计算机保研复试机试题目2_第2页
第2页 / 共63页
【2017年整理】华科计算机保研复试机试题目2_第3页
第3页 / 共63页
【2017年整理】华科计算机保研复试机试题目2_第4页
第4页 / 共63页
【2017年整理】华科计算机保研复试机试题目2_第5页
第5页 / 共63页
点击查看更多>>
资源描述

《【2017年整理】华科计算机保研复试机试题目2》由会员分享,可在线阅读,更多相关《【2017年整理】华科计算机保研复试机试题目2(63页珍藏版)》请在金锄头文库上搜索。

1、 华中科技大学复试机试题目2008 年一1、狼过河问题(运用到回溯)2、统计文件中单词数目3、N 阶楼梯上楼问题:一次可以走两阶或一阶,问有多少种上楼方式。 (递归)4、链表操作二第一个是一个上楼梯的种数的统计,本来是一个用递归可以解决的问题,但是题目偏偏要求编写快速算法,言下之意就是要求你把递归转化成非递归。第二个题是链表的,要求依照给出的结构体依次实现输入链表,保存链表,删除链表,从磁盘读取链表,显示链表这几个操作。做这个题,如果不记得保存文件的函数,很可能做不全或者做不出来。第三个是要求根据 - | / 四个字符来实现题目所规定的一个长方体。并能使这个长方体适当的放大。这个是一个递归问题

2、,但是我想了半天也没有做出来。20061输入一个数列以 0 位结束标志,建立链式线性表,查找其中最大的数并输出删除释放节点,然后对剩余的进行排序,并输出释放节点2输入一个数列以 0 位结束标志,建立二叉遍历数,并对其进行逆中序遍历,释放空间第一题是 对输入的 5 个数排序,输出的结果到文件里。第二题是 用链表去对上面的 5 个数字排序。第三题是 输入一个 ip 地址串,判断是否合法。2005第一题:对给定的一个字符串,找出有重复的字符,并给出其位置,如:输入:abcaaAB12ab12输出:a,1;a,4;a ,5;a,10b,2;b,111,8;1,122,9;2,13第二题:输入一个四行五

3、列的矩阵,找出每列最大的两个数,如:输入:1 2 3 4 9-1 4 9 8 812 9 8 7 07 8 9 7 0输出:12 9 9 8 97 8 9 7 8第三题:输入一个字符串,建立一个二叉排序树,并中序遍历输出;其它年份题目1.给出年分 m 和一年中的第 n 天,算出第 n 天是几月几号(提示中给出了判断闰年的方法) ,按 yyyy-mm-dd 的格式打印出来2.职工有职工号,姓名,年龄.输入 n 个职工的信息,找出 3 个年龄最小的职工打印出来,n 可以取 63.n 个人排一圈 123 报数,报到 3 的人退到圈外,直到剩最后一个人为止4.冒泡排序。5.建立二叉树,并中序遍历。6.

4、生成一个长度为 21 的数组,依次存入 1 到 21;建立一个长度为 21 的单向链表,将上述数组中的数字依次存入链表每个结点中;将上述链表变为单向封闭(循环) 链表;从头结点开始数,将第 17 个结点删除,将它的下一个结点作为新的头结点;重复上述过程,直到该链表中只剩一个结点,显示该结点中存入的数字。08 年的华科招收外校保送生上机试题:(1)输入一个十进制数,将其先转化为八进制数,然后再输出(2)用户输入一个文本名,编程实现输出文本中最长的一行和最短的一行。如果最长和最短的不止一行,请全部输出。(3)输入学生信息:学号,三门课程的成绩,学号为 0 时结束,将其存储在链表 A 中,从中找出分

5、数大于平均分的学生,并将该学生信息按平均分降序排列存入到链表 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,5a,6; a,8

6、; a,92,输入一个 5 行 4 列的的矩阵,输出每列最大两个元素3.建立一个链表,以输入 0 为结束,删除其中数值最大的元素,并输出后删除元素后的链表(不能用数组)2000 年1. 输入 n,求 y1=1!+3!+.m!(m 是小于等于 n 的最大奇数) y2=2!+4!+.p!(p 是小于等于 n 的最大偶数)2。输入一个 55 的矩阵,判断是否对称3。建立一个升序链表并遍历2002 年1、编一个程序,读入用户输入的,以“.”结尾的一行文字,统计一共有多少个单词,并分别输出每个单词含有多少个字符。 (凡是以一个或多个空格隔开的部分就为一个单词)2、守形数是这样一种整数,它的平方的低位部分

7、等于它本身。比如 25 的平方是625,低位部分是 25,因此 25 是一个守形数。编一个程序,找出 2-100 之间所有的守形数。3、编一个程序,读入用户输入的一串先序遍历字符串,根据此字符串建立一个二叉树(以指针方式存储) 。例如如下的先序遍历字符串:ABC#DE#G#F#其中“#”表示的是空格,空格字符代表空树。建立起此二叉树以后,再对二叉树进行中序遍历,输出遍历结果。屏幕的格式化输出:给出一幅图形,用程序实现。如下所示。AA AAAB BA AB BAABC CBA AAAB BA (输入字符 B)AA(输入字符 C)指针构建链表结构:输入一组数据,构建一个升序链表,完成插入,删除,遍

8、历功能。例如, 输入 1 8 5 4 3;构建 head-1-3-4-5-8-NULL;遍历 1 3 4 5 8;插入 6 遍历 1 3 4 5 6 8删除 5 遍历 1 3 4 5 81。求 N 的阶乘,其中 0 main() int a = 0 ; printf (Please enter a decimal number:) ; scanf (%d,&a) ; printf (%ds octal number is %on,a,a) ; (2)用户输入一个文本名,编程实现输出文本中最长的一行和最短的一行。如果最长和最短的不止一行,请全部输出。#include #include #incl

9、ude #define BUFFSIZE 1000 int main()FILE *fp;char filename255;char tempMaxBUFFSIZE;char tempMinBUFFSIZE;int i=0;int cnt=0;printf(input file name:);scanf(%s,filename);if (NULL=(fp=fopen(filename,r)printf(file open error!);return 0;char LineBUFFSIZEBUFFSIZE;while(fgets(Linei, BUFFSIZE, fp)&istrlen(tem

10、pMax)strcpy(tempMax,Linei);if(strlen(Linei)#include #include typedef struct nodechar xuehao20;int chengji3;float av;struct node *next;stud,*UerInfo; int main()UerInfo ui;ui=(UerInfo)malloc(sizeof(stud);UerInfo p=ui;UerInfo q=ui;UerInfo tempB=ui;printf(input students information:n);int cnt=0;while (1

11、) printf(input 学号:);scanf(%s,ui-xuehao);if(strcmp(ui-xuehao,0)=0)break;printf(input 成绩:);scanf(%d,&ui-chengji0);printf(input 成绩:);scanf(%d,&ui-chengji1);printf(input 成绩:); scanf(%d,&ui-chengji2);ui-av=(ui-chengji0+ui-chengji1+ui-chengji2)/3);ui-next=(UerInfo)malloc(sizeof(stud);ui=ui-next;cnt+;int c

12、hengji1=0;int chengji2=0;int chengji3=0;while (p&strcmp(p-xuehao,0)!=0)chengji1+=p-chengji0;chengji2+=p-chengji1;chengji3+=p-chengji2;p=p-next;float chengji1av=0.0;float chengji2av=0.0;float chengji3av=0.0;float avfinal=0.0; if(cnt)chengji1av=(float)chengji1/(float)cnt;chengji2av=(float)chengji2/(fl

13、oat)cnt;chengji3av=(float)chengji3/(float)cnt;avfinal=(chengji1av+chengji2av+chengji3av)/3;printf(高于平均分的有:n);while (q&strcmp(q-xuehao,0)!=0)if(q-avavfinal)printf(%sn,q-xuehao);printf(%fn,q-av);q=q-next;printf(n 降序排列如下: n);UerInfo s;s=(UerInfo)malloc(cnt*sizeof(stud); int k=0;UerInfo temp=tempB;while

14、 (tempB&strcmp(tempB-xuehao,0)!=0)sk.av=tempB-av;sk.chengji0=tempB-chengji0;sk.chengji1=tempB-chengji1;sk.chengji2=tempB-chengji2;strcpy(sk.xuehao,tempB-xuehao);tempB=tempB-next;k+;int l,m;stud temps;for (l=0;l#include int getMat(int a56,int n,int m)int i;int j;for (i=0;i #include #include void main

15、() int i; int bIsSame = 1;/是否相同的标志int a=0,b; char f 255; scanf(%s,f); /读入字符串b = strlen(f)-1; /获得最后一个字符的序号(字符串总长度减)for(i=0;i#include void TwoDto1D(int a66,int b36)int i,j; for (i=0;i#include #include #define BUFFERSIZE 1000int main(int argc, char *argv)if (argcint check(char *str) char *temp=str;if (!(*temp=_|(*temp=a&*temp=A&*temp=a&*temp=A&*temp=0&*temp#include #include typedef struct nodeint i;struct no

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 实验/测试

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号