安徽省二级考试C语言_第1页
安徽省二级考试C语言_第2页
安徽省二级考试C语言_第3页
安徽省二级考试C语言_第4页
安徽省二级考试C语言_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、全国高等学校(安徽考区)2002年1月计算机水平考试试卷单项选择题(每题1分,共10分)C语言部分一、 填空1、 若a为float型变量,且a4.6785,则表达式(int)(a*100+0.5)/100.0的值为_2、 若int x=11,y=10;则表达式x-y?10:11y+?a:z的值为_3、 若所有变量均为int型,则执行下面程序段后x的值为_x=80,a=10,b=16,y=9,z=0;if(ab) if(b!=15) if(!y) x=81; else if(!z)x=79;4、 若i、j为int型,则下面循环体执行的次数为_i=1;j=0;while(i+jj) j=j+2;

2、else i=i+2;5、 若数组a10int型,元素及值如下:数组元素:a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 值: 9 4 8 3 2 6 7 0 1 5则*(a+a9)的值为_6、 以下函数调用语句中实参个数为_ sub1(x1,x2),(x3,x4,x5),x6)7、 若以下函数定义:int (*hs)( ) . /*函数体*/则函数hs的返回值为_类型8、 若int占2个字节,char占1个字节,float占4个字节,则定义如下:struct stu union char bj5; int bh2;class; char xm8; float cj;xc; 则si

3、zeof(xc)的值为_9、 设有如下宏定义 define a 6 define b a+4执行c=b*10;(c为int型);则c的值为_10、 在c中,文件指针变量的类型只能是_二、 读程序,写程序运行结果1、 main()int i;float j; i=18; j=29.4361; printf(“i=%4d,j=%2.2f”,i,j); 2、 main()int k=10;char c=b; doswitch(c+) case a:k+; case b:k-; case c:k+=3;break; case d:k=k%4; while(c!=c); printf(“%dn”,k);

4、3、 main()char a=”computer”; char t; int i,j=0; for(i=0;i8;i+) for(j=i+1;j8;j+) if(aiaj) t=ai; ai=aj; aj=t; printf(“%s”,a);4、 main()char *p,s=”abcdefg”; for(p=s;*p!=0;)printf(“%sn”,p); p+; if(*p!=0)p+; else break;5、 main()auto int i; for(i=1;iy&xz) return x; else if(y=x&yz) _; else return z;main()int

5、 x,y,z,s,i=1,j; scanf(“%d%d%d”,&x,&y,&z); s=_; while(1) j=i*s; if(_) break; i+; printf(“%dn”,j);3、 判断输入的字符是否中心对称例:xyzzyx或xyzyx就是中心对称main()char s100,*p1,*p; int n; gets(s); n=strlen(s);p1=s;p2=_;while(p1p2)if(*p1!=*p2) break;else p1+;_;if(p1p2) printf(“no”);else printf(“Yesn”);4、 对于结构体数组,求四人中年龄最大的人的姓

6、名及年龄define NULL 0static struct nodechar name20; int age; person=“Lihong”,18,”zhangfang”,19,”Liqing”,18,”wanglin”,20; main() struct node *p,*q; int old=0; q=NULL; p=person; for(;_;p+) if(oldage) q=p; _; printf(“%s,%dn”,q-name,q-age);四、 编程题1、 36块砖36人搬,男子一人一次搬4块,女子一人一次搬3块,小孩2人一次搬一块,正好一次全搬完,求男子、女子、小孩各多少

7、人?2、 输入序号n,求费波拉斐数列(第n项)3、 用循环将a34的第一行与第三行对调。 a 0 2 9 7 27 11 1 3 5 13 6 8 5 13 6 8 27 11 1 3 0 2 9 7全国高等学校(安徽考区)2002年6月计算机水平考试试卷(二级C语言)计算机文化基础部分单项选择题(每题1分,共10分) (缺)C语言部分三、 填空1、 int k=-1;执行printf(“%o”,k),结果是_。2、 c语言中,_类型变量的所有成员以覆盖方式共享存储单元。3、 若打开一已存在的非空文件”FILE1”进行修改,正确的打开语句是_。4、 设所有变量已定义为int型,运行以下程序段后

