华科考研上机题合集

来源:网络收集 时间:2025-04-29 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xuecool-com或QQ:370150219 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

一、上机题

1、将ss所指字符串中所有下标为奇数位置的字母转换为大写(若该位置上不是字母,则不转换)。举例:若输入abc4Efg,则应输出aBc4EFg

(c++)

#include #include using namespace std; int main() {

char ss[10]={'0'}; int i;

for(i=0;i<10;i++) ss[i]='0'; cin.getline(ss,10); for(i=0;ss[i]!='0';i++) {

if((i%2==1)&&ss[i]>'a'&&ss[i]<'z') ss[i]+=('A'-'a'); }

for(i=0;ss[i]!='0';i++) cout<

system(\} (c)

#include #include int main() {

char ss[10]; int i;

printf(\ scanf(\

for(i=1;ss[i]!='\\0';i=i+2) {

if(ss[i]>='a'&&ss[i]<='z') ss[i]=ss[i]-32; }

printf(\ printf(\ return 0; }

2、在半个中国象棋棋盘上,马在左上角(1,1)处,马走日字...而且只能往右走...不能向左...可上可下...求从起点到(m, n)处有几种不同的走法.

3、给定任意俩组字符串S1和S2,请编程输出他们间的最大相同子串。例如:S1=12abc78, S2=7bc2,则输出为:bc 。

4、已知一颗二叉树S的前序遍历和中序遍历序列,请编程输出二叉树S的后续遍历序列。 (举例:pred[]/先序:A、B、D、E、C、F、G;inod[]/中序:D、B、E、A、C、G、F;后序遍历序列是:D、E、B、G、F、C、A)

5、在一个整形数组a中既有负数又有正数,编写一个算法将a中所有负数移到整数之前,要求其时间复杂度为O(n),n为数组长度,并且只使用常数个辅助空间。

例如:a[ ]={1,2,3,4-1,1,-2,-1,-4}执行算法后的输出为a[ ]={-4,-1,-2,-1,1,4,3,2,1}

6、编写一个C函数,输入一个二叉树的根节点,返回这棵树中所有值大于0的节点值之和,如果根伟空,返回0.

二叉树的链式存储结构对应的C语言的节点类型定义如下: Typedef struct node{ ElemType data;

struct node *lchild; struct node *rchild; }BTree;

7、A是一个长度为N的整形数组,其中可能包含重复的元素,例如A={1,2,2,3,2,1,3,2},删除数组中相同的元素后得到{1,2,3},

a) 如果数组没有排序,写一个C语言函数,输入参数为数组首地址和长度,删除其中重复的元素,返回删除后的数组的长度。

b) 上述函数的时间复杂度为多少,以删除前的数组长度N表示。

c) 如果数组A已经排好序,设计并写出一个C语言函数完成a)中的工作,要求时间复杂度是O(N) 。

8、写一个C语言函数将一颗二叉树用层序遍历列出所有节点,即先列出根节点,再从左向右列出深度为1的节点的值,然后再左向右列出深度为2的节点的值,如此继续。数的节点类型TREENODE包含一个整型值Value和俩个指针:LeftChild和RightChild。可以使用的函数(不限于)包括MaleEmptyQueue (QUEUE *q), EnQueue (QUEUE *q,TREENODE *tn) DeQueue (QUEUE *q,TREENODE *tn) , IsEmpty (QUEUE *q) , DisposeQueue (QUEUE *q)。

9、假设以下关于堆栈的库函数已经给出,unsigned char is empty ();检查堆栈是否为空,如果是,返回1;否则返回0. void push (char element);把一个char型的数据element 推入栈顶。

Char pop (); 弹出栈顶的char型数据。

(1) 利用这些库函数设计一个C语言的函数unsigned char isBalanced (char

*string) ,来检查字符串string 中的括号(),[],{}是否平衡,如果平衡,该函数返回1,否则返回0.

(2) 你所设计的函数时间复杂性是多少(假定字符串string 长度为n)?

10、在一棵高度为O(logn)的二叉排序树的结点上存储着浮点数,请用C语言写一个函数来计算一棵树上界于任意俩个浮点数x1和x2 (x1

11、打印出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。(8分)

(举例:153=1*1*1+3*3*3+5*5*5) #include void main() {

int i=0,j=0,k=0; for(i=1;i<=9;i++) }

for(j=0;j<=9;j++)

for(k=0;k<=9;k++) { }

if((i*100+j*10+k)==(i*i*i+j*j*j+k*k*k)) { }

printf(\ printf(\

12、求数列s(n)=s(n-1)+s(n-2)的第n项的值。其中s(1)=s(2)=1。要求任意给定n,输出s(n)。(7分)

#include

int function_s(int n); void main() {

int number;

printf(\ scanf(\ function_s(number);

printf(\}

int function_s(int n) { }

if(n==1)

return 1;

else if(n==2)

return 1;

else

return function_s(n-1)+function_s(n-2);

13、按要求输出:在三位整数(100至999)中寻找符合条件的整数并依次从小到大存入数组中;他既是完全平方数,又是两位数字相同,例如144,676等。 #include void main() {

int i,j,k=0; int a[9],*p; p=a;

for(i=100;i<1000;i++) for(j=0;j<100;j++) {

int a,b,c; a=i; b=i/10; c=i/100;

if((a==b||a==c||b==c)&&(i==j*j)) { *p=i; p++; } }

for(k=0;k<9;k++) printf(\}

百度搜索“70edu”或“70教育网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,70教育网,提供经典综合文库华科考研上机题合集在线全文阅读。

华科考研上机题合集.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.70edu.com/wenku/185883.html(转载请注明文章来源)
Copyright © 2020-2025 70教育网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:370150219 邮箱:370150219@qq.com
苏ICP备16052595号-17
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:7 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219