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

    C语言期末考试试卷附参考答案 .doc

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

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

    C语言期末考试试卷附参考答案 .doc

    一、 单项选择题(请将答案填在下面表格中20×1). 以下叙述中正确的是( )。A. C语言比其他语言高级B. C语言可以不用编译就能被计算机识别执行C. C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D. C语言出现的最晚,具有其他语言的一切优点. 以下叙述中正确的是( )。A.构成C程序的基本单位是函数B.可在一个函数中定义另一个函数C. main函数必须放在其他函数之前D.所有被调用的函数一定要在调用之前进行定义. 以下叙述中正确的是( )。A. C语言程序总是从第一个函数开始执行B.在C语言程序中,要调用函数必须在main()函数中定义C. C语言程序总是从main()函数开始执行D. C语言程序中的main()函数必须放在程序的开始部分. 以下有关for循环的正确描述是( )。A. for循环只能用于循环次数已经确定的情况B. for循环是先执行循环体语句,后判断表达式C.在for循环中,不能用break语句跳出循环体D. for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来. 对下面程序段的描述,正确的是( )。x=1;dox=x*x;while(!x);A.是死循环B. 循环执行一次C. 循环执行两次D. 有语法错误6. 以下有关C语言数组说法正确的是( )。A.数组元素的数据类型可以不一致B.数组元素的个数可以不确定,允许随机变动C.可以使用动态内存分配技术,定义元素个数可变的数组D.定义一个数组后,就确定了它所容纳的具有相同数据类型元素的个数7.以下数组定义正确的是( )。A. int a(20);B. int a =1,2,5,7,0;C. int an;D. int a2=1,2,4,6;8.在定义int b210;之后,对b数组元素引用正确的是( )。A. b09B. b2,3C. b(1)(5)D. b10 09. 如有定义语句int c =1,5,3,4,6,7,0;,则数组c有( )个元素。A.0B.不定C. 6D. 710.以下叙述中不正确的是( )。A.字符数组中可以存放字符串B.可以对字符型数组进行整体输入、输出C.可以对整型数组进行整体输入、输出D.不能通过“=”对字符型数组进行整体赋值11.已知char d =”543210”;,则数组d的长度是( )。A.5B.6C. 7D. 812.已知char s3 =”China”;,则下列程序段的输出结果是( )。 printf(“%d”,sizeof(s3);A.5B. 6C. 7D.813.已知char s110,s2 =”China”;则在程序中能将字符串” China”赋给数组s1的是( )。A.s1=“China”;B.strcpy(s1,s2);C. s1=s2;D. strcpy(s2,s1);14.将字符串中大写字母换成小写字母的函数是( )。A.strlwrB. struprC.stringD.strlen15.下列( )排序方法中,执行一轮比较后,只交换一次数据。A. 起泡法B. 顺序比较法C. 选择法D. 插入法16.在C语言程序中,有关函数的定义正确的是( )。A.函数定义不可以嵌套,但函数调用可以嵌套B.函数定义可以嵌套,但函数调用不可以嵌套C.函数定义和函数调用均不可以嵌套D.函数定义和函数调用均可以嵌套17.以下错误的说法是(     )。A.实参可以是常量、变量或表达式B.形参可以是常量、变量或表达式C.实参可以为任何类型D.形参应与其对应的实参类型一致18.以下错误的描述是:函数调用可以(     )。A.出现在执行语句中B.出现在一个表达式中C.作为一个函数调用的实参D.作为一个函数的形参19. 函数调用时,若形参和实参都是变量名,则正确的说法是( )。A. 形参不分配内存B. 形参分配内存C. 形参和实参占用相同的内存D. 实参不分配内存20.以下函数值的类型是( )。 fun(float x) float y; y=3*x-4;return y;A. intB. floatC. voidD. 不确定二、判断题(正确的打,错误的打×,10×1)1.一个循环体内又包含另一个完整的循环结构称为循环的嵌套。( )2.break语句能提前终止循环。( )3.二维数组可被看作一种特殊的一维数组:它的元素又是一个一维数组。( )4. 对9个元素使用冒泡法排序时,需要排9轮,第一轮需要比较9次。( )5. strcat(字符数组1, 字符数组2)的作用是将字符数组2接到字符数组1后面。( )6. strcmp(“Beijing”,”Korea”)的函数值是一个正整数。( )7.语言中,数组元素的下标是从1开始的,下标不能越界。( )8.函数的形参在函数未调用时预分配了存储空间。( )9.如函数值的类型和return语句中表达式的值不一致,则以函数类型为准。( )10.调用函数时,实参是数组元素,则实现的是“值传递”。( )三、填空题(10×2)1.定义二维数组的一般形式为: ,引用一维数组元素的形式为: 。2.有一序列:21,-5,8,11,9,0,34,4,-17,6从小到大排序,用冒泡法经过二轮排序后,序列中10个数的顺序为: ,若使用顺序比较法,经过三轮排序后,这10个数的顺序为: 。3.调用字符串处理函数时,应在程序的开头添加预编译命令:#include< >,puts( )函数将一个以 结束的字符序列(字符串)输出到终端4.C语言中,函数分为系统提供的 和用户自定义函数两类,也可分为有参函数和 两类。5.函数的递归调用指在调用一个函数的过程中又 。6.函数值只能通过 语句返回主调函数。四、程序改错(求出两个非零正整数的最大公约数,并作为函数值返回。在错误下面划横线,在右边写出正确内容,5×2)void main( ) int n1,n2,a; printf(“please input n1,n2:n”); scanf(“%d%d”, &n1,&n2); a=fun(n1,n2); printf("最大公约数是:%dn",a); # include<stdio.h>int fun(int a, b ) int r,t;if(a<b) t=a;b=a;a=t; r=a%b;while(r!=0)a=b;b=r;r=a/b;return a; 2. # include <stdio.h>void main ( ) char s1 =”This book”;char s2 =”THIS hook”; int i;for (i=0;s1i!=0&&s2i!=0;i+) if(s1i!=s2i) printf(“%c”,s1i);运行结果为:五、阅读程序写出运行结果 (4×5)1. # include<stdio.h> int main( ) void fun(int x); fun(8);printf("n");void fun(int x) if(x/2>0) fun(x/2);printf("%d",x); 运行结果为:3. #include <stdio.h># include<math.h>int main( )  int i,j,n=0; for(i=5;i<=5;i+) if(i%2!=0) n+;for(j=1;j<=abs(i);j+) printf(“ “);for(j=1;j<=11abs(i)*2;j+) printf(“%c“,64+n);printf("n"); 运行结果为:4. #include <stdio.h>int main( ) int i,j,x;int a10 =12,3,14,5,26,97,38,9,0,2; for(i=0;i<=9;i+)x=ai;j=i-1; while(j>=0&&x<aj) aj+1=aj;j; aj+1=x;printf("排序后为:n"); for(i=0;i<=9;i+) printf(“%5d”,ai);运行结果为:六、程序填空题(结果按序号填在下方对应横线上,10×2分)1、编程实现将十进制整数n转换成十六进制数输出。#include<_ >int main() int n,a20,i=0,m=0; char hex16 ='0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'printf("请输入整数n:n ");scanf(_, &n); while(n>0) ai+=n%16; n= _; printf("转化为十六进制的数为:"); for(i=i1; _;i) /倒序输出 m=ai; printf("_",hexm); printf("n"); 、编写判断是否为素数的函数,在主函数中输入一整数,输出是否为素数。#include<stdio.h>int psushu(_)int i; for(i=2; _;i+) if(m%i=0) return 0; return _;void main() int a, s;printf("请输入整数:n ");scanf(“%d”, _);s=psushu(a);if (_) printf(“%d是素数n”,a);else printf("%d不是素数n",a);_ _ _ _ _ _ _ _ _ 附:参考答案一、单项选择题题 号12345678910答 案CACDBDBADC题 号11121314151617181920答 案BBBACABDBA二、 判断题题 号12345678910答 案××××三、 填空题1.类型说明 数组名常量表达式常量表达式 数组名下标2. -5,8,9,0,11,4,-17,6,21,34 -17,-5,0,21,11,9,34,8,4,63. string.h 04. 库函数 无参函数5.直接或间接地调用该函数本身6. returnInt b a = b;b=ta%br 或 b# include<stdio.h>int fun(int a, b ) int r,t;if(a<b) t=a;b=a;a=t; r=a%b;while(r!=0)a=b;b=r;r=a/b;return a; 四、程序改错void main( ) int n1,n2,a; printf(“please input n1,n2:n”); scanf(“%d%d”, &n1,&n2); a=fun(n1,n2); printf("最大公约数是:%dn",a); 五、阅读程序写出运行结果1.12482.hisb AAAA BBBBB BBBBBBB CCCCCCCCCCCCCCCCCCCC DDDDDDDDD DDDDDDDEEEEE EEE F3.4. -2 0 3 5 9 12 14 26 38 97六、程序填空题_stdio.h_ _int m_”%d”_ _i<m 或 i<=m+1_ _n/16_ _1_ _i>=0_ _&a_ _%c_ _s 或 s=1_

    注意事项

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

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




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

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

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

    收起
    展开