常熟理工C语言题库

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

1.以下对于break语句使用的正确描述是()。

A:可以出现在程序中的任何位置B:只能出现在循环或switch结构中

C:只能出现在switch结构中 D:只能出现在循环结构中

2.以下程序的输出结果为()。

int i;

void prt( )

{ for(i=5;i<8;i++)printf("%c",'*');

printf("\t");

}

main( )

{for(i=5;i<=8;i++) prt( );

}

A:*** B:*** *** *** *** C:*** *** D:* * *

3.已知有声明 char c='1';int x=300;float t=35000;double d=3.1234567e10; ,则

以下表达式求值时除( )外其结果都可能是不准确的。

A:x=t/c B:t=d/x C:t=d/le5f D:t=x+c

4.在C语言程序中,以下说法正确的是()。

A:函数的定义可以嵌套,但函数的调用不可以嵌套B:函数的定义不可以嵌套,但函数的调用可以嵌套

C:函数的定义和函数的调用都不可以嵌套 D:函数的定义和函数的调用都可以嵌套

5.若有以下程序段

int r=8;

printf("%d\n",r>>1);

输出结果是()。

A:16 B:8 C:4 D:2

6.下面四个选项中,均是不合法的用户标识符的选项是()

A:A P_0 do B:float la0 _A C:b-a goto int D:_123 temp INT

7.以下正确的if语句是()

第 1 页/共 2 页

A:if(n>0) printf("%f",n)printf("%f",-n);

B:if(n>0){ n=n+m;printf("%f",n);}else printf("%f",-n);

C:if(n>0){ n=n+m;printf("%f",n);};else printf("%f",-n);

D:if(n>0){ n=n+m;printf("%f",n) };else printf("%f",-n);

8.若有声明语句"int a=5,b=4,c=3,*p=&a;",则下列()表达式语句是正确的。

A:(*p)++=c; B:printf(a%4==0?"%3d\n":"%3d",*p);C:*(*p)++; D:

a>20?return *p-20:return *p-1;

9.以下声明中正确的是()。

A:int a[2][2]={10},(*p)[2]=a+1;B:int n=10,*p[2]=&n; C:int n=10,a[2]={n}; D:int n=2,a[n]={10};

10.已知有声明"int a=12,b=15,c;",则执行表达式"c=(a||(b-=a))"后,变量b和c 的值分别为( )。

A:3,1 B:15,12 C:15,1 D:3,12

11.以下函数调用语句中含有()个实参。func((e1,e2),(e3,e4,e5));

A:2 B:3 C:5 D:语法错误

12.以下函数 findmax 拟实现在数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功能。

#define MIN -2147483647

int findmax (int x[],int n)

{int i,max;

for(i=0;i

{max=MIN;

if(max

return max;

}

造成错误的原因是()。

A:定义语句 int i,max;中 max 未赋初值 B:赋值语句 max=MIN;中,不应给 max 赋 MIN 值

C:语句 if(max

13.有以下程序

#include

main()

{

int a=1, b=0;

printf ("%d,", b=a+b);

printf ("%d\n", a=2*b);

}

程序运行后的输出结果是()。

A:0,0 B:1,0 C:3,2 D:1,2

14.已有声明"int s[2][3]",以下选项中()正确地引用了数组s中的基本元素。

A:s[1>2][!1] B:s[2][0] C:s[1] D:s

15.设有以下程序段,则值为6的表达式是()。

struct st { int n; struct st *next;};

static struct st a[3]={5,&a[1],7,&a[2],9,0 },*p;

p=&a[0];

A:p++->n B:p->n++ C:++p->n D:(*p).n++

BADBC CBBAC ADDAC,

二、判断题(每题2分,对的打√错的打×,共20分)

1.用fopen("file","r+");打开的文件"file"可以进行修改。(y)

2.若有定义:char *p(char a[10]);则p是函数名。()

3.用fopen("file","r+");打开的文件"file"可以进行修改。()

4.int i=20;switch(i/10){case 2:printf("A");case 1:printf("B");}的输出结果

为A。()

5.Break语句用在循环体中,可结束本层循环,continue语句用在循环体中,可结束

本次循环。()

6.函数strlen("ASDFG\n")的值是7。()

7.结构体类型只有一种。()

8.C 语言源程序文件通过了编译、连接之后 , 生成一个后缀为 .BAK 的文件。

( )

相关文档
最新文档