浙江科技学院c语言2012-2013-1-C试卷A
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 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");
}