《C程序设计》期中测验试卷.doc_第1页
《C程序设计》期中测验试卷.doc_第2页
《C程序设计》期中测验试卷.doc_第3页
《C程序设计》期中测验试卷.doc_第4页
《C程序设计》期中测验试卷.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

装订线中国计量学院现代科技学院2010 2011 学年第 二 学期 C程序设计 课程期中考试试卷考生姓名: 学号: 专业: 班级: 题序一二三四五(1)五(2)总分得分评卷人试题一:判断题(打 和每小题1分,共10分)1C源程序经过编译、连接,若正确,执行后就能得到正确的运行结果。( )2C语言中关系运算符!=、= =、和=y&chB&!y的值是 。 A、0 B、1 C、“假” D、“真”3用C语言编写的源程序经过编译后,若没有产生编译错误,则系统将 。A、生成可执行文件B、生成目标文件 C、输出运行结果D、自动保存源文件4能正确定义符号常量的是 。A、#define n=10 B、#define n 10 C、#define n 10; D、#DEFINE N 105执行语句“a=b-&+c|-d;”(各变量当前值均为1)后,变量a、b、c、d值为 。A、 1、0、2、1B、 1、0、1、1C、 1、0、2、0D、 0、0、2、06根据函数fun,调用fun(fun(3)的返回值是 。int fun(int x) int k=1; x+=k-; return x;A、3B、5C、6D、47C语言中,char数据类型在内存中的存储形式是 。A、原码B、反码C、补码D、ASCII码8以下程序运行时,从键盘输入:12,程序执行后的输出结果是 。void main( ) char k ; int i ; for ( i=1; i3; i+) scanf(“%c”,&k) ; switch( k ) case 1: printf(“yes#”);case 2: printf(“no#”); A、yes#no#yes# B、yes#no# no# C、yes# no# D、no# yes#9有变量定义int a=9;语句a+=a-=a+a;执行后,变量a的值是 。 A、18 B、9 C、-18 D、-910下列语句中,可以输出26个大写英文字母的是 。A、for(a=A;a=Z;printf(“%c”,+a);B、for(a=A;aZ;a+)printf(“%c”,a);C、for(a=A;a=Z;printf(“%c”,a+);D、for(a=A;aZ;printf(“%c”,+a);11函数fun的功能是计算xn并返回。下列能正确调用函数fun计算的语句是 。#include void main() int a; double x=3.4, y; double fun( int n, double x); A、fun(a,x);B、y=fun(x,a);C、y=fun(x);D、printf(“%fn”,fun(a,x);装订线12已定义变量 int a = 10 , b = 0 ; 下列程序段的输出结果是 。 if ( a15 ) b=1; else if ( a2 ) b=2; else b=3; printf(“d”,b);A、3 B、2 C、1 D、0试题三:阅读程序填空(3题,共12个单项选择填空,每空2分,共24分)1【程序说明】输入一个整数,将它逆序输出。要求定义并调用函数reverse(long number),它的功能是返回number的逆序数。例如reverse(12345)的返回值是54321。运行示例:Enter an integer: -123After reversed: -321【程序】#include void main( ) long in; long reverse(long number); printf(Enter an integer:); scanf(%ld, &in); printf(After reversed:%ldn, (1) );long reverse(long number) int flag; (2) ; flag = number 0B、number0C、number!=0D、number=0(4)A、number%10B、res*10 + number%10C、number/10D、res*10 + number/102【程序说明】输入2个正整数m和n(1=mn=500),统计并输出m和n之间的素数的个数以及这些素数的和。要求定义和调用函数prime(m)判断m是否为素数,当m为素数时返回1,否则返回0。素数就是只能被1和自身整除的正整数,1不是素数,2是素数。运行示例:Enter m, n: 1 10count = 4, sum = 17【程序】#include #include int prime(int m) int i, n;if (m = 1) return (5) ;n = sqrt(m);for(i = 2; i = n; i+)if (m%i = 0) return (6) ; return (7) ;main( ) int count = 0, i, m, n, sum = 0; printf(Enter m, n:); scanf(%d%d, &m, &n);for(i = m; i =2),输出菲波那契(Fibonacci)序列的前n项,每行输出6个数。菲波那契(Fibonacci)序列:1,1,2,3,5,8,13,数列的前两个数都是1,从第三个数开始,每个数是前两个数之和。运行示例:Enter n :101 1 2 3 5 813 21 34 55【程序】#include 装订线main( ) int count, i, n, x1, x2, x; printf(Enter n:);scanf(%d, &n);x1 = x2 = 1;printf(%6d%6d, x1, x2); (9) for ( i = 1; i = n-2; i+ ) (10) ; printf(%6d , x);count+ ; if ( (11) )printf(n);x1 = x2 ; (12) ;【供选择的答案】(9) A、count = 2B、count = 0C、count = 1D、count = -1(10) A、x1=x1x2B、x=x1+x2C、x=x1D、x = 2(11) A、count/6=0B、count%6!=0C、count%6=0D、count/6!=0(12) A、x=x1+x2B、x2 = x1;C、x = x2;D、x2 = x;试题四:阅读程序,选择运行结果(3题,共12个单项选择,每空2分,共24分)。1【程序】#include void main( ) int k; for(k = 5; k 0; k-) if(k=3) continue; /* 第6行 */ printf(%d , k); (1) 程序的输出是 (1) 。A、5 4 3 2 1 B、5 4 2 1C、5 4 D、3(2) 将第6行中的continue改为break后,程序的输出是 (2) 。A、5 4 3 2 1 B、5 4 2 1C、5 4 D、3(3) 将第6行中的continue删除(保留分号)后,程序的输出是 (3) 。A、5 4 3 2 1 B、5 4 2 1C、5 4 D、3(4) 将第6行全部删除后,程序的输出是 (4) 。A、5 4 3 2 1 B、5 4 2 1C、5 4 D、32【程序】#include int k = 1; void Fun();void main() int j; for(j = 0; j 2; j+) Fun(); printf(k=%d, k);void Fun() int k = 1; /* 第11行 */ printf(k=%d, k); k+; (5)程序的输出是 (5) 。A、k=1,k=2,k=3B、k=1,k=2,k=1C、k=1,k=1,k=2D、k=1,k=1,k=1(6)将第11行改为“static int k=1;”后,程序的输出是 (6) 。A、k=1,k=1,k=1B、k=1,k=1,k=2C、k=1,k=2,k=1D、k=1,k=2,k=3(7) 将第11行改为“k=1;”后,程序的输出是 (7) 。A、k=1,k=2,k=1B、k=1,k=1,k=1C、k=1,k=1,k=2D、k=1,k=2,k=3(8) 将第11行改为“;”后,程序的输出是 (8) 。A、k=1,k=1,k=2B、k=1,k=2,k=3C、k=1,k=1,k=1D、k=1,k=2,k=13【程序】程序1#include main( ) int j, k, s1, s2;s1 = s2 = 0;for (j = 1; j = 5; j+) s1+;for (k = 1; k = j; k+) s2+;printf(%d %d, s1, s2);程序2#include main( ) int j, k, s1, s2;s1 = 0;for (j = 1; j = 5; j+) s1+;装订线for (k = 1, s2 = 0; k = j; k+) s2+;printf(%d %d, s1, s2);程序3#include main( ) int j, k, s1, s2;s1 = 0;for (j = 1; j = 5; j+) s1+;for (k = 1; k = j; k+, s2 = 0) s2+;printf(%d %d, s1, s2);程序4#include main( ) int j, k, s1, s2;s1 = s2 = 0;for (j = 1; j = 5; j+, s1 = 0) s1+;for (k = 1; k = j; k+) s2+;printf(%d %d, s1, s2);(9) 程序1运行时,输出 (9) 。A、0 15B、5 0C、5 5D、5 15(10) 程序2运行时,输出 (10) 。A、0 15B、5 0C、5 5D、5 15(11)程序3运行时,输出 (11) 。A、0 15B、5 0C、5 5D、5 15(12)程序4运行时,输出 (12) 。A、0 15B、5 0C、5 5D、5 15试题五:程序设计(共两小题。第一小题12分,第二小题18分,共30分)1 编写程序,输入100个整数存放到数组a中,再输入整数x,统计这100数中x出现的次数并输出。2按下列要求编写程序:(1) 定义函数

温馨提示

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

评论

0/150

提交评论