2005年春浙省二级C语言笔试试卷
2005年春浙江省高校非计算机专业学生 计算机等级考试试卷 (二级C)
试题一、判断题(每小题1分,共10分)
说明:在以下提供的若干个陈述中,逐一判断其正确与否,选A表示正确,选B表示错误。
(1) 在C语言中,常量和变量都有数据类型。
(2) C语言的运算符只有单目运算符和双目运算符两种。
(3) 若变量己正确定义,表达式x+y=z符合C语言语法。
(4) C编译器可以找出C源程序中所有的语法错误和逻辑错误。
(5) 表达式3*5/2和表达式3/2*等价。
(6) 表达式m=n++的求解顺序是先计算m=n,再计算n=n+1。
(7) 变量名fahr和Fahr代表两个不同的变量。
(8) 若表达式sizeof(unsigned)的值为2,则unsigned类型数据能表示的最大整数为 216-1。
(9) break语句只能用于循环结构中。
(10) while语句先判断循环条件,所以循环体有可能一次也不执行。
试题二、单选题(每小题2分,共20分)
(11)执行scanf(“%d%lf%d”,&money,&rate,&year), 输入(11)后,money=1000, year=3, rate=0.025.
A、1000 3 0.025 B、1000 0.025 3
C、1000,3,0.025 C、1000,0.025,3
(12)判断变量ch是英文字母的表达式为(12)。
A、('a'<=ch<='z')||('A'<=ch<='z')
B、(ch>='a' && ch<='z')&&(ch>='A' && ch<='Z')
C、(ch>='a' && ch<='z')|| (ch>='A' && ch<='Z')
D、('A'<=ch<='z')&&('A'<=ch<='z')
(13)while((13))等价于while(!x)。
A、x==1 B、x==0
C、x!=0 D、x!=1
(14)以下程序段输出字符串str, 其中循环条件str[i]!= 0 还可以写成(14)。
char str[80];
for(i=0;str[i]!='\0' i++)
putchar(str[i]);
A、str[i]!=NULL B、i< 80
C、!(str[i]= '\0' D、i<=80
(15)设变量定义为:int n,*p;char ch,*q,*g;,则语句(15)是不正确的。
A、p=&n;g=q=&ch; B、p=&n;q=&ch;
C、p=&n;g=&ch D、p=&n;q=&ch;g=p;
(16)设变量定义如下,则对其中的结构分量num正确的引用是(16)。
struct student{
int num;
Char name[20];
float scire;
}stud[10];
A、stud[1].num = 10; B、student.stud.num = 10;
C、struct.stud.num = 10; D、struct student.num = 10;
(17)对于以下递归函数f,调用函数f(2, 1