第一范文网 - 专业文章范例文档资料分享平台

C08试卷A

来源:用户分享 时间:2025/8/20 11:09:19 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

浙江大学20 08 –20 09 学年 秋冬 学期

《程序设计基础及实验》课程期末考试试卷(A)

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

1. 下列运算符中优先级最低的是_____。

A.|| B .>= C .!= A.a=2++

B.a=3,5

C.a=a+1=3

D.~ D.12.3%4

2. 若变量已正确定义并赋值,符合C语言语法的表达式是 。 3. 表达式____不能用于判断“x和y不同时为零”。 A.x!=0 || y!=0 B.x || y C.!( x==0 || y==0) D.!( x==0 && y==0) 4. 表达式5>3>1值是_____。 A.0 B.1

C.3

D.表达式语法错

5. 下列程序段执行后s值为_____。 int i=5, s=0; while(i--) if (i%2) continue; else s+=i;

A.15 B.10 C.9 D.6

6. 已知字母A的ASCII码为十进制数65,且ch为字符型变量,则执行语句ch=?A?+?6?-?3?;后,ch

中的值为_____。 A.D B.68 C.C D.不确定 7. 以下不正确的定义语句是________。

A.double x[5]={2.0,4.0,6.0,8.0,10.0}; B.char c2[]={?\\x10?,?\\xa?,?\\x8?}; C.char c1[]={?1?,?2?,?3?,?4?,?5?}; D.int y[5]={0,1,3,5,7,9}; 8. 下列语句定义pf为指向float类型变量f的指针,_____是正确的。 A.float f, *pf = f; B.float f, *pf = &f; C.float *pf = &f, f; D.float f, *pf =0.0;

9. 假设scanf语句执行时输入ABCDE<回车>,能使puts(s)语句正确输出ABCDE字符串的程序

段是______。

A.char s[5]={\C.char *s;scanf(“%s”,s);puts(s);

B.char s[5]={?A?,?B?,?C?,?D?,?E?}; puts(s); D.char *s; s=\

10. 以下scanf函数调用语句中不正确的是______。

struct pupil {

char name[20]; int age; int sex;

} pup[5], *p=pup;

A.scanf(“%s”,pup[0].name); B.scanf(“%d”,&pup[0].age); C.scanf(“%d”, p->age); D.scanf(“%d”,&(p->sex));

《程序设计基础及实验》课程期末考试试卷, 2009年1月15日 1 / 8

试题二、填空题(每小题2分,共30分)

1. 若有定义:int x=2, y=5; 则表达式x*=y-3的值为_____。

2. 若有定义:int a=3, b=6; 则表达式(a^b)<<2的值为_____。 3. 输入abcde#<回车>,下列程序段的输出结果是_____。 char c; for(c=getchar(); getchar()!=?#?; c=getchar()) putchar(c);

4. 下列程序段的输出结果是_____。

int k=3, s=0; switch (k) {

case 3: s++; k++; case 4: s+=1; switch(s){

case 1:s+=2;

default:k++;break; }

default: s+=3; break; }

printf(\

5. 下列程序的输出结果是_____。

# include

int f(int x)

{ static int k=0; return ++k+x;

}

main( ) { int k;

for(k=0;k<3;k++) printf(\}

6. 下列命令行参数程序生成的执行程序为test.exe,执行test 123 abc<回车>,输出结果是_____。

# include

main(int argc,char *argv[]) {

while(--argc)

printf(\}

7. 下列函数strcpy实现将字符串t拷贝到s,请填写完整。

void strcpy(char*s,char*t) { while(_______); }

《程序设计基础及实验》课程期末考试试卷, 2009年1月15日 2 / 8

8. 请将下列程序段的等价代码填写完整。

int i=0,s=0,a[10]; while (i<10) s+=a[i++]; 等价于

int i,s,a[10];

for(___________);

9. 下列程序段的输出是__________。

#define FB(a,b) (a*b+1) int k=3;

k= FB(k+1,k-1)-9; printf(\

10. 假设有下列函数定义:

void foo(int sum) {

int j;

for (j = 0; j < 10; ++j) sum += (j + 1) * sum; }

在main函数中有如下代码段: int sum = 0; foo(sum);

printf(“%d”, sum);

执行后,输出结果为_________。

11. 用 typedef 写出类型定义 ,使得AIP表示含有10个元素的整型指针数组类型。 12. 下列程序段输出 _____。

char s[]=”abc\\0def\\0ghi”,*sp=s; printf(“%s”,sp+5);

13. 对于以下递归函数f,调用 f (3) 的返回值是_____。 f (int n)

{ return ((n>0) ? 2*f(n-1)+f(n-2) : -1); } 14. 下列程序段执行后,z的值是 ______。

static struct {

int x, y[3];

} a[3] = {{1,2,3,4},{5,6,7,8},{9,10,11,12}}, *p=a+3; int z;

z=*((int *)(p-1)-1);

15. 下列程序段的输出结果是_____.

char *a[]={“123”,”456”},**p=a+1; printf(“%s#%c#”,*p+1,**p-1);

《程序设计基础及实验》课程期末考试试卷, 2009年1月15日 3 / 8

试题三、程序阅读题(每小题5分,共30分)

1. 若输入 -6+15*3/5=<回车> , 以下程序的输出结果是_______。

#include main() {

int m=0, sum=0; char c, oldc='+';

do {

c=getchar(); if(c<='9'&&c>='0')

m=10*m+c - '0';

else {

if(oldc=='+')

sum += m;

else

sum -= m;

m=0; oldc=c;

printf(\ }

} while(c!='='); }

2. 运行下列程序的输出结果是__________。

#include void fun( int n, int b ) { if( b<=1 ) return; if(n>b){ fun(n/b, b); printf(\ }else

printf(\}

main() {

fun(13, 2);

putchar(','); fun(33, 5);

《程序设计基础及实验》课程期末考试试卷, 2009年1月15日 4 / 8

搜索更多关于: C08试卷A 的文档
C08试卷A.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c3mggn4ai9s7g2499hhtq_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top