ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:19.01KB ,
资源ID:11208917      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11208917.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(c语言期末复习试题附答案.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

c语言期末复习试题附答案.docx

1、c语言期末复习试题附答案试卷编号:11201所属语言:C语言试卷方案:C语言期末考试试卷总分:100分共有题型:4种一、单项选择 共30题 (共计60分)第1题 (2.0分)设有定义:int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是( A ).A:k+ B:k+=1C:+kD:k+1第2题 (2.0分)已知int i=5,执行语句i+=+i后, i的值是( C).A:10B:11C:12D:A、B、C都不对第3题 (2.0分)以下程序的功能是:给r输入数据后,计算半径为r的圆面积s.程序在编译时出错.#include void main( )/* Beginning */

2、 int r; float s; scanf(%d,&r); s=p*r*r; printf(s=%fn,s);出错的原因是(D ).A:注释语句书写位置错误B:存放圆半径的变量r不应该定义为整型C:输出语句中格式描述符非法D:计算圆面积的赋值语句中使用了非法变量第4题 (2.0分)ABC的长度是( B ).A:11B:7C:5D:3第5题 (2.0分)已知int j,i=1;,执行语句j=i+;后,j的值是( C ).A:1B:2C:-1D:-2第6题 (2.0分)有以下程序:#include void main( ) int s=0, a=1, n; scanf(%d, &n); do s

3、+=1; a=a2; while(a!=n); printf(%dn, s); 若要使程序的输出值为2,则应该从键盘输入给n的值是( B ).A:-1B:-3C:-5D:0第7题 (2.0分)执行以下程序后,输出的结果是( D ).#include void main( ) int y=10; do y ; while( y); printf(%dn,y );A:-1B:1C:8D:0第8题 (2.0分)以下循环体的执行次数是( C ).#include void main( ) int i,j; for(i=0,j=1; i=j+1; i+=2, j )printf(%dn,i);A:3B:

4、2C:1D:0第9题 (2.0分)有以下程序段:int k=0;while(k=1)k+;while循环执行的次数是(A ).A:无限次B:有语法错误,不能执行C:1次也不执行D:执行1次第10题 (2.0分)有以下程序#include void main( ) int m,n,p; scanf(m=%dn=%dp=%d,&m,&n,&p); printf(%d%d%dn,m,n,p);若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789,则正确的输入是( A ).A:m=123n=456p=789B:m=123 n=456 p=789C:m=123,n=456,p

5、=789D:123 456 789第11题 (2.0分)设变量已正确定义,以下能正确计算f=n!的程序段是(D)A:f=0; for(i=1;i=n;i+) f*=i;B:f=1;for(i=1;i1;i+) f*=i;D:f=1; for(i=n;i=2;i ) f*=i;第12题 (2.0分)在下列程序中,没有构成死循环的程序段是( B ).A: int i=100;while(1) i=i%100+1; if(i100) break;B:int k=1000;do+k; while(k=10000);C:for(;);D:int s=36; while(s); -s;第13题 (2.0分

6、)有如下程序:#include void main( ) int n=9; while(n6) n-;printf(%d,n);该程序段的输出结果是( B ).A:987B:876C:8765D:9876第14题 (2.0分)以下程序的输出结果是( D ).#include void main( ) int x=10,y=10,i; for(i=0;x8;y=+i) printf(%d %d ,x ,y);A:10 1 9 2B:9 8 7 6C:10 9 9 0D:10 10 9 1第15题 (2.0分)有如下程序:#includevoid main( ) int n5=0,0,0,i,k=

7、2; for(i=0;ik;i+) printf(%dn,nk);该程序的输出结果是( D ).A:不确定的值B:2C:1D:0第16题 (2.0分)下列程序执行后的输出结果是( A ).#includevoid main( ) char arr24; strcpy(arr,you); strcpy(arr1,me); arr03=&; printf(%s n,arr); A:you&meB:youC:meD:err第17题 (2.0分)以下程序的输出结果是( C ).#includevoid main( ) int i, x33=1,2,3,4,5,6,7,8,9; for(i=0;i3;i

8、+) printf(%d,xi2i);A:1,5,9,B:1,4,7,C:3,5,7,D:3,6,9,第18题 (2.0分)以下数组定义中不正确的是( D ).A:int a23;B:int b 3=0,1,2,3;C:int c100100=0;D:int d3 =1,2,1,2,3,1,2,3,4;第19题 (2.0分)以下能正确定义数组并正确赋初值的语句是(D ).A:int N=5,bNN;B:int a12=1,3;C:int c2 =1,2,3,4;D:int d32=1,2,3,4;第20题 (2.0分)有以下程序:int a=4;int f(int n) int t=0; st

9、atic int a=5; if(n%2) int a=6; t+=a+; else int a=7; t+=a+; return t+a+;main( ) int s=a,i=0; for( ; i2; i+) s+=f(i); printf(dn,s);程序运行后的输出结果是(B)A:24B:28C:32D:36第21题 (2.0分)以下正确的函数定义形式为(A)A:double fun(int x, int y)B:double fun(int x; y)C:double fun(int x; int y)D:double fun(int x, y)第22题 (2.0分)C语言规定,函数

10、返回值的类型是由(D)A:return语句中的表达式类型所决定的B:调用该函数时的主调函数类型所决定的C:调用该函数时系统临时决定的D:在定义该函数时所指定的函数类型所决定的第23题 (2.0分)有以下程序: 输出结果是() (注:5353)void swap1(int c0 , int c1 ) int t ; t=c00; c00=c10; c10=t; void swap2(int *c0, int *c1) int t; t=*c0; *c0=*c1; *c1=t; main( ) int a2=3,5, b2=3,5; swap1(a, a+1); swap2(&b0, &b1);

