2009年春08级c期末试卷b卷.doc_第1页
2009年春08级c期末试卷b卷.doc_第2页
2009年春08级c期末试卷b卷.doc_第3页
2009年春08级c期末试卷b卷.doc_第4页
2009年春08级c期末试卷b卷.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

2009年08级C程序设计期末考试卷(B)注意 所有答案写在单张的答题卷上。一、 判断题(本题共10分,每小题1分,用A表示正确,用B表示错误。)(1)C语言程序的变量必须先定义再使用。a(2)do-while语句构成的循环不能用其他语句构成的循环来代替。b(3)C语言规定,函数的实参应与其对应的形参类型一致。a(4)C语言认为名为Student和student的变量是不同变量。a(5)当两个字符串所包含的字符个数相同时,才能比较两个字符串的大小。b(6)C语言程序的书写格式虽然自由,但为了清晰,一般在一行内写一个语句。a(7)在C语言中,八进制数是用英文字母o后加一个整数来表示,例如o123。b(8)C语言的所有循环语句都要求至少要执行一次循环体。b(9)在C语言中,函数不能嵌套定义,但可以嵌套调用。a(10)数组char x=12345;和char y=1,2,3,4,5;长度相同。b二、 单选题(本题共20分,每小题2分)(11)_c_是合法的用户自定义标识符。A b-bB C _iswD float(12)_c_是不正确的字符常量。A n B 1C aD 101(13)若变量已正确定义,语句“if(ab) k=0; else k=1;”和_c_等价。A k=(ab)?1:0; B k=ab;C k=a=b;D a=b ? 0 : 1;(14)在C程序中,若对函数类型未加说明,则函数的隐含类型为_a_。A intB double C voidD char(15)如果在用户的程序中要使用C库函数中的数学函数时,应在该源文件中使用的include命令是_b_。A#includeB#includeC#includeD#include(16)在C 语言程序中,在函数内部定义的变量称为_c_。 A 全局变量 B 外部变量 C 局部变量 D 内部变量(17)表达式 (4 2) - !-1 + 4 & 6 2 1的值是:aA 0 B 1 C 7 D 12(18)C程序的基本结构有_b_。A 选择、重复和模块B 顺序、选择和循环C 顺序、选择和模块 D 逻辑、物理和程序(19)函数调用语句 func(a1,a2,a3),(a4,a5); 的参数个数是 :aA 2 B 5 C 1 D 调用方式不合法(20)对于如下说明,语法和语义都正确的赋值是_C_。int c, *s, a=1, 3, 5;A c=*s; B s0=a0; C s=&a1; D c=a;三、 程序填空题(本题共30分,每小题2分)阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个最佳的答案。题号21222324252627282930答案DBABDBCDAA题号3132333435答案ADBCB1【程序说明】输入1 个正整数 n, 计算并输出 s 的前n项的和。S = 1 -1/2 + 1/3 - 1/4 + 1/5 -1/6 + 【程序代码】8第 页(共 7 页)#include void main( ) int k, flag, n; float s; flag=1; s=0; scanf(%d, &n); for (k=1 ; k=n; k+) s=s+ D 1.0/k*flag (21) ; (2B flag = -flag 2) ; printf(sum=%fn, s);【选项】(21)A 1/k B 1.0/kC 1/k*flag D 1.0/k*flag(22)A flag+ B flag = -flagC flag = -k D k= -flag 2【程序说明】输入以 -1结束的一批整数,输出其中的最大值。例如: 输入 -3 -8 -10 -1 后,输出:max=-3。【程序代码】#include void main( ) int max, x; scanf(%d, &x); if(x!=-1) (A max=x 23) ; while( (2 x!=-14) ) if(max-1 D x-1 (25)A scanf(%d, x)B scanf(%dn, &x)C printf(%d, &x)D scanf(%d, &x)3【程序说明】求出200以内的整数中,最大的可以被17整除的数是哪个数。【程序代码】#include _ void main()26 C i=200 _ int i; for(_2 D i07_;_28_;i-)if(_29A i % 17 = 0 _)break; printf(%dn,_ A i _30_); 【选项】(26)A main() B void main()C main(void) D int main()(27)A 200 B i=0C i=200 D int i=200(28)A i200C i0(29)A i % 17 = 0 B i % 17 != 0C i / 17 = 0D i / 17 != 0(30)A i B i%17C i/17 D i 174【程序说明】下列程序调用swap函数交换a和b的值,并输出交换后的a和b的值。程序的输出结果是:After swap 5, 3。【程序代码】#include stdio.hvoid main() int a, b; a = 3, b = 5; swap( 31 ) ; printf(After swap %d, %d, a, b);swap( 31 ) int t; 33 ; 34 ; 35 ;【选项】(31)A &a , &bB a , bC &b, &aD b, a(32)A int x, int yB int &x, int &yC int *y, int *xD int *x, int *y(33)A x=*tB t=*xC t=xD x=t(34)A x=yB x=*yC *x=*yD *x=y(35)A y=tB *y=tC y=*tD *y=*t四、 程序阅读题(本题共20分,每小题5分)阅读下列程序并写出运行结果。1【程序】# include void main() int k = 10; do k = k - 1; while (k = =0);printf(k=%d, k);程序的输出结果是_。2【程序】#include int z; void p(int *x, int y) +*x; y-; z=*x+y+z; printf(%d, %d, %dn, *x, y, z);void main() int x=1, y=5, z=9; p(&x, y); printf(%d, %d, %dn, x, y, z);程序的输出结果是_。3【程序】#include void main() int num=0; while(num=8) num+; printf(%d#,num+); printf(n);程序的输出结果是_。4【程序】# include void main( ) int k, n1, n310; char c; n1=0; for(k=0; k10; k+) n3k=0; while(c=getchar( )!=n) switch(c) case0:case 1: case 2:case 3: case 4:case5: case 6: case 7: case 8:case 9: n3c-0+; break; default: n1+; break; if(n1) printf(%d , n1); for(k=0; k10; k+) if(n3k) printf(%d , n3k);输入123+234=357Yes?后,下列程序的输出结果是_。五、 程序设计题(本题共20分)1. 程序说明 (6分)从键盘读入长整形数number,请编写函数 sum(number),返回正整数number的各位数字之和(number是长整型)。例如:从键盘输入654321,则输出sum(654321)=21 。2. 程序说明 (5分) 函数 ff(str,ch)的功能是统计并返回字符ch在字符串str中出现的次数。 例如:调用ff(every, e

温馨提示

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

评论

0/150

提交评论