8、结果是_。a=b=c=0;x=34;if(x)x-;else if(b);if(c)c=3;else x=4;5、 执行下列语句后,a、b、c的值为_。int x=10,y=9;int a,b,c;a=(-xy+)?x:+y;b=x+;c=y;6、 字符串”101x44102abnd”的长度是_。7、 已知函数定义int *st(int x,float *p) .,则函数类型是_。8、 设char str110=”ABCDEF”,str2=”xyz”;执行printf(“%s”,strlen(strcpy (str1,str2);后输出结果_。四、 选择(22112)1、 以下不合法的c标识符

9、是_A、_12ab B、void C、imax D、str_124_Li2、 已知int a,*p,*w;p=&a,w=&p;取a值的表达式_A、&a B、&*p C、*p D、*w3、 int a10,*p=a;对数组元素ai的正确引用_A、a+i B、p+i C、*(p+i) D、*(a0+i)4、使用scanf(“x=%f,y=%f”,&x,&y);要求x、y均为3.12,正确输入_A、3.12,3.12 B、3.12 3.12 C、x=3.12,y=3.12 D、x=3.12 y=3.125、设x,y为浮点型变量,合法赋值语句是_A、x=8+y; B、(float)3 C、y=(x%2

10、)/10 D、*x=106、若有下面定义:#define N 2 #define Y(n) (N+1)*5) 执行语句:z=2*(NY(5)后结果是_A、语句有错误 B、z=34 C、z=70 D、z=157、设整型变量a,b,c,m,n均为1,执行(m=ab)&(nab)后m,n值是_A、0,0 B、0,1 C、1,0 D、1,18 、下面语句中错误的是_A、while(x=y-)10; B、do x+;while(x=5);C、while(0); D 、do 3; while(a=b);9、 设a、b为int型变量,执行下面语句后b的值_a=1;b=10;dob-=a;a+;while(b

11、-0);A、9 B、-2 C、-1 D、810、若有以下定义,则值为3的表达式int a=1,2,3,4,5,6,7,8,9,10,*p=a;A、p+=2,*(p+) B、p+=2,*+pC、p+=3,*p+ D、p+=2,+*p11、函数的功能是交换x、y值,且通过正确调用返回交换结果,不能正确执行此功能的函数是_A、 fa(int *x,int *y)int *p;*p=*x;*x=*y;*y=*p;B、 fb(int x,int y)int t;t=x;x=y;y=t;C、 fc(int *x,int *y)int p;p=*x;*x=*y;*y=p;D、 fd(int *x,int *

12、y)*x=*x+*y;*y=*x-*y;*x=*x-*y;12、定义如下结构:struct stu long sno; char name10; float score;表达式“sizeof(struct stu)”的值为_。A、10 B、14 C、18 D、22五、 读程题,写出运行结果1、 main()int i,j,m,n;i=7;j=10; m=+i;n=j+; printf(“%-5d%5dn%-5d%5d”,i,j,m,n);2、 main()int a=0,i; for(i=1;i5;i+) switch(i) case 0: case 3:a+=3; case 1: case

13、2:a+=2; default:a+=5; printf(“n%d”,a); 3、#define N 6main() int i,j,aNN;for(i=0;iN;i+) aii=1; ai0=1;for(i=2;iN;i+) for(j=1;jN-1;j+)aij=ai-1j-1+ai-1j;for(i=0;iN;i+) for(j=0;j=i;j+)printf(“%6d”,aij); printf(“n”); 4、int k=2;f(int m) m+=k;k+=m; if(m=6)return(f(+m); else printf(“%d,%d”,m,k+); main()int i=

14、4;f(i+); printf(“%d,%dn”,i,k);5、main() char a25=“1234”,”2354”;char *p2;int i,j,s=0;for(i=0;i2;i+) pi=ai;for(i=0;i0;j+=2) s=s*10+pij-0;printf(“%dn”,s); 六、 程序填空1、 用下列公式计算的值,请完善程序/4=1-1/3+1/5-1/7+.+1/n (程序要求|1/n|1e-5); printf(“pi=%fn”,_); 2、 求n!,计算1!,2!,.,n!(n由键盘输入)long sp(int i) static long k=1; k=_;

15、return k; main()int n,i;scanf(“%d”,&n); for(i=1;_;i+) printf(“%d!=%ldn”,_); 3、 字符串中小写字母转换成大写字母include void main(void)char *chp,str20=”Heifei”; _;while(*chp!=0) if(*chp=a&*chp=z) *chp=_; _; puts(str);七、 编程题1、 统计从键盘输入的字符串中数字、字母、空格及其他符号的个数。2、 从键盘输入一个23矩阵,将其转置为32的矩阵输出。3、 编程实现由主函数输入m,n,按下述公式计算C n m的值。 C

16、n mn!/(m!*(n-m)!) 全国高等学校(安徽考区)2003年6月计算机水平考试试卷(二级C语言)计算机文化基础部分单项选择题(每题1分,共10分)1、 pc硬件在逻辑上主要由_、存储器、输入设备、输出设备等部件组成。A、运算器 B、CPU C、显示器 D、键盘2、 二进制数101110转换成等值的八进制数是_。A、45 B、56 C、67 D、463、 在计算机硬件中,Cache是_存储器。A、只读 B、可编程只读 C、可擦可只读 D、高速缓存4、 操作系统是一种_。A、通用软件 B、系统软件 C、应用软件 D、编译程序5、_简称为DVD光盘。A 影视光盘 B、音乐光盘 C、数字视频

17、光盘 D、多媒体课件6、 IP地址是由_位二进制数字组成。A、64 B、32 C、16 D、87、 下列设备中,_不是多媒体计算机系统的必备部件。A、视频卡 B、声频卡 C、CDROM D、音箱8、 下列不属于计算机病毒的特性_。A、传染性 B、破坏性 C、潜伏性 D、免疫性9、 关闭一个应用程序窗口,可以按快捷键_。A、Alt+F4 B、Ctrl+F4 C、Alt+Esc D、Ctrl+Esc10、windows98自带的只能处理纯文本的文字编辑工具是_。A、 写字板 B、剪贴板 C、记事本 D、WordC语言部分一、 单项选择题(每题2分,共30分)1、 C语言中运算对象必须是整型的运算符

18、为_。A、%= B、/ C、= D、yz,则正确的C语言表达式为_。A、xy=z B、(xy)and(y=z) C、(y=z) D、(xy)&(y=z)6、 若有语句scanf(“%d%d”,&a,&b),要使变量a、b分别得23、45,则正确的输入形式为_。A、23 45 B、23,45 C、23;45 D、23457、 已知大写字母A的ASC码值是65,小写字母a的ASC码值是97,则用八进制表示的字符常量101为_。A 字符A B、字符a C、字符e D、非法常量8、 若有宏定义#define w(x) 3+x ,则表达式a2*w(3)的值为_。A、8 B、12 C、6 D、99、 若有

19、定义 int x=2,y=3,z=4; 则表达式 !(x+y)+z-1&y+z%2的值为_。A、4 B、0 C、1 D、210、有如下程序 main( ) int n=8; while(n5) n-;printf(“%d”,n); 该程序的输出结果是_。A、876 B、765 C、8765 D、765411、下列语句中,合法的数组定义是_。A、char a3=abc,12,”fox”;B、char a3=abc,12,”cd”;C、char a3=a,”12”,”fox”;D、char a3=“a”,”12”,”cd”;12、设有下列结构型变量w的定义,则表达式”sizeof(w)”的值是_。

20、 Struct long num;char name15;union float x ; short z; yz;w; A、19 B、20 C、23 D、2513、设有以下的语句 int a42=1,2,3,4,5,6,7,8; 则*(*(a+2)+1)的值是_。A、3 B、4 C、5 D、614、设有一个名为”myfile.c”的c程序,其主函数为main( int argc,char *argv ),如果在执行时,输入的命令行为 myfile aa bb cc ,则形式参数argc的值是_A、3 B、4 C、myfile D、aa bb cc15、rewind函数的作用是_A、重新打开文件

21、 B、返回文件长度值 C、使文件位置指针重新回到文件末 D、使文件位置指针重新回到文件开始二、程序分析题(每题5分,共25分)写程序运行结果1、 void main( )char c1=97; if (c1=a&c1=z) printf(“%d,%c”,c1,c1+); else printf(%c”,c1); 运行结果为_2、 main( ) int a10=1,2,3,4,5,6,7,8,9,10; int *pa, *pb, x, i; for (i=0 , pa=a , pb=a+9 ; i5; i+ , pa+ , p-)x=*pa;*pa=*pb;*pb=x;for (pa=a;p

22、aa+10;pa+) printf(“%3d”,*pa);运行结果为_3、 main( ) int i,j,k; for(i=0;i5;i+) for(k=0;k=5-i;k+) printf(“ ”); for(j=0;j2*i-1;j+) printf(“*”); printf(“n”); 运行结果为:4、#include main( ) char c; 若从键盘输入:321回车 while (c=getchar( )!=n) 运行结果为:_ switch(c-1) case 0: case 1:putchar(c+2); case 2:putchar(c+3); break; case

23、3:putchar(c+4); default:putchar(c+1);break; printf(“n”);5、#include long fun(int n) long s; if (n=1|n=2) s=2;else s=n+fun(n-1);return s; void main() printf(“%dn”,fun(5); 运行结果为_三、填空题(每空2分,共16分)4、 设有定义:int n,*p=&n;以下语句将利用指针变量p读写变量n的内容,请将语句补充完整。scanf(“%d”,_);printf(“%d”, _);5、 用下列公式计算的值,请完善程序/4=1-1/3+1/

24、5-1/7+.+1/n (程序要求|1/n|10-5)#include _main( )float pi=0.0,n=1.0,t,s=1.0; do t=s/n; pi+=t; s*=_; n+=2; while(_); printf(“pi=%fn”,4*pi); 3、下列程序是删除给定字符串中的逗号字符,请完善程序。include main() char s=”this ,is ,string”, char c=,; printf(“%sn”,s); delete(_,c); printf(“%sn”,s);delete(char s,char c)int i,j; for(i=j=0;s

25、i!=0;i+) if(si_) sj+=si; sj=_;四、程序设计题(15分,2,37分,共19分)1、 从键盘输入若干学生的成绩,并输出最高成绩和最低成绩,当输入成绩为负值时结束。2、 编写一个求k!的函数,计算s=1!+2!+.+n!3、 将输入的n个整数从大到小排序输出,并统计所有下标为奇数且数组元素的值为偶数的个数。2002-1一, 1、4.68 2、a 3、79 4、5 5、6 6、3 7、整型指针 8、17 9、46 10 、FILE *二,1、i= 18,j=29.44 2、12 3、utrpomec 4、abcdefg 5、103 cdefg 114 efg g三、1、l

