09年桂林电子科技大学C语言试卷A__有答案

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

桂林电子科技大学试卷

2009-2010 学年第 2 学期课号0921306等

课程名称C语言程序设计A (A卷; 闭卷)适用班级(或年级、专业)7院09级

考试时间120 分钟班级学号姓名

第一部分:基础知识(20题,共20分)

1、表达式18/4*2/8值的数据类型为()

A)int B)float C)double D)不确定

2、在C语言中,int, char和short int三种类型变量所占用的内

存大小是()。

A)均为2个字节 B)由用户自己定义 C)由所用机器的字长决定 D)是任意的

3、C语言中函数返回值的类型是()

A)return语句中的表达式类型 B)调用函数的类型

C)总是int型 D)定义函数时所指定的函数类型

4、凡是在函数中未指定存储类别的变量,其隐含的存储类别是

()

A)自动B)静态C)外部D)寄存

5、以下不正确的描述是()

A)break语句只能用于循环语句和switch语句

B)在switch语句中,break语句的作用也可用continue语句来

替代

C)在循环语句中,使用continue语句是为了结束本次循环,

而不是终止循环的执行

D)在循环语句中,使用break语句是为了使流程跳出循环体,

提前结束循环

6、以下说法正确的是()

A)输入项可以为一实型常量,如scanf("%f",3.5);

B)只有格式控制,没有输入项,也能进行正确输入,如

scanf("a=%d,b=%d”);

C)当输入一个实型数据时,格式控制部分应规定小数点后的

位数,如scanf (“%4.2f",&f);

D)当输入数据时,必须指明变量的地址,如scan f(“%f",&f);

7、己知各变量的类型说明如下:

int i=8,k,a,b;

unsigned long w=55;

double x=1.42,y=5.2;

则以下符合c语言语法的表达式是()

A)a+=a-=(b=4)*(a=3) B)a=a*3=2

C)x%(-3) D)y=float(i)

8、已知ch是字符型变量,下面不正确的赋值语句是()

A)ch=‟a+b‟; B) ch=‟\0‟; C)ch

=‟7‟+‟9‟; D)ch=5+9

9、有输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,&c),为使变量a

的值为1,b为3,c为2,从键盘输入数据的正确形式应当是______。

A)132<回车>

B)1,3,2<回车>

C)a=l b=3c=2<回车>

D)a=1,b=3,c=2<回车>

10、逻辑运算符两侧运算对象的数据类型()

A)只能是0或l

B)只能是0或非0正数

C)只能是整型或字符型数据

D)可以是任何类型的数据

11、一个c程序的执行是从()

A)本程序的main函数开始,到main函数结束

B)本程序文件的第一个函数开始,到本程序文件的最后一个

函数结柬

C)本程序的main函数开始,到本程序文件的最后一个函数结

D)本程序文件的第一个函数开始,到本程序main函数结束

12、以下程序段()

x=-1;

do

{x=x*x;}

while(!x);

A)是死循环 B)循环执行二次

C)循环执行一次 D)有语法错误

13、以下正确的叙述是()

A)C语言允许main函数带形参,且形参个数和形参名均可由

用户指定

B)C语言允许main函数带形参,形参名只能是argc和argv

C)当main函数带有形参时,传给形参的值只能从命令行中得

D)若有说明:main(int argc,char *argv),则形参argc的值必须

大于1

14、若有宏定义 #define mod(x,y) x%y ,则执行以下程序段后,

输出为()

int z,a=15,b=100;

z=mod(b,a);

printf(“%d/n”,z++);

A)11 B)10 C)6 D)宏定义不合法

15、以下程序中调用scanf函数给变量a输入数值的方法是错误

的,其正确的解释是_()main()

{int *p,*q,a,b;

p=&a;

printf("input a:");

scanf("%d",*p);

……

}

A)*p表示的是指针变量p的地址

B)*p表示的是变量a的值,而不是变量a的地址

C)*p表示的是指针变量p的值

D)*p只能用来说明p是—个指针变量

16、若有说明语句: char s1[4]=”12”; char *ptr;

则执行下列语句后输出为()

ptr=s1;

printf(“%c/n”,*(ptr+1));

A)字符…2‟ B)整数2 C)字符串“12” D)字符…1‟

17、若有以下语句

int x[]={2,4,6,8,10,12},*ptr;

ptr=x;

则对数组元素的正确引用为()

A)x B)x[6] C)*(--ptr) D 、 *(++ptr)

18、若有说明语句:int i,x[3][4];则不能实现将x[1][1]的值赋给变

量i的语句是()

A)i=*(*(x+1)+1) B)i=*(*(x+1)) C)i=x[1][1] D)i=

*(x[1]+1)

19、若用数组名作为函数调用的实参,传递给形参的是____。

A)数组的首地址

B)数组第一个元素的值

C)数组中全部元素的值

D)数组元素的个数

20、若有定义:int a[5];则a数组中首元素的地址可以表示为()

A)&a B)a+l C)a D)&a[1]

相关文档
最新文档