2001a试卷

上传人:xins****2008 文档编号:100943984 上传时间:2019-09-25 格式:DOC 页数:8 大小:51KB
返回 下载 相关 举报
2001a试卷_第1页
第1页 / 共8页
2001a试卷_第2页
第2页 / 共8页
2001a试卷_第3页
第3页 / 共8页
2001a试卷_第4页
第4页 / 共8页
2001a试卷_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《2001a试卷》由会员分享,可在线阅读,更多相关《2001a试卷(8页珍藏版)》请在金锄头文库上搜索。

1、浙江大学“程序设计基础-C”试题卷2001-2002学年秋季学期考试时间: 2002年1月20日上午8:30-10:30注意:答题内容必须写在答题卷上,写在本试题卷上无效一单项选择题(每题2分,共30分)1. C语言源程序文件经过编译连接之后生成一个后缀为_C_的文件。A”.c”B“.obj”C“.exe”D“.bas”2. 以下选项中不正确的整型常量是_C_。A 12L B -10 C 1,900 D 123U 3. 表达式_C_的值是0。A3%5B3/5.0C3/5D30|y0) 等价于_D_。A!x0|!y0B!(x0)|!(y0)C!x0&!y0D!(x0)&!(y0)5. 若变量已正

2、确定义并赋值,表达式_D_不符合C语言语法。A4&3B+aCa=b=5Dint(3.14)6. 若变量已正确定义,执行语句scanf(%d%d%d ,&k1,&k2,&k3);时,_B_是正确的输入。A203040 B20 30 40C20, 30 40D20, 30,407. 执行语句 printf( _D_, 2); 将得到出错信息。A%dB%oC%xD%f8. 设变量定义为 char s =hellonworldn;,则数组s中有_B_个元素。A12B13C14D159. 若x是整型变量,表达式 (x=10.0/4.0) 的值是_D_ 。A2.5B2.0C3D210. 若变量已正确定义并

3、赋值,表达式 -k+ 等价于_A_。A-(k+)B(-k)+C-(k+1) D-(+k)11. 在C 语言程序中,在函数内部定义的变量称为_C_。A全局变量B外部变量C局部变量D内部变量12. 设变量定义为 int a2=1,3, *p=&a0+1;,则*p的值是_B_。A2B3C4D&a0+113. 对于以下的变量定义,表达式_A_是正确的。struct node char s10;int k; p4;Ap-k=2Bp0.s=“abc”Cp0-k=2Dp-s=a14. 下列运算符中,优先级从高到低依次排列为_A_。A!,&,|B|,&,!C&,|,!D&,!,|15. 下列程序段的输出结果是

4、_B_。 int *p, *q, k = 1, j=10 ; p=&j; q = &k ; p = q ; (*p)+;printf(%d,*q);A1B2C10D11二、填空题(每题2分,共20分)1. 设ch是字符型变量,判断ch为英文字母的表达式是_ch=a&ch=A&ch0) y=1; if(x=0) y=0;if(x0y= 0 x=0 -1 x03. 表达式 !5的值是_1_。4. 下列程序段的输出结果是_12_。printf(%xn, (0x19 1) & 0x17); 5. 下列程序段的输出结果是_k=4 s=6_。 int k, s;for(k=0, s=0; kk) brea

5、k; else s += k; printf(k=%d s=%d, k, s);6. 下列程序段的输出结果是_100_。 #define MIN(x,y) (x)(y)?(x) : (y) printf(%d,10*MIN(10,15);7. 下列程序在运行时可能会出错,原因是_指针没有赋值_。# include void main( ) char *s; gets(s); puts(s);8. 下列程序的输出结果是_15 6_。# include int f(int m) static int k=0; int s=0; for(; k=m; k+) s+; return s;void ma

6、in( ) int s=1; s=f(5); printf(%d %dn, s, f(3);9. 下列程序段的输出结果是_fgn_。 char *st =abcd,efgh,ijkl,mnop;printf(%s, *(st+1)+1);10. 用typedef定义一个10个元素的整型数组类型ARR,再用ARR定义一个10个元素的整型数组a。typedef int ARR10;ARR a;三、程序阅读题(每题5分,共15分)1. 输入123+234=357Yes?后,下列程序的输出结果是_6123111_。# include void main( ) int k, n1, n310; char

7、 c; n1=0; for(k=0; k10; k+) n3k=0; while(c=getchar( )!=n) switch(c) case0: case 1: case 2: case 3: case 4: case5: case 6: case 7: case 8: case 9: n3c-0+; break; default: n1+; break; if(n1) printf(%d , n1); for(k=0; k10; k+) if(n3k) printf(%d , n3k);2输入3后,下列程序的输出结果是_612#745#840_。#include stdio.hvoid

8、main() int j,k,n,temp, a66; scanf(%d,&n); for(k=0;kn;k+) for(j=0;jn;j+) akj=j+k*n; for (k=0;kn;k+) for(j=0;jn/2;j+) temp=an-j-1k; an-j-1k=akj; akj=temp; for(k=0;kn;k+) for(j=0;jn;j+) printf(%d ,akj); printf(#); 3下列程序的输出结果是_。# include #define LEN sizeof(struct line)struct line int num ; struct line *

9、next;void main( ) int k ; struct line *p , *head , *tail; void f(struct line *p); head=tail=NULL; for(k=1; knum=k; p-next=NULL; if(head=NULL) head=p; else tail-next=p; tail=p; f(head);void f(struct line *p) if(p!=NULL) f(p-next); if(p!=NULL) printf(%d , p-num) ; 四、程序(段)填空题(每空2分,共20分)1输入1 个正整数 n, 计算并

10、输出 s 的前n项的和。 S = 1 -1/2 + 1/3 - 1/4 + 1/5 -1/6 + #include void main( ) int k, flag, n; float s; flag=1; s=0; scanf(%d, &n); for (k=1 ; k=n; k+) s=s+ (1) ; (2) ; printf(sum=%fn, s);2输入以 -1结束的一批整数,输出其中的最大值。 例如: 输入 -3 -8 -10 -1 后,输出:max=-3。#include void main( ) int max, x; scanf(%d, &x); if(x!=-1) (3)

11、; while( (4) ) if(maxx) max=x; (5) ; printf(max=%dn, max); 3设变量x, y, z已正确定义和赋值,请仔细阅读程序段,然后在程序段中填入正确的内容,使程序段和程序段的输出结果一样(每空只能写一个赋值表达式)。程序段A程序段Bx=x+y;y=x-y;x=x-y;z=x+y;printf(%d,%d,%d,x,y,z); (6) ; (7) ;y=z; z=x+y;printf(%d,%d,%d,x,y,z);4请仔细阅读函数f1,然后在函数f2中填入正确的内容,使函数f1和函数f2有相同的功能。char *f1(char s , char t ) int k; for(k=0; tk!=0; k+) sk=tk; sk=0; retur

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号