2010和2011年计算机c程序设计真题及答案

更新时间:2023-10-27 19:56:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

二O一O年硕士学位研究生招生入学考试试题

考试科目:计算机程序设计 代码:927

1. 填空题20题,每题1分

1) 程序的三种基本的控制结构是: 顺序结构 、 选择结构 、 循环结构 。 2) 外部函数的储存类型是 ,它既可以在本编译单位中被调用,又可以在 中被调用。 3) 若a函数中调用了b函数,而b函数又调用了c函数,这种调用称为 调用。若a函数中调

用了b函数,而b函数又调用了a函数,这种调用称为 调用。 4) “*”称为 指针 运算符,“&”称为 取值 运算符。 5) 表示结构体成员的“ . ”称为 成员(分量) 运算符,“ -> ”称为 分量 运算符。 6) 如果调用fopen函数不成功,则函数返回值为 0 ;如果调用fclose函数不成功,则函数返

回值为 EOF 。

7) C++语言中有 // 和 /*与*/ 二种注释方法。 8) 在C++中用关键字 class 来定义新的类。

9) 若有以下定义,则不移动指针p,且通过指针p引用值98的数组元素的表达式是 。

int w[10]={23,54,10,33,47,98,72,80,61,102}, *p=w;

10) 位运算:0x1a2c&0x1a79 的运算结果是(用八进位制形式写出) 015050 。 2. 程序填空题4题,每题5分

1) 下列程序的功能是计算1-10之间偶数之和,请填空。

#include void main( ) { int a, b,i: a=0;b=0;

for ( i=0;__i<=10_____;i+=2) { a+=i;

(2) ; }

cout<<“偶数之和为:”<

2) 下列程序是将一个正整数n的各个位向左循环移动4位,请在程序的横线上填写适当的内容。 #include void main(void) { int k,n,a;

scanf(“%d”,&n); k=n&0xf000; k= >>12 ; a=n<<4;

a=k | a;

printf(“n=%o\\n a=%o\\n”,n,a); }

3) 下面是字符串拷贝函数,请填空。 # void ccopy( )

{ char ch1[]=”good morning!”, ch2[20]; int i=0,j=0;

while ( ch1[i]!=null ) { ch2[j]= ch1[i] ; i++ ; }

return ch2[j]; }

第 1 页 ,共 9 页

4) 根据注释和提示,填写函数调用语句。 #include class A

{ public: A(int k=0) {i=k;} void show() {cout<

void main()

{ A *p=new A(5); (A.*p)() ; //调用p所指向的类对象的显示成员函数 }

3. 程序设计题2题,每题10分

1) 编辑一个程序,要求打印出1~100间既不能被5整除,也不被6整除的数且每行输出5个。 #include main()

{ int i,n; for(i=1;i<=100;i++) {

if(i%5!=0&&i%6!=0) {

printf(\ n++; } if(n%5==0) printf(\ } }

mnm n

2. 编辑一个程序,可以输入实数x,y以及整数m,n,求x与y的积,并显示出结果x* y。(提示:建立一个函数xm, 然后调用) #include

float fun(int a,float b) { int i; float s=1;

for(i=1;i<=a;i++) s*=b;

return s; }

main()

{ float k,x,y; int m,n;

scanf(\ k=fun(m,x)*fun(n,y);

printf(\}

第 2 页 ,共 9 页

2011年硕士学位研究生招生入学考试试题

考试科目:计算机程序设计 代码:927

? 选择题40题(每题1.5分,共60分) 1. 面向过程的程序设计语言是 。

A) 机器语言 B) 汇编语言 C) 高级语言 D) Java语言 2. C语言源程序是由 构成的。

A)、主函数与子函数 B) 一个主函数与一个其他函数 C) 一个主函数与若干个子函数 3. 下列叙述中不正确的是 。

D) 主函数与子程序

A) 注释说明只能位于一条语句后面 B) 注释说明被计算机编译系统忽略

C) 注释说明必须放在/*和*/之间 D) 注释符“/”和“*”之间不能有空格 4. 下列保留字中正确的一组是 。

A) integer, float

B) read, data C) const, double

D) void, int

5. 下列标识符中,合法的用户标识符是 。 A) B#123 B) _1234 C) void

D) xy*

6. C语言语句一行写不下时,可以 。

A) 用逗号换行 B) 用分号换行 C) 在任意一空格处换D) 用Tab键(回车符)换行 7. 设有语句int a=4;则执行了语句a+=a-=a*a后,变量 a的值是 。 A) 24 B) -24 C) 4 8. 已知int i;float d;正确的语句是 。

D) 16

A) (int)d B) int(d)%i C) int(d%i) D) (int)d%i 9. 若定义:int w=1,x=2,y=3,z=4,a=5,b=6; 则执行语句(a=w>x)&&(b=y>z);后,a、b的值为 。 A) 1和1 B)0和6 C) 5和0 D) 0和0 10. 在C语言中,逻辑值“真”用 表示。

A) true B) 正数 C) 非0 整数 D) 非0 的数 11. 下列if语句中不正确的是 。 A) if(x>y); B) if(x==y) x+=100;

C) if(x

A) 0

