c语言程序导论考试题目,新致软件笔试题目

新致软件笔试快要开始了,下面CN人才网小编为大家带来的是2017新致软件笔试题目,希望对大家有所帮助~

一. 数据库概论(15分)

1. 请说出视图的三个优点。(4分)

2. 请说明关系模型三类完整性的具体含义:(3分)

3. 设有学生关系表s,有字段sno(学号,主键),sname(学生名),sdiv(所属系名);另有课程关系表c,有字段cno(课程号,主键),cname(课程名);和学生选课关系表sc,有字段sno(学号),cno(课程号),grade(学习成绩),sno和cno 为主键;

表s,有字段sno(学号,主键),sname(学生名),sdiv(所属系名);

表c,有字段cno(课程号,主键),cname(课程名);

表sc,有字段sno(学号),cno(课程号),grade(学习成绩),sno和cno为主键。

(1) 请用一条sql语句完成:选出所有数据结构这门课的成绩超过80分的计算机系的学生姓名。(4分)

(2) 请用一条sql语句求选修课程超过3门的学生学号。(4分)

二. 计算机网络(15分)

1. 请简述tcp协议和udp 协议的区别。(3分)

2. 设二维数组f的行下标为1至5,列下标为0至8,f的每个数据元素均占4个字节,在按行存贮的情况下,已知数据元素f[2,2]的第一个字节是1044。则f[3,4]和f[4,3]的第一个字节的地址分别为 和 。数组第一个元素的第一个字节和数组最后一个元素的最后一个字节的地址分别为 和 。

3.请说出遍历二叉树有几种方法并分别描述它的基本思想。(8分)

三.操作系统(15分)

1.操作系统是一种系统软件,它有许多种类。pc-dos是一种a操作系统,windows是具有图形界面的b运行方式的操作系统。windows应用程序之间可以方便地通过c交换数据。将正在运行的应用程序窗口最小化后,该应用程序处于d状态。e是在体系结构采用了客户机/服务器模式的网络操作系统。(6分)

供选择的答案

a:(1)分时 (2)多用户 (3)单用户 (4)分布式

b:(1)单任务 (2)多任务 (3)单用户 (4)多用户

c:(1)邮箱 (2)文本区 (3)对话框 (4)剪贴板

d:(1)运行 (2)挂起 (3)停止 (4)推出

e:(1)windows95 (2)windowsnt (3)windows98 (4)wiindows3.2

2.什么是线程?线程和进程的主要区别是什么?(2分)

3. 名词解释:逻辑地址、物理地址、地址映射。(3分)

4. 什么是进程的同步和互斥?同步和互斥这两个概念有什么区别和联系?(4分) content">

四.c语言程序设计和数据结构(40分)

1. 举例说明左加(++i)及右加(i++)的区别。(4分)

2. 举例说明struct和union的区别(4分)

3. 说明unsigned char和char 的区别,在什么情况下用unsigned char,什么情况下用char?(4分)

4. 写一个函数,输入参数是一个排序二叉树的头指针和关键值,在排序二叉树中检索和输入关键值相同的ikey,如果检索到,返回相应的pdata,否则返回null.(8分)

5. 在有序表(升序排列)st中折半查找关键字等于key的数据元素,若找到则函数值为该元素在st表中的位置,否则返回0.假定st表的定义如下:

typedef struct tagkeytype{

keytype key;

} keytype;

typedef struct tagsstable{

elemtype * elem;

int length;

}sstable;

试写出下列函数。(10分)

int search(sstable st,keytype key)

{

}

6. 阅读以下程序说明和c程序,将答案写在后面的空白处。

本程序所列函数replace(char *s1,char *s2,char *str1,char *str2)实现当已知字符串s1中有与字符串str1相同的字符列时,就把该字符拷贝到字符数组s2;当从某字符开始能够成一个与字符串str2相同的字符列时,就将字符串str2的个字符拷贝到字符数组s2,并继续访问字符串s1中那个字符列之后的字符,直至字符串s1被访问完,字符复制即告结束。

如程序中所列数据abcdefg ababcd abab,

程序运行输出为:abcxyzdefg ababcxyzdd abab

程序:

replace(char *s1,char *s2,char str1,char *str2)

{

char *t0,*t1,*t2;

while ((1))

{

for (t0=s1,t1=str1;*t1!=’\0’ && (2), t0++,t1++)

if(*t1!=’\0’) *s2++=(3);

else

{

for(t1=str2;*t1!=’\0’)

*s2++=(4)

(5)

}

*s2=’\0’;

}

main()

{

char s1[]=”abcdefg ababcd abab”;

char s2[80];

replace(s1,s2,”abc”,”abcxyz”);

printf(“%s ”,s2);

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值