浙江理工大学05-06c语言期末模拟试卷(含答案)

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

C程序设计试卷

一、单选题(本题共20分,每小题2分)

(1) 以下定义语句中正确的是()。

[A] char a='A' b='B'; [B] float a=b=10.0;

[C] int a=10,*b=&a; [D] float *a,b=&a;

(2) 若x和y代表整型数,以下表达式中不能正确表示数学关系|x-y|<10的是()。

[A] fabs(x-y)<10 [B] x-y>-10 && x-y<10

[C] x-y>-10 || x-y<10 [D] (x-y)*(x-y)<100

(3) 函数调用:strcat(strcpy(str1,str2),str3)的功能是()。

[A] 将串str2复制到串str1中后再将串str3连接到串str1之后

[B] 将串str2连接到串str1之后再将串str1复制到串str3中

[C] 将串str1复制到串str2中后再连接到串str3之后

[D] 将串str1连接到串str2之后再复制到串str3之后

(4) 设有语句char a='\72';则变量a()。

[A]包含1个字符[B]包含2个字符

[C]包含3个字符[D]声明不合法

(5) 在C语言中,要求运算数必须是整型的运算符是

[A] ! [B] / [C] < [D] %

(6) 若有声明和语句:

int a=5;

a++;

则此处表达式a++的值是()。

[A] 7 [B] 6 [C] 5 [D] 4

(7) 以下程序段的输出结果是()。

int x=3;

do{

printf("%d ",x-=2);

}while(!(--x));

[A] 1 [B] 3 0 [C] 1 -2 [D]死循环

(8) 不能把字符串“Hello!”赋给数组b的语句是()。

[A] char b[10]={'H','e','l','l','o','!'}; [B] char b[10];b="Hello!";

[C] char b[10];strcpy(b,"Hello!"); [D] char b[10]="Hello!";

(9) 设有如下的程序段:

char str[ ]="Hello";

char *ptr;

ptr=str;

第 1 页(共11 页)

执行上面的程序段后,*(ptr+5)的值为()。

[A] 'o' [B] '\0' [C]不确定的值[D] 'o'的地址

(10) 以下对C语言函数的有关描述中,正确的是()。

[A] C程序中有调用关系的所有函数必须放在同一个源程序文件中

[B] C函数既可以嵌套定义又可以递归调用

[C] 函数必须有返回值,否则不能使用函数

[D] 在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参

二、程序填空题(本题共30分,每小题2分)

阅读下列程序说明和程序代码,在每小题提供的若干可选项中,挑选一个最佳的选项。

(1)【程序说明】

判定某一年year是否为闰年。闰年的判断方法:一个年份如果能被4整除但不能被100整除,或者能被400整除,则该年为闰年。

【程序代码】

#include

void main()

{

int year,leap;

scanf( (11));

if(year%4==0)

{

if( (12))

{

(13);

}

else

leap=1;

}

else

(14);

if(leap)

printf(" (15)is ",year);

else

printf(" (15)is not ",year);

printf("a leap year.\n");

}

【选项】

(11) [A] year [B] &year

[C] "%d",&year [D] "%d",year

第 2 页(共11 页)

(12) [A] year%100!=0 [B] year%100==0

[C] year%400==0 [D] year%100=0

(13) [A] leap=0 [B] leap=1

[C] leap=(year%400==0)?0:1 [D] leap=(year%400==0)?1:0

(14) [A] leap=0 [B] leap=1

[C] printf("%d is ",year) [D] leap=(year%100==0)?1:0

(15) [A] %d [B] %f

[C] %c [D] %s

(2)【程序说明】

输入一个字符串,当输入回车时表示输入完毕,然后判断该字符串中数字字符的个数、大写字母字符的个数、小写字母字符的个数及其它字符的个数。

【程序代码】

#include

#include < (16)>

void main()

{

int n=0,l=0,u=0,o=0;

char c;

printf("Please input a string:\n",n);

c= (17);

while( (18))

{

if( (19)) n++;

else if(islower(c)) l++;

else if(isupper(c)) u++;

else (20)

(17);

}

printf("Count of digit is: %d\n",n);

printf("Count of lowercase letter is: %d\n",l);

printf("Count of uppercase letter is: %d\n",u);

printf("Count of other character is: %d\n",o);

}

【选项】

(16) [A] ctype.h [B] math.h

[C] string.h [D] stdlib.h

(17) [A] c=gets() [B] gets(c)

第 3 页(共11 页)

相关文档
最新文档