B) 1

C) true

D) 非0

13. 在C语言中,一维数组下标的最小值是 。 A) 1 B) 0 C) 视说明语句而定

D) 无固定下限

14. 若有语句:int a[10];则该语句说明了整型数组a有 个数组元素。 A) 10 B) 11 C) 1 D) 不确定 15. 设有数组定义了:char array []=\;则数组所占空间为 字节。 A) 4个 B) 5个 C) 6个 16. 若有语句char str1[10],str2[10]={ \

D) 7个

则将字符串book赋给数组str1的正确语句是 。

A) str1={ \B) strcpy(str1,str2) C) str1=str2 D) strcpy(str2,str1) 17. 以下描述中,不正确的是 。 A)

调用函数时,实参与形参在数目次序和类型上应一一对应

第 3 页 ,共 9 页

B) C) D) 调用函数时,将为形参分配单元

调用函数时,实参数组与形参数组的类型必须一致 调用函数时,形参必须是整形或字符型

18. 对于C程序的函数,下列叙述中正确的是 。 A) 函数的定义不能嵌套,但函数调用可以嵌套 B) C) D)

函数的定义可以嵌套,但函数调用不能嵌套 函数的定义和调用均不能嵌套 函数的定义和调用均可以嵌套

19. 以下所列的各函数头中,正确的是 。

A) void play(a:interger, b:interger) B) void play(int a, b) C) void play(int a, int b)

D) sub play(a interger, b interger)

20. C语言中函数返回值的类型是由 决定的。 A) return 语句中的表达式类型 B) C) D)

调用该函数的主调函数

调用函数时临时

定义函数时所指定的函数类型

21. 已知“int *p, a;”,则语句“p=&a;”中的运算符“&”的含义是 A) 逻辑与运算 B) 位与运算 C) 取指针内容 D) 取变量地址 22. 若已定义 a 为 int 型变量,则对p的说明和初始化正确的是 。

A) int *p=a; B) int p=a; C) int *p=*a; D) int *p=&a; 23. 若x是整型变量,pb是基类型为整型的指针变量,则正确的赋值表达式是 。 A) pb=&x; B) pb=x; 24. 以下正确的叙述是 。 A).C语言的主函数是无参函数 25. 已知struct { int i; char c; float a; } ex;

则“sizeof(ex); ”的值是 。

A) 4 B) 5 C) 6 D) 7 26. 已知union

{ int i; char c; float a; } ex;

则“sizeof(ex); ”的值是 。

A) 4 B) 5 C) 6 D) 7 26. 以下对C语言中共用体类型数据的叙述正确的是 。 A 可以对共用体变量名直接赋值 B 一个共用体变量中可以同时存放其所有成员 C 一个共用体变量中不能同时存放其所有成员 D 共用体类型定义中不能出现结构体类型的成员 27. 以下关于 typedef 的叙述不正确的是 。

第 4 页 ,共 9 页

C) *pb=&x; D) *pb=*x;

B).C语言的主函数最多允许有1个参数

C).C语言的主函数最多允许有2个参数 D).C语言的主函数可以有2个以上参数

A) B) C) 用 typedef 可以定义各种类型名,但不能用来定义变量 用 typedef 可以增加新变量

用 typedef只是将已存在的类型用一个新的名称来代表

D) 使用 typedef 便于程序的通用和移植

28. 设a=5,b=3,则表达式a^b<<2的值(二进制表示形式)是 。 A) 00011000 B) 00001101 29. 以下运算符优先级最高的是 。 A)^ B) & C) |

优先级 1 2 3 4 5 6 7 8 9 10 11 12 13 14 类别 基本 单目 乘法与除法 加法与减法 移位运算 关系运算 条件等 位逻辑与 位逻辑异或 位逻辑或 条件与 条件或 条件 赋值 运算符 (x) x.y f(x) a[x] x++ x――new typeof sizeof checked unchecked + - ! ~ ++x ――x (T)x * / % + - << >> ﹤ > <= >= is = = ! = & ^ | && ‖ ?: = *= /= %= += -= <<= >>= &= ^= |= C) 00000100

D) ~

D) 00001001

30. 表达式 a

D) <,&,||

D) 0xaf

C) 0x15

32. 若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)的返回值是 。 A) -1 B) 0 C) 非0值 D) NULL

33. 若要用fopen函数打开一个二进制文件,用于先写后读操作,则打开文件的模式为 。 A) “ab+” B) “wb+” C) “rb+” D)“ab+” 34. 在C语言中,可以把整数以二进制形式存放到文件中的函数是 。 A) fprintf() B) fread() C) fwrite() D) fputc()

35. fgetc函数的作用是从指定的文件读入一个字符,该文件的打开方式必须是 。 A) 只读 B) 追加 C) 读或读/写 D)B和C都正确 36. 关于C++与C语言的关系描述中, 是错误的。 A、C语言是C++的一个子集 B、C语言与C++是兼容的

C、C++与C语言都是面向对象的 D、C++对C语言进行了一些改进 37. 在C++语言中, 是动态分配运算符。

第 5 页 ,共 9 页

本文来源:https://www.bwwdw.com/article/2cq2.html

Top