11、printf(%d %d %d %dn,a0,a1,b0,b1); A:3 5 5 3B:5 3 3 5C:3 5 3 5D:5 3 5 3第24题 (2.0分)以下程序的输出结果是( A ).amovep(int*p, int (*a)3,int n) int i, j; for( i=0;in;i+) for(j=0;jn;j+) *p=aij; p+; main( ) int *p,a33=1,3,5,2,4,6; p=(int *)malloc(100); amovep(p,a,3); printf(%d %d n,p2,p5); free(p); A) 5 6 B) 2 5 C) 3

12、 4 D) 程序错误第25题 (2.0分)有以下函数:fun(char *a,char *b) while(*a!=0)&(*b!=0)&(*a=*b) a+; b+; return (*a*b); 该函数的功能是(D ).A:计算a和b所指字符串的长度之差B:将b所指字符串复制到a所指字符串中C:将b所指字符串连接到a所指字符串后面D:比较a和b所指字符串的大小第26题 (2.0分)有以下程序:fun(char p 10) int n=0,i; for(i=0;i7;i+) if(pi0= T ) n+; return n;main( ) char str 10=Mon,Tue,Wed,Th

13、u,Fri,Sat,Sun; printf(%dn,fun(str);程序执行后的输出结果是( B ).A:1B:2C:3D:0第27题 (2.0分)有以下程序:main( ) char str10=China,Beijing,*p=str; printf(%sn,p+10); 程序运行后的输出结果是( B ).A:ChinaB:BeijingC:ngD:ing第28题 (2.0分)有以下程序:#define f(x) (x*x)main( ) int i1, i2; i1=f(8)/f(4) i2=f(4+4)/f(2+2) printf(%d,%dn,i1,i2);程序运行后的输出结果是(

14、 C ).A:64, 28B:4, 4C:4, 3D:64, 64第29题 (2.0分)有以下程序: 结果是(A)void change(int k ) k0=k5; main( ) int x10=1,2,3,4,5,6,7,8,9,10,n=0; while(n=4) change(&xn); n+; for(n=0;n5;n+) printf(%d,xn); printf(n); A) 678910 B) 13579 C) 12345 D) 62345A:678910B:13579C:12345D:62345第30题 (2.0分)在以下程序中,能够通过调用函数fun( ),使main(

15、)函数中的指针变量p指向一个合法的整型单元的是(C ).A:main( )int *p;fun(p); int fun(int *p) int s;p=&s; B:main( ) int *p; fun(&p);int fun(int *p) int s;*p=&s; C:#include main( ) int *p; fun(&p); int fun(int *p) *p=(int*)malloc(2); D:#include main( ) int *p; fun(p); int fun(int *p) p=(int*)malloc(sizeof(int); 二、程序填空 共1题 (共计

16、10分)第1题 (10.0分)/*-【程序填空】-功能:计算平均成绩并统计90分以上人数。-*/main() int n,m;float grade,average; /*SPACE*/ average=n=m=【?】; /此处为: 0 while(1) /*SPACE*/ 【?】(%f,&grade); /此处为: scanf if(grade0) break; n+; average+=grade; /*SPACE*/ if(grade90)【?】; /此处为:break m+; if(n) printf(%.2f%dn,average/n,m);三、程序改错 共1题 (共计10分)第1题

17、 (10.0分)/*- 【程序改错】-功能:首先把b所指字符串中的字符按逆序存放, 然后将a所指字 符串中的字符和b所指字符串中的字符,按排列的顺序交叉 合并到c所指数组中,过长的剩余字符接在c所指数组的尾部。例如:当a所指字符串中的内容为“abcdefg”,b所指字符串中的 内容为“1234”时,c所指数组中的内容应该为“a4b3c2d1 efg”;而当a所指字符串中的内容为“1234”,b所指字符 串中的内容为“abcdefg”时,c所指数组中的内容应该为 “1g2f3e4dcba”。-*/#include #include #include void fun( char *a, char

18、 *b, char *c ) int i , j; char ch; i = 0; j = strlen(b)-1; /*FOUND*/ while ( i j ) /此处 改为 ch = bi; bi = bj; bj = ch; i+; j-; /*FOUND*/ while ( *a &*b ) / 此处&改为 |(逻辑或) if ( *a ) *c = *a; c+; /*FOUND*/ a+; /此处a+ if ( *b ) *c = *b; c+; b+; *c = 0;main() char s1100,s2100,t200; clrscr(); printf(nEnter s1

19、 string : ); scanf(%s,s1); printf(nEnter s2 string : ); scanf(%s,s2); fun( s1, s2, t ); printf(nThe result is : %sn, t );四、程序设计 共1题 (共计20分)第1题 (20.0分)/*-【程序设计】-功能:判断一个整数w的各位数字平方之和能否被5整除, 可以被5整除则返回1,否则返回0。-*/#include stdio.h#includeconio.hint fun(int w) /*Program*/ int s=0,m=w; while(m) s+=(m%10)*(m%

20、10);m/=10; if (s%5=0) return 1; else return 0; /* End */main() int m; printf(Enter m: ); scanf(%d, &m); printf(nThe result is %dn, fun(m); yzj(); getch();yzj() FILE *IN,*OUT; int c ; int t; int o; IN=fopen(in.dat,r); if(IN=NULL) printf(Read File Error); OUT=fopen(out.dat,w); if(OUT=NULL) printf(Write File Error); for(c=1;c=5;c+) fscanf(IN,%d,&t); o=fun(t); fprintf(OUT,%dn,o); fclose(IN); fclose(OUT);

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1