《历年浙江省计算机等级考试试题(二级C).pdf》由会员分享,可在线阅读,更多相关《历年浙江省计算机等级考试试题(二级C).pdf(57页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第 3 部分附录附录I历年浙江省计算机等级考试试题(二级C)1999年秋浙江省高校计算机等级考试试卷(二级C)试题一 计算机基础题(本题共15分)略试题二 语言基础题(每题2 分,共 26分)1、定 义“float a,b,c;,其中:aW0,b2-4ac0,写出下列数学式的C 表达式。_ _+。2 _ 4 a c)22、定 义“char ch;,写出判断ch 好为大写字母的表达式。3、计算表达式“4/5*(float)3+(float)3*4/5”的值。4、计算表达式“(71)&(12)”的值。5、在 C 语言中,若对函数类型未加显式说明,则函数的隐含类型是:6、写出语句“printf(x,
2、%o”,16,10);”的输出结果。7、写出下列程序段的输出结果。#define T 16#define S(T+10)-7printf(dn”,S*2);8、写出下列程序段的输出结果。#include printf(d,%dn”,NULL,EOF);9、写出下列程序段的输出结果。static char s=student”;printf(d,%cn%zeof(s),*(s+2);10、写出下列程序段的输出结果。char*st=one,two,three,“four;printf(M%snn,*(st+3)+l);11、写出下列程序段的输出结果char c,k;c=b;k=4;switch(c
3、)case a:k=l;case b:k=2;case c:k=3;printf Ct%dn,k);12、对于以下递归函数f,计算f(3)的值。int f(int k)return(k0)?l:f(k-2)+2);13、对于以下函数函计算f(f(2)的值。int f(int x)static int k=0;x+=k+;return x;)试 题 三 程序阅读题,在答卷纸的相应栏内写出下列程序的输出结果(共19分)1、程 序 1 (6 分)#include int a34=1,2,3,4,5,6,7,8,9,10,11,12);void main()int s,k;for(s=0,k=0;k3
4、;k+)s+=akk;printf(d-”,s);for(s=0,k=0;k3;k+)s+=ak3-k;printffor(s=0,k=0;k4;k+)s+=*(al+k);printf(dn”,s);)2、程序2(9 分)#include int x,y,z;void p(int*x,int y)+*x;y ;z=*x+y;printf(d,%d,*x,y,z);void main()x=2;y=3;z=4;p(&x,y);printf(next)k+=p-num;q=p;p=p-next;return k;写出执行语句“printf(dn”,fun(head);的输出结果。其中:head是
5、 node类型的全程量;在执行上述printf语句前,以 head为头指针的链表各节点的当前值如下所示;head_ P4 二|-6 一 口-乂 7 NULL试题四根据说明,把应在划线处填入的内容写在答卷纸的相应栏内(每空2 分,共 20分)1、【程序说明】输入某班50位学生的姓名及数学、英语成绩,计算每位学生的平均分;然后输出平均分最高的学生之姓名及数学、英语成绩。#include define SIZE 50struct student char name 10;int math,eng;float aver;);viod main()student sfSIZE;int k,maxsub=
6、0;for(k=0;kSIZE;k+)scanf(%s%d%d”,sk.name,&sk.math,&sk|.eng);(1)=(sk.math+sk.eng)/2.0 计算平均分)for(k=1 ;k=t=0&sk=,9,)(10):k+;)return sign*digit;)试题五 编程题,根据程序说明将程序写在答卷纸的相应题号下(共20分)1、【程序说明】(10分)编制程序,输入m、n(m 2 n 2 0)后,计算下列表达式的值并输出。mlfl 1 (九)要象蒋计算跻乘的运算编写作函数fact(n),函数返回值的类型为float2、【程序说明】(10分)编制程序,统计文本文件data.
7、txt中 字 符$出现的次数,并将统计结果写入文件res.txto2000年秋浙江省高校计算机等级考试试卷(二级C)试题一 计算机基础题(本题共15分)略试题二 语言基 础 题(每 题 2 分,共 26分)1、写出与代数式J s(s -a)(s-b)(s-c)对应的C 表达式。2、写出与代数式(x+2)ex+?对应的C 表达式。3、写出执行下列语句后的输出结果。int x=5;if(x=3)printf C%dn,x);else print C%dn,x+2);4、写 出“仅 当 char类型变量c h 是大写英文字母时改变c h 为对应小写字母”的 C 表达式。5、若程序中使用了库函数tou
8、pper、strcpy,写出在预处理命令中必须包含的头文件名。6、写出下列程序段的输出结果:int i,s=0;for(i=l;i10;i=i+2)s=s+i;printf(t4i=%d s=%xnM,i,s);7、宏定义为#define f(a,b,x)a*x+b”;写出下列语句的输出结果:printf C%d%d n”,f(l,2,3),f(f(l,2,3),4,2);8、写出下列程序段的输出结果:int k,j=3;k=j+;printf C k=%d j=%d n ,k,j);9、写出下列程序段的输出结果:#include#include void f(char*sl)char c;i
9、f(*sl!=0)c=*sl;strcpy(si,sl+l);f(si);putchar(c);)void main()f(abcdefg”);)10、student是结构体类型标识符,x 是 student类型变量,写出计算x 字节数的表达式。11、写出下列程序的输出结果:#include int f(int x)static y=l;x+=y;y+;return x;)void main()int k;k=f(3);printf(t4%d%dn”,k,f(k);)12、自定义函数fact的功能是计算k 的阶乘,函数原型可以写作“float fact(int)”。按照以下各小题的要求写出相应
10、的函数原型。(1)自定义函数f l 的功能是计算平面上任意两点之间的距离。(2)自定义函数swap的功能是交换调用函数中两个float类型实参变量的值。试 题 三 程序阅读题(本题共19分)1、程 序 1 (8 分)#include void main()int m=18,s=0;do switch(m%7)case 2:m/=2;s+=2;break;case 3:m/=3;s+=3;break;case 5:m/=5;s+=5;break;default:m;s-;);printf(d iT,s);while(m);)2、程序2(8 分)#include void main()void d
11、iv(int*,int*);int a5=-5,0,60,45,34,i=0J=2;while(ai=0)i+;while(ai!=l)div(a+i,&j);)void div(int*n,int*k)if(*n%*k=0)printf(%d,%d*k);*n/=*k;else(*k)+;3、程序3(3 分)#include void main()int s8,i;char ch=B-1;/*字符 A 的 ASCH 码为 65*/printfC%c%dn”,ch,ch);for(i=7;i=0;i-)si=ch&l;ch=chl;for(i=0;i8;i+)printf(cT,si);pri
12、ntf(n”);)试题四 程序填空题(每空2 分,共 20分)1、函数sort使用选择法将一维整型数组中各兀素按值从大到小排序。void sort()int i,j,k,temp;for(i=0;in-l;i+)k=j for(j=i+1 ;jname,strl)=0)head=head-next;free pl;return head;)while(p 1 -next!=NULL)p2=pl-next;if()pl-next=p2-next;free p2;break;)else(6);return head;)3、本程序将当前目录下的文本文件a.txt复制到b.txt,要求将a.txt中
13、每 1个非英文字符后的第1个小写英文字母改为大写字母写到文件b.txt中,其它字符复制时不变。#include#include#include void main()(;int flag=l;char ch;if(fl=fopen(a.txt,4)=NULL)printf(不能建立文件 a.txtn);exit(0);)if(f2=fopen(b.txt”,w):=NULL)printf(不能打开文件 b.txtn);exit(0);)while(8)if(9)&ch=,a&ch 0),输出它们的偶数和。(10分)2、编制函数deLchar,函数原型为void del_char(char*,c
14、har),函数的功能是删除a 指向的字符串中的值为ch的字符。例如从字符串 AscADef中删除A后,字 符 串 为 scDef。(10分)2001年秋浙江省高校计算机等级考试试卷(二级C)试题一 计算机基础题(本题共15分)略试题二 语言基础题(本题共25分)(-)判断题(本题 共 10分,每 题 1 分)说明:在以下提供的若干陈述中,逐一判断其正确与否,正确选择A,错误选择B。(1 6)在 C 源程序中将语句“if(x=5)y+;”误写作“if(x=5)y+;”,将导致编译错误。(17)C 的 double类型数据可以精确表示任何实数。(1 8)若表达式sizeof(int)的 值 为 的
15、 则 int类型数据可以表示的最大整数为23。(1 9)在所有的关系运算符(=、=、!=、=、)中,优先级最低的运算符是“二、!=”。(2 0)标准输入函数scanf的返回值为所输入数据的个数或EOF。(2 1)若 x 的当前值为5,执行语句“if(x=3)x=x+5;”后,x 的值依然是5。(2 2)执行循环 语 句“for(i=l;ivl0;i=i+2)s+=i;后,i 的当前值为11.(23)a 是一维数组名,数组元素al还可以写作“*(a+)”。(2 4)函数原型为“voidsort(floata,intn)”,调用该函数时,形参数组a 被创建,实参数组各元素的值被复制到a 数组各元素
16、中。(2 5)若打开文件的方式为“w”而该文件已经存在,则文件中原有数据被清空。(二)单 选 题(本 题 共 15分,每 题 1 分)(2 6)执行语句“k=x+&y+llz+;”(各变量当前值均为1)后,变量k、x、y、z 值依次为(26)。A、1、2、2、1 B、1、2、2、2C、0、2、2、1 D、0、2、2、2(2 7)计算变量x(x 大 于 1)整数部分位数的表达式,可以写作(27)。A、(int)loglO(x)B、loglO(x)C、Iogl0(x)+1 D(int)loglO(x)+l(2 8)判断变量x、y 中有且只有1个值为0 的表达式为/数。A、!(x*y)&x+y(x*
17、y)&x+yC x*y=0 D、x=0&y!=0(2 9)执行语句 wfor(s=0,k=l;s20llk 6、0 D、0、6(31)执行语句“for(float x=0,s=0;x!=60;x=x+0.3)s=s+x;后,变量 x 的 值 为(31)。A、不可能大于60 B、不可能大于60.3C、一定小于60 D、可以远大于60(3 2)声明语句为“chara10”,执行下列语句后的输出结果为(32)。primf(d,%dn”,sizeof(a),strlen(strcpy(a,Windows);A、7,7 B、7,8 C、10,7 D、10,8(3 3)函数 的返回值为(33)。A、0 B
18、、-32 C、Mintlnt D、Intint1(3 4)函数f 定义如下,执行语句“m=f(5);”后,m 的值应为 1 3。int f(int k)if(k=Ollk=l)return 1;else return f(k-l)+f(k-2);)A、3 B、8 C、5 D、13(3 5)函数f 定义如下,执行语句“sum=f(5)+f(3);后,sum的值应为(又)。int f(int m)static int i=0;int s=0;for(;i=m;i+)s+=i;return s;)A、21 B、16 C、15 D、8(3 6)下列语句定义x 为指向int类型变量a 的指针,其中哪一个
19、是正确的(36)。A、int a,*x=a;B、int a,*x=&a;C、int*x=&a,a;D、int a,x=a;(3 7)声明语句为“int a 4;”.下列表达式中与数组元素a21rli等价的是(37)。A、*(a2+l)B、a9C、*(al+2)D、*(*(a+2)+l(3 8)执行语句 a=b=3;printf(”d,%dn”,avv2,b2);后的输!ii结 果 为(38)。A、12,0 B、12,3C false,true D、true,false(3 9)若 a 是 32位 int类型变量,判断其32个 2 进位中末两位均为1 的表达式为(39)。A、a&3=3 B、a&
20、3=l 1C、a&ll=3 D、a&ll=U(4 0)以“只读”方式打开文本文件c:xy.text,下列语句中哪一个是正确的(40)。A、fp=fopen(,c:xy.txt,au);B、fp=fopen(c:xy.txt,r);C、fp=fopen(c:xy.txt,wb);D、fp=fopen(c:xy.txt,r);试题三 程序填空题(本题共20分,每个空2 分)程 序 1、程序说明 输 入 x、n 后输出下列算式的值。2 3 4X-1-1)2!3!4!n 程序#include void main()float s,t,x;int i,n;scanf(n%f%dn,&x,&n);(41)
21、for(i=l;i s=x;t=l;B、s=0;t=-l;D s=x;t=-l;(42)A t=-t*x/i;B、t=pow(-x,i)/i;C、t=-pow(x,i)/i;D、t=t*x/i;(43)A、printf(,%ftn,s);C、printf(,%sn,s);B、printf(fn”,s);D、printf(n%cnH,s);程序2、程序说明 运行时输入1 个文本文件的文件名(不超过45个字符),删除该文件中所有空格符。程序#include#include void main()FILE char ch,filename46;(44)if(fl=fopen(filename;,r,
22、)=NULL)printf(M%s 不能打开!n,filename);exit(O);)f2=fopen(,temp.dat,w,);while(ch=(char)fgetc(fl)!=EOF)if(ch!=*)(45)fclose(fl);fclose(f2);)_(46)_rename(,temp.datH,filename);(44)A、gets(&filename);B、fgets(filename);C fgets(&filename);D、gets(filename);(45)A、fputc(f2,ch);B、fputc(ch,f2);C、fputc(f2,&ch);D、fputc
23、(&ch,f2);(46)A、remove(Tilename);B、delete temp.dat”;C re move(filename);D free filename;程序3、程序说明 下列程序运行时,输入n 个学生的姓名利3 门功课成绩,然后根据3 门功课的平均成绩从高分到低分显示每个学生的姓名、3 门功课成绩以及平均成绩。程序#include(47)void main()struct student char name9;int a3;float v;tempos;int i,j,k;scanf(d”,&n);s=(student*)malloc(n*sizeof(student);
24、foK(48)scanf(,%s,si.name);si.v=0;for(j=0;j3;j+)scanf(M%d,&si.aj);(49);)for(i=0;isk.v)k=j;temp=si;si=sk;sk=temp;for(i=0;in;i+)printf(s,%d,%d,%d,%fn”,si.name,si.a0,si.al,si.a2,si.v);(47)A、C、#include.#include B、D、#include#include(48)A、i=l;i=n;i+B、i=l;in;i+C、i=0;i0;-i(49)A、si.v=si.v+si.ajB、si.v+=si.aj/3
25、C、s+i-v=s+i-v+s+i-aj/3D、s+i-v+=s+i-aj/3(50)A、j=i-l;jn;j+B、j=i;j=n;j+C、j=i+l;jn;j+D、j=i+l;j=n;j+试题四 程序阅读题(本题共20分,第 1、3 小题6 分,第 2 小题8 分)说明:阅读下列程序段,写出题目要求的运行结果。1、程 序 1#include#include void main()char c,*a=Office”;int i;for(i=0;istrlen(a)/2;i+)c=*a;strcpy(a,a+l);astrlen(a)=c;astrlen(a)+l=W;puts(a);2、程序2
26、#include void main()float a43=3,2,5,-3,2,l,4,3,2,5,l,3;int i,j;float v;for(i=0;i4;i+)v=ai0;for(j=l;j3;j+)v+=aifj;v/=3;for(j=0;j3;j+)aij-=v;)for(i=0;i4;i+)for(j=0;j3;j+)printf(6.1f,”,ai皿);printf(bnM);)3、程序3#include#include void main()struct node int x;node*next;*pl,*p2=NULL;int a5=7,6,-5,28,l,i,j,s;f
27、or(i=0;i5;i+)s=0;for(j=l;jx=ai;p 1 -next=p2;p2=pl;while(pl!=NULL)printf(,%dn,p 1 -x);pl=pl-next;1试题五 程序设计题(本题共20分,每 题 10分)1、编程,输入n 后:输入n 个数,根据下式计算并输出y 值。x2 sin x x 2y=v 2 4-x 2 JV 22、编制函数,其功能是在float类 型 1 维数组中查找最大值、最小值并将它们返回到调用程序。2002年秋浙江省高校计算机等级考试试卷(二级C)试题一 计算机基础题(本题共15分)略试题二 语言基础题(本题共36分)(一)判 断 题(每
28、题1分,共 10分)说明:在以下提供的若干陈述中,逐一判断其正确与否,正确选择A,错误选择B。(16)C 语言程序的三种基本结构是顺序结构、选择结构和循环结构。(17)在 C 语言程序中,在 main函数中定义的变量称为全局变量。(18)表达式(3.6%2)符合C 语言语法。(19)在 C 程序中,用整数0 表示逻辑值“假(20)08是正确的整型常量。(21)设变量定义为char s=hello,则数组s 中有6 个元素。(22)若 x 是单精度实型变量,表 达 式(x=10/4)的值是2.5。(23)若变量已正确定义,表 达 式 x=y=l符合C 语言语法。(24)表 达 式!(x0lly0
29、)等价于!(x0)&!(y0)。(25)表达式(0 xl9l)&0 x7)的值是 3。(-)单 选 题(每题2 分,共 26分)(26)为表示“a 和 b 都不等于0,应使用的C 语言表达式是1 为I。A、(a!=0)II(b!=0)B、a II bC、!(a=0)&(b!=0)D、a&b(27)若 x 是单精度实型变量,k 是基本整型变量,以下正确的输入语句是(2 7)。A、scanf(%f%d,&x,&k);B、scanf(%f%d,x,k);C、scanf(%d%f,&x,&k);D、scanf(%d%f,x,k);(28)下列运算符中优先级最低的是(2是。A*B、C、=D、-(29)下
30、列程序段的输出结果是(2 9)。#define M(x,y)x/yprintf(u%dn,M(10,2+3);A、2B、2.0C 5 D、8(3 0)已知字符c 的 ASCH 码为 99,语句 primf(d,%c”J c-c,+l);的输出为_ 3QL。A、99,c B、99,100C、99,d D、语句不合法(31)对于以下递归函数f,调 用 f(2)的返回值是(3 1)。int f(int x)return(x=0)?x:f(x-l)+f(x-2);)A、-1B、0C、1D、3(32)下列程序段的输出结果是gi。int k,s;for(k=0,s=0;kk)break;else s+=k
31、;printf(H(%d,%d)n,k,s);A、(4,5)C、(6,9)(33)下列程序的输出结果是(3是#include int f(int n)static int k,s;n-;for(k=n;k0;k-)s+=k;return s;)void main()int k;k=f(3);printf(%d,%d);k,f(k);)A、(3,3)C、(3,6)(34)下列程序段的输出结果是(3 4)。int*p,*q,k=5,j=10;p=&j;q=&k;p=q;(*p)+;printf(,%dn,*q);A、5C、10(35)不正确的赋值或赋初值的方式是一A、char str6=s;T,i
32、 n yC char*str=string;(36)下列程序段的输出结果是(3 6)。int c 1,7,12);int*k=c+l;printf(M%du,*k+);A、2C、8(37)下列程序段的输出结果是(3夷。B、(4,6)D、不是 A、B、CB、(6,6)D、(6,12)B、6D、11(35)oB、char str10=string;D、char str10;str=stringH;B、7D、12char*st=,abcdn,efgh,nijkl,mnopn),*p=st;p+;printf(*p+l);A、cd B、fghC、ijkl D、出错(38)下列程序的输出结果是(3是。#
33、include void p(int*x,int*y)+x;-*y;)void main()int x=0,y=3;p(&x,&y);printf(%d,%d),x,y);A、(0,2)B、(0,3)C、(1,3)D、(1,2)试题三 程序填空题(每空2 分,共 20分)1、输 入 1 个正整数n,计算并输出s 的前n 项的和。s=1/2-2/3+3/4-4/5+.(-l)n l n/(n+l)#include void main()int k,flag=l,n;float s=0;scanf(M%d,&n);for(k=l;k=n;k+)s=s+(3 9);(40);)printf(,sum
34、=%fn,s);(39)A、1.0*k/(k+l)*flagB、flag*n/(n+l)C、-k/(k+l)D、1.0*k/(k+l)(40)A flag=-1B、s=-sC、flag=-flagD、k=-k2、输 入 100个整数,将其中的前20个数从小到大排序,然后输出这100个数。#include stdio.hnvoid s o r t(41)int i,k,m,t;for(i=0;in-l;i+)k=i;for(m=i+l;mn;m+)iff(42)k=m;(43)void main()(int k,a100;for(k=0;k100;k+)scanf(n%dn,&ak);_(44)
35、_;for(k=0;kamC、akam(43)A、ak=ai;ai=ak;C、t=ak;ak=ai;ai=t;(44)A、sort(a,20)C、sort(a20)3、从键盘输入一批以-1结束的整数,将其中的奇数写入当前目录下的文本文件res.txt。#include#include void main()int x;B、int*a,int nD、int aB、am-lamB、ak=t;ak=ai;ai=t;D、ai=ak;ak=ai;B、sort(a,20)D、sort(a)(45):if(fp=fopen(,res.txt,w,)=NULL)printf(不能打开文件)exit(O);)s
36、canf(n%dn,&x);wh i l e(46)if(x%2!=0)(47):(48):fclose(fp);(45)A、FILE fpB、FILE*fpC、filefpD、file*fp(46)A、x=-1B、feof(fp)C、!feof(fp)D、x!=-l(47)A、fprintf(fp,%d,x)B、printf(n%d”,x)C、fprintf(u%d M,x,fp)D、break(48)A、printf(%d x)B、fscanf(fp,u%dM,&x)C、fprintf(u%d,x,fp)D、scanf(H%dn,&x)试题四 程序阅读题(每题5分,共10分)1、输 入3
37、回车 后,下列程序的输出结果是#include nstdio.hvoid main()intj,k,n,s,a66;scanf(n%d&n);for(k=0;kn;k+)for(j=0;jn;j+)akj=j*n+k;printf(匕0l=%d a0l);s=0;for(k=0;kn;k+)s+=akk;printf(suml=%d,”,s);for(k=0;kn;k+)s+=an-k-lk;printf(nsum2=%d,H,s);for(k=0;kn;k+)s+=akM2;printf(nsum3=%dn,s);)2、下列程序的输出结果是 o#include#define LEN size
38、of(struct line)struct line int num;struct line*next;);void main()intk;struct line*p,*head;head=NULL;for(k=10;k0;k-)p=(struct line*)malloc(LEN);p-num=k;p-next=head;head=p;)while(p=p-next)!=NULL)printf(u%d,u,p-num);p=p-next;试题五 程序设计题(第 1题 9 分,第 2 题 10分,共 19分)1、输入一行字符,统计并输出其中英文字母、数字字符和其他字符的个数。2、输入一个正整数
39、n,求 1+1/2!+1/3!+1/n!的值,要求定义并调用函数fact(n)计算n 的阶乘,函数返回值的类型是单精度浮点型。2003年秋浙江省高校计算机等级考试试卷(二级C)试题一 计算机基础题(本题共15分)略试题二 语言基础题(本题共34分)(-)判断题(每题1分,共 10分)说明:在以下提供的若干个陈述中,逐一判断其正确与否,选 A 表示正确,选 B 表示错误。(16)C 语言源程序文件通过了编译、连接之后,生成一个后缀为.EX E的文件。(17)在 C 程 序 中,函数既可以嵌套定义,也可以嵌套调用。(18)在 C 程 序 中,APH和 aph代表不同的变量。(19)表 达 式 01
40、95是一个八进制整数。(20)表 达 式 3.14%2不 符 合 C 语言语法。(21)设变量定义为charcc=12n345,则表达式sizeof(cc)的值是7。(22)执行 printf(u%d,M,-1A,+,a,-m”输出 0。(23)表 达 式!x 等 价 于 x!=l o(24)表 达 式(z=0,(x=2)ll(z=l),z)的值是 1(25)执行 printf(%x,12345+l);,输出 12346。(二)单 选 题(每 题 2 分,共 2 4 分)(26)运 算 符(2 6)的优先级最高。A、B、+=C?:D、+(27)若 a 是整型变量,表 达 式(a八 a)等价于(
41、27).A、a B、1 C、0 D、2(28)下列程序段的输出结果是281#define MA(x,y)(x)*(y)printf(M%d,MA(5,4+2)-7);A、30 B、23 C、15 D、1(29)设有整型变量a,b,c,其 中 a,b 的 值 分 别 为 1 0 与 2 0,计算表达式”c=(a%2=0)?a:b”后,c 的值 为 291A、0 B、5 C、10 D、20(30)下列程序的输出结果是一(30)。#includevoid main()int y;double d=3.4,x;x=(y=d/2.0)/2;printf(%0.2f,%d),x,y);)A、(0.00,1
42、)B、(0.85,1.7)C、(0.50,1)D、以上都不对(31)程序段(31)的功能是将变量u、S 中的最大值赋给变量t oA、if(us)t=u;t=s;B、t=u;if(ts)t=s;C if(us)t=s;else t=u;D、t=s;if(ut)t=u;(32)对于以下递归函数f,调用f(3)的返回值是(32)int f(int n)if(n)return f(n-l)+n;else return n;)A、10 B、6 C、3 D、0(33)下列程序段的输出结果是一(33)。int k=1;switch(k)case l:putchar(4P,);case 2:case 3:pu
43、tchar(Q);break;case 4:putchar(R);default:putchar(S);)A、P B、PQ C、PQR D、PQRS(3 4)下列程序段的输出结果是(34)。void main()intk;for(k=l;k5;k+)if(k%2)printf(#n);else continue;printf,*);A、#*#*B、*#*#C、#D、以上都不对(35)设变量定义为 int a131=f l,4,7L*p=&a121-2,则*p 的值是(35)。A、&a2-2 B、5 C、2 D、1(36)若变量已正确定义,G 9 不能使指针p 成为空指针。A、p=W B、p=0
44、 C、p=NULL D、p=EOF(37)下列程序的输出结果是(3 7)。#includeint x;int p(int*y)+*y;return x-1;)void main()(inty;y=p(&x);printf(%d,%d)”,x,y);A,(-1,0)B、(1,-1)C、(1,0)D、出错试 题 三 程 序 填 空 题(每 空 2 分,共 1 6 分)说明:阅读下列程序说明和相应程序,在每小题提供的若干可选答案中,挑选一个正确答案。程 序1【程序说明】输 出 1-1000之间所有满足各位数字的立方和等于它本身的数【程序】#includevoid main()int digit,k,
45、m,s;for(k=l;k m=m/10m=m%10C、m=mD、m=k/10(40)A.、m!=sB、m=sC、k!=sD、k=s程 序2【程序说明】输 入 1 0 个 整 数,将它们存入数组a 中,再输入一个数x,然后在数组中查找x,如 果 找 到,输出相应的下标(如有多个元素与x 相 等,只要输出下标值最小的那个元素的下标),否 则,输出 Not Found1。【程序】#includevoid main()int k,sub,x;int a10;for(k=0;k10;k+)scanf(,%d,ak);printf(lnput xnn);scanf(%d,&x);sub=-l;for(k
46、=0;kl 0;k+if(ak=x)411if(42)print。”Index is%dnsub);else printf(nNot Foundn);)(41)A sub=k;B、break;C、sub=k;break;D、sub=k;break;(42)A、sub!=-l B、sub!=0 C、sub=-1 D、sub=0程 序 3【程序说明】当前目录下存放着文本文件from.txt,将其中除数字以外的内容显示在屏幕上。【程序】#include#includevoid main()FILE*fr;int ch;if(43)printf(Can not open file )fbrm.txt)
47、;exit(0);)while(!feof(fr)(4 4);if(4 5)putchar(ch);)fclose(fr);)(43)A、(fp=fopen(from.txt1 1 wn)=NULLC、fr=fopen(from.txt,r)=NULL(44)A、ch=getchar(fr)ch=fgetc()(45)A、ch=,0,llch=,9,B、ch 9,B、(fr=fopen(,from.txt;,r,)=NULLD、fr=fopen(,from.txtn,aH)=NULLC、ch=fgetc(fr)D ch=getchar()C、ch=,0,&ch=,9 D、ch9,试 题 四 程
48、 序 阅 读 题(每题5 分,共 15分)说明:阅读下列程序,将运行时的输出结果写在答卷纸的相应题号下。1、程 序 1#includevoid main()int i,k,m;int a8=15,60,75,73,92,87,64,79,s10;for(k=0;k10;k+)sk=0;for(i=0;i8;i+)k=ai/10;sk+;)m=s0;k=l;while(km)m=sk;k+;printf(%d,m);)2、程 序 2#includevoid main()intj,k;int a3=3,4,5);for(j=0;j3;j+)for(k=O;k3;k+)printf(,%d,a(j+
49、k)%3);printff 铲);3、程 序 3#includevoid main()int i=0,n;char s10=(,298h0r,;n=0;for(i=0;si!=*O;i+)if(si=,Or)n=n*10+(si-0);else break;printf(%dnn,n);)试题五 程序设计题(每题10分,共 20分)1、输 入 10个整数,求它们的平均值,并输出大于平均值的数据的个数。2、输入两个正整数m 和 n(m x=2.0(*p).y=3.0 C、point.x=2.0 D、p-s=“a”(3 2)下列程序段的输出结果是(3 2)。int a=10,b=0;if(a15)
50、b=l;else if(a=1 llmonth=12);B、doscanf(=1&month=12);C、doscanf(t4%d,&month);while(month 12);D、doscan month);while(month=12);(3 4)调用函数f(27)的输出结果是(3 4)。void f(int n)if(n5)printf(44%d,n);elseprintf(d”,n%5);f(n/5);)A、102 B、201 C、21 D、20(3 5)下列程序段的输出结果是(3 5)。int k=3,j=4;int*p=&k,*q=&j;(*P)Tj=k;(*q);print“(