浙江科技学院c语言2012-2013-1-C试卷A

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

浙江科技学院考试试卷

浙江科技学院

2012 - 2013学年第1学期考试试卷A 卷信息、建工、

机械、经管、轻工、理学 学院 2012 年级 理工科专业

一、判断题(本大题共12小题,每题小1分,共12分) 1. “C ”指字符常量C 。

2. if(a==b)语句可用于判断两个字符串a 和b 是否相等。

3. 当需要接受用户从键盘输入的含有空格的字符串时,应使用gets()函数。

4. char *a[5]定义了一个一维指针数组,它有5个元素,每个元素都字符类型的指

针。

5. (a=3)>(b=5)是合法的关系表达式。

6. continue 语句的作用是结束整个循环的执行。

7. 若有说明: int a[3][4]; 则数组a 中各元素可在程序的编译阶段得到初值0。 8. char *p; 定义了一个指针变量p ,其值是字符类型的。 9. main 函数中定义的变量称为全局变量。

10. 如果函数的形参和实参类型不一致,以实参的类型为准。

11. 对于二维数组a[3][4],a+1与a[1]完全一样,都是第一行的行地址。 12. 在标准C 语言中,函数只能有一个return 语句。

二、单选题(本大题共20小题,每题1分,共20分)

1. t 为int 类型,在进入下面的循环之前,t 的值为0,while( t=l ) { ...... }

则以下叙述中正确的是( )。

A. 循环控制表达式的值为0

B. 循环控制表达式的值为1

C.

循环控制表达式不合法

D.

以上说法都不对

2. 若有语句scanf("%d%d",&a,&b);要使变量a,b 分别得到10和20,正确的输入形

式为( )。 A. 10 20 B. 10,20 C. 1020

D.

10:20

3. 以下4个选项中,不能看作一条C 语言语句的是( )。

专业班 学 姓 ………………………………………………………………………装订线……………………………………………………………………………………

A. ;

B. a=1,b=1,c=1;

C. if(x>0);

D. if(b==1) k=2;n=3;

4.函数strlen("1234\0xy")的值为()。

A. 7

B. 8

C. 4

D. 9

5.若变量c为char类型,能正确判断出c为大写字母的表达式是()。

A. 'A'<=c<='Z'

B. (c>='A')||(c<='Z')

C. ('A'<=c)and ('Z'>=c)

D. (c>='A')&&(c<='Z')

6.有如下程序段

int a=14,b=15,x;

char c='A';

x=(a&&b)&&(c<'B'); 执行该程序段后,x的值为()。

A. true

B. false

C. 0

D. 1

7.运行下面程序:

main()

{ char c[ ]={'a','b','c','d', 'e', 'f', 'g','h','\0'};

int i,j;

i=sizeof(c);

j=strlen(c);

printf("%d %d\n",i,j); } 则输出结果是()。

A. 9 9

B. 8 9

C. 1 8

D. 9 8

8.在下面程序段中,while语句的循环次数是()。

main()

{ int k=0;

while(k<10)

{ if (k<1) continue;

if(k==5) break;

k++;

}

......

}

A. 0

B. 10

C. 6

D. 死循环,不能确定次数

9.以下选项中,与k=n++完全等价的表达式是()。

A. k=n,n=n+1

B. n=n+1,k=n

C. k=++n

D. k+=n+1

10.有以下定义

#include

char a[10],*b=a;

不能给a数组输入字符串的语句是()。

A. gets(a)

B. gets(a[0]);

C. gets(&a[0]);

D. gets(b)

11.在下列选项中,没有构成死循环的程序段是()。

A. int i=100;

for(;;);

i--; B. int i=100;

while(1)

{i=i&100+1;

if(i>100)break;

}

C. int k=1000;

for(;k>100;k--); D. int s=36;

while(s);

--s;

12.假定x和y为double型,则表达式x=2,y=x+3/2的值是()。

A. 3.500000

B. 3

C. 2.000000

D. 3.000000

13.有以下程序,其for语句中循环体执行的次数是()。

#include

#define N 2

#define M N+1

#define NUM (M+1)*M/2

main()

{ int i,n=0;

for(i=1;i<=NUM;i++)

n++;

printf("%d",n);

printf("\n");

}

相关文档
最新文档