26、eap=1 0 2、return y max(x,y,z) j%x= =0&j%y= =0&j%z= =03、s+n-1 p2- 4、qage2002-6一、1、177777 2、公用体 3、fopen(“FILE1”,r+); 4、x=45、11,9,11 6、10 7、整型指针 8、3二、B D C C A B B B D A 11、C D 12、C三、1、8 11 2、29 3、1 4、15,23 5,24 8 10 1 1 1 2 1 5、1 3 2 5 1 3 3 1 1 4 6 4 1 1 5 10 5 1 四、1、pi+t -1 t pi*4 2、k*i i=n i,sp(i)

27、3、chp=str *chp-32 chp+2003-6文化基础:B B D B C B D D A C一、A B A C C AADCB DCDBD二1、98,a 2、10 9 8 7 6 5 4 3 2 1 3、* 4、64534 5、14 * * * * * * * * * * * * * * *三、1、p *p 2、 -1 fabs(t)b?a+b:c+d的值为_。A)1B)2C)3D)719设有int a=5,b=6,c=2; ,则表达式ab|-c运算后,c的值为_。A)0B)1C)2D)320若变量c为char类型,以下不能正确判断其为大写字母的表达式是_。A)A=c=A & c=

28、a&(c+32)=zD)!(cZ)21若从键盘上输入88后,以下程序的输出结果是_。#include “stdio.h”void main() int a; scanf(“%d”,&a); if (a90) printf(“%d”,a); if (a80) printf(“%d”,a); if (a70) printf(“%d”,a);A)888888 B)8888C)88D)822以下程序段的输出结果是_。int a=2,b=1,c=2;if (ab) if (b0) c=0; else c+=1;printf(“%dn”,c);A)0B)1C)2D)323语句while (!w);中的表达

