浙江大学城市学院。
2006-2007学年第二学期期末试卷(a)
c语言程序设计基础》
开课单位:计算分院;考试形式:闭卷;考试时间: 2023年07月07日14:00-16:00;
所需时间:120分钟。
注意:答题内容必须写在答题卷上,写在本试题卷上无效。
一、单选题(每题2分,共20分)
说明:在每小题提供的若干可选答案中,挑选一个正确答案。
1、判断变量ch 是存放英文字母的表达式为 (1) 。
a、( a' b、(ch >=a' &ch <=z') ch >=a' &ch <=z') c、(ch >=a' &ch <=z') ch >=a' &ch <=z') d、( a' 2、若已定义x为int 类型、y为double类型,则表达式x=1, y=3/2+x++的值是 (2) a、1 b、2 c、2.0d、2.5 3、执行下列程序段后,不正确的if语句是 (3) 。 a、if(x>y&&x!=yb、if(x==y) c、if(x!=y) scanf(“%d”, x) else scanf(“%d”, y); d、if(x=y) 4、while( (4) )等价于while ( x )。 a、x ==1 b、x ==0 c、x !=0 d、x !=1 5、执行语句“for(s=0, k=1; s<20||k<10; k=k+2) s+=k;”后,s、k的值为 (5) 。 a b c d 6、执行下列程序段后,k的值是 (6) 。 int k=1, n=263; do while( n ); printf("%d",k); a、4 b、5 c、6d、7 7、若已定义char str1[10]="123", str2="abc";下列语句那一个是正确 (7) 。 a、str2 = 12345b、*str2 = 12345"; c、str1 = str2d、if(str1 > str2) printf("ok!")else printf("no!") 8、下面程序段作宏替换后输出结果是 (8) 。 #define f(a, b, x) a*x+b printf("%d, %d", f(3,2,1), f(6, 5, f(3, 2, 1))) a、5,20 b、5,30 c、5,25 d、5,35 9、假设有定义:int *p, n; char *q, *g, ch; 下列 (9) 语句是不正确的。 a、p=&n; q=&ch; b、p=&n; g=q=&ch; c、p=&n; g=&ch; d、p=&n; q=&ch;g=p; 10、以下结构变量std中的成员age的不正确引用是 (10) 。 sctruct student int age; int num; } stu1, *p=&stu1; a、 b、 c、p->age d、(*p).age 二、程序填空题(每小题2分,共30分) 说明:阅读下列程序,在每小题提供的若干可选答案中,挑选一个正确答案。 1、判别闰年的条件为能被4整除但不能被100整除,或能被400整除,以下程序的功能是判断输入的年份是否是闰年,请填空。 #include <> void main() int y,f; scanf("%d",&y); if (y%400==0) f = 1; else if ( 11f = 1; else (12) ; if ( 13) )printf("%d is", y); else printf("%d is not", y); printf(" a leap leap(闰) year"); 11) a、y%4!=0&&y%100==0 b、y%4==0&&y%100!=0 c、y%4==0||y%100!=0d、y%4!=0||y%100==0 12) a、if(y%4!=0&&y%100==0) f=1b、if(y%4==0&&y%100!=0) f=0c、f=1d、f=0 13) a、f!=1 b、f==0c、f d、!f 2、输入一个正整数n,输出 2/1+3/2+5/3+8/5 +.的前n项之和,保留2位小数,请填空。(该序列从第2项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子) #include <> void main( ) int i,n; float a, b, s, t; scanf("%d", n); for(i=1; i<=n; i++) printf("%2f",s); 14) a、a=1; b=2; s=0; b、a=2; b=1; s=1; c、a=2; b=1; s=0; d、a=1; b=2; s=1; 15) a、t=ab、t=bc、a=td、b=t 16) a、b=a+b b、a=a+bc、a=bd、b = a 3、输入5个整数,找出最大数和最小数所在的位置,并把二者对调。然后输出最大数和最小数所在的位置,并输出调整后5个数的,请填空。 #include <> void main() int a[5],max,min,i,j,k; for(i=0;i<5;i++)scanf("%d",&a[i]); min=a[0]; for(i=0;i<5;i++) if(a[i] for(i=0;i<5;i++) if(a[i]>max) printf("the position of min is:%3d",k); printf("the position of max is:%3d", j); for(i=0;i<5;i++)printf("%5d",a[i]); 17)a、i=j b、j=i c、k=id、i=k 18)a、i=j b、j=i c、k=id、i=k 19)a、a[k]=minb、a[j]=max c、a[k]=max;a[j]=min d、a[j]=max; a[k]=min 4、输入10个整数,将它们存入数组a中,再输入一个整数x,然后在数组中查找x,如果找到,输出相应的下标(如有多个元素与x相等,只要输出下标值最小的那个元素的下标),否则,输出“not found” ,请填空。 #include <> void main( ) int k, n, sub, x, a[10]; int fun(int *p, int n, int x); scanf ("d", n); for(k = 0; k < 10; k++) scanf ("d", a[k]); scanf ("d", x); sub= (20) ; if( (21) )printf("index is %d", sub); else printf("not found"); int fun(int *p, int n, int x) int k, index = 1; for(k = 0; k < n; k++) if(*(p+k) =x) (22) return index; 20)a、fun(a[n], n, xb、fun(a, n, x) c、fun(int a,int n, int xd、fun(a,n, x) 21)a、sub !=1 b、sub !=0 c、sub ==1d、sub ==0 22)a、sub=k; b、break; c、 23)a、flag=0 b、flag==0 c、flag==1d、flag=1 24)a、a[k][i]!=0 b、a[i][k]==0 c、a[i][k]!=0d、a[k][i]==0 25)a、flag=0 b、flag==0 c、flag==1d、flag=1 三、程序阅读题(每小题3分,共30分) 说明:阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。 a.p q c.p n1 10 若有说明语句 int a,b,c,d c 则能从键盘读入三个整数分别赋给变量a b c的语句是。a.scanf d d d a,b,d b.scanf d d d a,b,d c.scanf d d d a,b,dd.scanf d d d a,b,d 11 c语言标... 青海大学试卷 a卷 系别 班级学号姓名。考试课程 程序设计基础 c 考试日期 2009 年 12月17日。注 所有答案均写在答题卡上,答在试卷上不得分,考试结束后试卷和答题卡一并交回。一 填空题 每空1分,共16分 1 整型静态数组没有初始化,也没有赋值,此时数组元素的值均为 0 2 数组在内存中占... 一 填空共5题 共计10分 第1题 2.0分 题号 339 赋值运算符的结合性是由 右 至 左 第2题 2.0分 题号 925 在c 语言结构化程序中,函数 是程序的基本组成单元 在c 语言的面向对象设计框架中,对象 是程序的基本组成单元。第3题 2.0分 题号 926 c 语言的参数传递机制包括传...c语言试卷c
C语言试卷A
C语言试卷