《程序设计语言c》试卷a2011.06

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2010-2011学年第二学期《程序设计语言C 》试卷(A 卷)

授课班号 年级专业 学号 姓名

一、选择题(共20分,1分/空)

1.以下常数表达不正确的是 。

A ..5’ B.’55’ C.’\x55’ D.0x55

2. 以下属合法用户标识符的是 。

A. struct

B. float

C. Int

D. double

3. 若以下说明语句:char x; float y; double z;

则表达式x-y+z 的类型为 。

A. int

B. double

C. float

D. char

4. 设int a=3,b=5,m ,执行表达式m=a<=3&&a+b<8后,m 的值为 。

A. true

B. false

C. 0

D. 1

5. 表示关系x 大于等于y 大于等于z,C 语言表达式 。

A .(x>=y)&&(y>=z)

B .(x>=y)AND(y>=z)

C .(x>=y>=z)

D .(x>=y)&(y>=z)

6. 若x 为整数,C 语言正确表达数学式0≤x<5的是 。

A .0<=x<5

B .x=0||x=1||x=2||x=3||x=4

C .x>=0||x<5

D .!(x<0||x>=5)

7. C 语言中break 和continue 语句说法正确的是

A .break 语句只应用于循环体中

B .continue 语句只应用于循环体中

C .break 是无条件跳转语句,continue 不是

D .break 和continue 的跳转范围不够明确,容易产生问题

8. 下述赋值语句错误的是 。

A .a=(b=(c=2,d=3));

B .i++;

C .a /b=2;

D .a=a

9. 设定义:char *a[2]={"abcd","ABCD"},则正确说法是 。

A .a 数组元素的值分别是"abcd"和"ABCD"

B .a 是指针变量,它指向含有两个数组元素的字符型一维数组

C .a 数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址

D .a 数组的两个元素中各自存放了字符'a'和'A'的地址

10. 设定义int a[]={1,2,3,4,5,6,7,8,9,10}, *p=a,i;

则数组元素地址正确表示为。

A.a++ B. a+1 C. &p D. &(a+1)

11. 若说明:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;

则值为6的表达式是。

A.*p+=5 B.*(p+6) C. *p+6 D.p+5

12.有定义 int *p=NULL;,下述正确说法为。

A. p指向的单元的值为0

B. p指向的单元的值为NULL

C. p不指向任何有效单元

D. p指向的变量的值为0

13. 函数定义如下:

int fun(char*x)

{

char*y=x;

while(*y++);

return(y-x-1);

}

该函数功能是。

A.求字符串的长度 B.比较两个字符串的大小

C.将字符串x复制到字符串y D.将字符串x连接到字符串y后面

14.数组作为函数参数传递的是。

A. 数组的首地址

B. 数组元素个数

C. 数组中各元素值

D. 数组的大小

15.设语句定义char a[80]= "0123\0789";,则sizeof(a)和strlen(a)的值分

别为。

A. 80和8

B. 80和7

C. 80和5

D. 80和6

16. 若定义:char s[20]="programming",*ps=s;

则不能表示字符‘o’的是。

A.ps+2 B.s[2] C.ps[2] D.*(ps+2)

17. 设语句float (*p)(int,int),该语句作用是。

A.函数原型说明

B.变量定义, p为指向函数的指针变量

C.变量说明,p为指向float型的指针变量

D.函数定义,p为函数名

18. 定义共用体 struct{ char name[10]; int id; double score ;}stu;

则sizeof(stu)为。

A.32 B. 24 C.18 D.20

19. 设宏定义:#define f(x) (-x*2),执行语句:printf(“%d\n”,f(3+4))

输出为。

A. -5

B.5

C. 2

D.-14

20. 设以下说明语句:

struct ex { int x ; float y; char z ;} example;

则下述说法中不正确的是。

A. struct是结构体类型的关键字

B. struct ex是结构体类型名

C. example是结构体类型名

D. example是结构体变量名

二、基本概念题(共10分,1分/空)

1.使用TURBO C系统编译C语言源程序后生成的文件名后缀是。

2.C程序函数返回值默认类型为。

3.若字符‘B’的ASCII码为66,则ASCII码为89的字符是。

4.操作符& 为单目运算时表示,为双目运算时表示按位与运算。

5.除goto语句外,循环结构中语句可提前结束本次循环直接进入

下次循环。

6.若语句段”int a[10],*p=a,*q;q=&a[5];”,则表达式q-p的值

为。

7.执行语句段”int x=0x6c;printf(“x=%d\n”,x);”,输出结果

为。

8.执行语句序列”int a,b;a=b=2;a+=b%3;”,变量b的值是。

9.C语言中函数传参数有两种方式,分别是传值和。

10.C语言中以作为字符串结束标志。

三、阅读程序题(共20分,2分/空)

1.

程序输出第一行结果是 [1]

程序输出第二行结果是 [2]

程序输出第三行结果是 [3]

#include

void main()

{

int g[8]={1,2,3,4,5,6,7,8},sum=0,i;

for(i=0;i<8;i+=2)

{

sum+=g[i];

g[i]=g[i]/2;

}

printf(“%d\n”,sum);

printf(“%d\n”, g[0]);

printf(“%d\n”, g[7]);

}

相关文档
最新文档