29、式!w等价于_。A)w=1B) w=0C)w!=1D)w!=024以下程序段的输出结果是_。int a=1,b=2,c=3,t;while (bs2B)strcat(s1,s2)C)strcpy(s1,s2) D)strcmp(s1,s2)029在C语言中,函数返回值的类型取决于_。A)函数定义中在函数首部所说明的类型B)在return语句中表达式值的类型C)调用函数时主调函数所传递的实参的类型D)函数定义中形参的类型30若从键盘上输入3,4后,则以下程序的输出结果是_。#include “stdio.h”void swap(int x, int y) int t; t=x;x=y;y=t;

30、printf(“%d,%d”,x,y);void main() int a,b; scanf(“%d,%d”,&a,&b); swap(a,b);printf(“%d,%d”,a,b);A)3,4,3,4B)4,3,3,4C)4,3,4,3 D)3,4,4,331一个源文件中定义的全局变量的作用域是_。A)本函数的全部范围 B)从定义开始至本文结束C)本文件的全部范围 D)本程序的全部范围32下列关于C语言函数的说法中正确的是_。A)函数可以嵌套定义B)函数不可以嵌套调用C)函数可以嵌套调用,但不能递归调用 D)函数嵌套调用和递归调用均可以33有如下程序段:int a=10, b=2, *p;

