欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    c语言期末复习试题(附答案).doc

    • 资源ID:34136334       资源大小:66.50KB        全文页数:12页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    c语言期末复习试题(附答案).doc

    如有侵权,请联系网站删除,仅供学习与交流c语言期末复习试题(附答案)【精品文档】第 12 页试卷编号: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 <stdio.h>void main( )/* Beginning */ 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 <stdio.h>void main( ) int s=0, a=1, n; scanf("%d", &n); do s+=1; a=a2; while(a!=n); printf("%dn", s); 若要使程序的输出值为2,则应该从键盘输入给n的值是( B ).A:-1B:-3C:-5D:0第7题 (2.0分)执行以下程序后,输出的结果是( D ).#include <stdio.h>void main( ) int y=10; do y ; while( y); printf("%dn",y );A:-1B:1C:8D:0第8题 (2.0分)以下循环体的执行次数是( C ).#include <stdio.h>void main( ) int i,j; for(i=0,j=1; i<=j+1; i+=2, j )printf("%dn",i);A:3B: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 <stdio.h>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=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;i<n;i+) f*=i;C:f=1;for(i=n;i>1;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(i>100) break;B:int k=1000;do+k; while(k>=10000);C:for(;);D:int s=36; while(s); -s;第13题 (2.0分)有如下程序:#include <stdio.h>void main( ) int n=9; while(n>6) n-;printf("%d",n);该程序段的输出结果是( B ).A:987B:876C:8765D:9876第14题 (2.0分)以下程序的输出结果是( D ).#include <stdio.h>void main( ) int x=10,y=10,i; for(i=0;x>8;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分)有如下程序:#include<stdio.h>void main( ) int n5=0,0,0,i,k=2; for(i=0;i<k;i+) printf("%dn",nk);该程序的输出结果是( D ).A:不确定的值B:2C:1D:0第16题 (2.0分)下列程序执行后的输出结果是( A ).#include<stdio.h>void main( ) char arr24; strcpy(arr,"you"); strcpy(arr1,"me"); arr03='&' printf("%s n",arr); A:you&meB:youC:meD:err第17题 (2.0分)以下程序的输出结果是( C ).#include<stdio.h>void main( ) int i, x33=1,2,3,4,5,6,7,8,9; for(i=0;i<3;i+) 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; static 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( ; i<2; 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语言规定,函数返回值的类型是由(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); 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;i<n;i+) for(j=0;j<n;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 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;i<7;i+) if(pi0= 'T' ) n+; return n;main( ) char str 10="Mon","Tue","Wed","Thu","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);程序运行后的输出结果是( 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;n<5;n+) printf("%d",xn); printf("n"); A) 678910 B) 13579 C) 12345 D) 62345A:678910B:13579C:12345D:62345第30题 (2.0分)在以下程序中,能够通过调用函数fun( ),使main( )函数中的指针变量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 <stdlib.h>main( ) int *p; fun(&p); int fun(int *p) *p=(int*)malloc(2); D:#include <stdlib.h>main( ) int *p; fun(p); int fun(int *p) p=(int*)malloc(sizeof(int); 二、程序填空 共1题 (共计10分)第1题 (10.0分)【程序填空】功能:计算平均成绩并统计90分以上人数。main() int n,m;float grade,average; /*SPACE*/ average=n=m=【?】; /此处为: 0 while(1) /*SPACE*/ 【?】("%f",&grade); /此处为: scanf if(grade<0) break; n+; average+=grade; /*SPACE*/ if(grade<90)【?】; /此处为:break m+; if(n) printf("%.2f%dn",average/n,m);三、程序改错 共1题 (共计10分)第1题 (10.0分)【程序改错】功能:首先把b所指字符串中的字符按逆序存放, 然后将a所指字 符串中的字符和b所指字符串中的字符,按排列的顺序交叉 合并到c所指数组中,过长的剩余字符接在c所指数组的尾部。例如:当a所指字符串中的内容为“abcdefg”,b所指字符串中的 内容为“1234”时,c所指数组中的内容应该为“a4b3c2d1 efg”;而当a所指字符串中的内容为“1234”,b所指字符 串中的内容为“abcdefg”时,c所指数组中的内容应该为 “1g2f3e4dcba”。#include <conio.h>#include <stdio.h>#include <string.h> void fun( char *a, char *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 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"#include"conio.h"int fun(int w) /*Program*/ int s=0,m=w; while(m) s+=(m%10)*(m%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);

    注意事项

    本文(c语言期末复习试题(附答案).doc)为本站会员(豆****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开