山西大学攻读硕士学位研究生入学考试试题_山西大学研究生

2020-02-28 其他范文 下载本文

山西大学攻读硕士学位研究生入学考试试题由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“山西大学研究生”。

山西大学2007年攻读硕士学位研究生入学考试试题

一、单项选择题

1、‘t’表示什么? ①字符串常数

答案:④

2、对宏定义不正确的描述是哪一个?

①在进行宏定义时,可以引用已经定义的宏名,可以层层置换 //可以引用已经定义了的宏名,可以层层置换 ②宏名的有效范围包括本文件的任何位置

//宏名的有效范围定义命令之后到本源文件结束,可以用#define终止宏定义的作用域

③宠定义不是语句,不必在行末加分号 //是预处理定义语句

④对程序中双引号括起来的字符串,即使与宏名相同,也不进行置换

3、若定义static char s[20]=”computer”;则执行语句x = strlen(s);之后,x的值为多少?

①20

②9

③8

④19 //strlen函数计算char*型字符串的长度的时候,并不包含末尾的;

4、以下哪一个表达式取值是正确的? ①6>5结果为6 ③6||5结果为75、如定义

enum weekday {one, two, thr, fou, fiv}; enum weekday working;

以下哪个是不正确的枚举变量的使用? ①working = thr;

②working =2;③working =(enum weekday)2;④working =(enum weekday)(5-3);//不能对其赋值

6、下列说法中正确的是哪一个? ①sizeof(char)是结果为整型的表达式 ②sizeof(char)是一个不合法的表示形式 ③sizeof(char)是一种函数调用 ④sizeof(char)是结果为实型的表达式

②标识符

③变量

④字符常量

②6&&5结果为7 ④6

二、阅读程序,并回答问题

1、下列程序的输出是什么?

# include void main()﹛

char * aplha [6] = ﹛“ABC”,“DEF”,“GHI”,“JKL”,“MNO”,“PQR”﹜; char **p;int i;p = aplha;for(i = 0;i

//输出结果 ABCDEFGHIJKL 刚好是字符串数组里面的前四个元素的内容连接起来

2、下列程序为什么无法将用户输入的三个整数按从小到大排序输出?应该如何修改?

# include void swap(int x, int y)﹛

int t = x;x = y;y = t;﹜ void main()﹛

int a, b, c;scanf(“%d, %d, %d”, &a, &b, &c);if(a>b)swap(a, b);if(a>c)swap(a, c);if(b>c)swap(b, c);2

printf(“%d, %d, %d”, a, b, c);﹜

//函数swap采用值传递,虽然将形参x和y交换了,但是并不影响到实参。将值传递改成指针传递就可以了。

C函数参数采用值传递方式,虽然swap函数将形式参数x和y的值进行了调换,但是影响不到相应的实在参数。所以在主函数中,通过调用sawp函数调换a和b(或a或c,或b和c)的值是根本达不到目的的。

修改:(1)

void swap(int *x, int*y)﹛ int t = *x;*x = *y;*y = t;﹜

(2)主函数

if(a>b)swap(&a,&b); if(a>c)swap(&a,&c); if(b>c)swap(&b,&c);

3、假设系统为基本整型量分配2个字节,为字符型量分配1个字节。下列程序完成的功能是什么?

# include union ﹛

int n;char ch [2];﹜u;void main()﹛

int m;scanf(“%d”,&m);u.n = m;printf(“n%u, %u”,u.ch[0], u.ch[1]);3

//该程序的功能,取用户输入的整数值的高字节和低字节,并按照任意整数的低字节和高字节分别输出。

三、程序设计题

假设一个文本文件中保存着100个整数,请将这100个整数按从小到大的顺序写到另一个文本文件中去,并且在新文件中每10个整数占一行。源文件名和目标文件名通过命令行参数获取。

分数分配: 变量定义

文件打开

文件读 排序

文件写

命令行参数处理

文件关闭

# include void main(int argc, char *argv[])﹛

FILE *fin, *fout;Int a [100], i, j, t;if(argc!=3)﹛

printf(“ You forgot to enter a filenamen”);return;﹜

fin = fopen(argv[1], “r”);fout = fopen(argv[2], “w”);for(i = 0;ia[j+1])﹛t = a[j];a[j] = a[j+1];a[j+1]=t;﹜ for(i = 0;i

if(i%10 = 0)fprintf(fout, “%s”, “n”);fprintf(fout, “%d”, a[i]);﹜ fclose(fin);fclose(fout);﹜

《山西大学攻读硕士学位研究生入学考试试题.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
山西大学攻读硕士学位研究生入学考试试题
点击下载文档
相关专题 山西大学研究生 研究生入学考试 试题 攻读硕士学位 山西大学研究生 研究生入学考试 试题 攻读硕士学位
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文