31、p=&a; a=*p+b;执行该程序段后,a的值为_。A)12B)11C)0D)编辑出错34设有int a10=1,2,3,4,5,6,7,8,9,10, *p=a;,则p5的值是_。A)5B)6C)7D)835运行程序:#include “stdio.h”void func(int x, int *y) x=x+1; *y=*y+1;void main() int a=10, b=20; func(a, &b); printf(“%d, %dn”,a,b);输出结果是_。A)10,20B)11,21C)10,21 D)11,2036若有定义 char str=”uvwxyz”, *p=str

32、;,则执行语句printf(“%cn”,*(p+3);后的输出结果是_。A)x B)xyz C)元素str3的地址 D)字符x的地址37以下程序的输出结果是_。#define MUL(x) x*x#include “stdio.h”void main() int a=4,b=2; prinntf(“%dn”,MUL(a)/Mul(b);A)4B)8C)16D)3238以下类型说明和变量定义中正确的是_。A)typedef structB)struct REC int n; char c; REC; int n; char c; REC t1, t2; REC t1, t2;C)typedef

33、structREC;D)struct int n; char c; REC; int n=0; char c=A; t1, t2; REC t1, t2;39已知int x=56;,则执行语句printf(“%dn”, x2);后的输出结果为_。A)34B)14C)224D)5640若要用fopen()函数以读写方式打开一个已存在的二进制文件,则打开方式是_。A)”a”B)”wb+”C)”ab”D)”rb+”二、填空题(每空2分,共20分)1已知char c=A;,则执行语句printf(“%d”,c);后的输出结果为_。2已知double x=56.78;,则执行语句printf(“%1.1

34、fn”,x);后的输出结果为_。3已知int a=2,b=3;,则执行语句a*=b+4;后,a的值为_。4已知double x=1,y;,则表达式y=x+3/2的值为_。5数学表达式1x3的C语言表达式子为_。6已知int k=-5;,则下面while循环执行的次数是_。 while (k=0) k=k+1;7以下程序段的输出结果为_。 char s=”Hello,World!”; s5=0; printf(“%s”,s);8若有定义:union long x2; char y6; m;,则执行语句printf(“%dn”,sizeof(m);后的输出结果为_。9在C语言中,若需调用数学库函数

35、对数据进行处理,则需包含头文件_。10已知文件指针fp指向某文件的末尾,则!feof(fp)的值是_。三、阅读理解题(每题4分,共20分)1以下程序的运行结果为_。#include void main() int i,a=0,b=0,c=0; for(i=1;i5;i+) switch(i) case 1:a+; case 2:b+; case 3:a+;b+;break;default:c+; printf(a=%d,b=%d,c=%dn,a,b,c);2以下程序的运行结果为_。#include void main() int s=0,x=5639; while (x0) s=s+x%10; x=x/10; printf(a=%dn,s);3以下程序的运行结果为_。#include void main() int i,j=0; char s=PROGRAM; for(i=1;si

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论