二○○七~ 二○○八 学年 第二学期《计算机语言与程序设计基础(C)》期中试题.doc_第1页
二○○七~ 二○○八 学年 第二学期《计算机语言与程序设计基础(C)》期中试题.doc_第2页
二○○七~ 二○○八 学年 第二学期《计算机语言与程序设计基础(C)》期中试题.doc_第3页
二○○七~ 二○○八 学年 第二学期《计算机语言与程序设计基础(C)》期中试题.doc_第4页
二○○七~ 二○○八 学年 第二学期《计算机语言与程序设计基础(C)》期中试题.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

第 7 页 共 7 页一、选择题(单选题,每小题2分,共15题,30分) 注意:请将答案写在题号左边1字符A的ASCII码值是65,以下语句不能正确输出字符A的是_C_。A)putchar(A); B)putchar(x41); C)putchar(65); D)putchar(A);2有定义:int a=7; float x=3.5, y=4.2, z; 则语句z=x+a%3*(int)(x+y)%2/4; printf(“%f n”, z ); 的输出是_B_。 A)3.000000 B)3.500000 C)3.750000 D)3.0 3以下程序的正确输出是_A_。 main() int a=32767, b; b=a+1; printf(%d,%d, a, b);A)32767, -32768 B)32767, 32768 C)32767, 0 D)32767, 14有定义:int a=3, b=3, k; 则语句k=(a+3); 计算完成后,a、b、k的值分别是C_。A)4 2 0 B)4 3 1 C)4 3 0 D)4 2 1 5若i、j、sum已定义为int型变量,则以下程序段的输出是_A_。 for(sum=0, i=0; i=4; i+) for(j=0; j4; j+) sum+=1; printf(sum=%dn, sum);A)sum=20 B)sum=24 C)sum=25 D)sum=306函数fun定义如下:void fun( ) printf(Hello world!n); 则对函数fun的正确调用方式是_C_。 A) fun ; B) void fun( ); C) fun( ); D) fun(1);7以下语句的输出是_A_。 char s20=ATS0JK; printf( %d, %sn, strlen(s), s);A)6, ATS B)3, ATS C)3, ATS0JK D)6, ATS0JK8有定义: char s20; 以下能够将字符串student保存到数组s中的正确操作是_D_。A)s=”student”; B)s20=s,t,u,d,e,n,t; C)s20=”student”; D)strcpy(s, “student”);9若程序中定义了以下函数doublemyadd(doublea,doubleb)return(a+b);并将其放在主调函数之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是(A )A)doublemyadd(doublea,b); B)doublemyadd(double,double);C)doublemyadd(doubleb,doublea);D)doublemyadd(doublex,doubley);10.下述对C语言字符数组的描述中错误的是:C A)字符数组可以存放字符串 B)字符数组中的字符串可以整体输入、输出 C)可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值 D)不可以用关系运算符对字符数组中的字符串进行比较11.以下符合C语言语法的赋值表达式是_D_。 A) d = 6 + e + f = d + 6 B) d = 6 + e + = d + 5C) d = 6 + e, e + , d + 6 D) d = (6 + e, f = d + 5 )12若有int s=0; 循环语句for(x=0,y=0; (y!=123)|(x4); x+) s+; 的 执行次数是 C A) 4次 B) 3次 C) 无限次 D) 不确定次 13. 在C语言中,sort函数的原形说明为void sort(int a10),调用该函数的正确语句是:A A) sort(a) B) sort(a,10) C) sort(a ) D) sort(int a10)14以下不正确的说法是_B_。 C语言规定 A) 实参可以是常量、变量或表达式 B) 形参可以是常量、变量或表达式 C) 实参可以为任意类型 D) 形参应与其对应的实参类型一致15. 以下对一维数组a的正确定义是 D A) int a(10) B) int n=10, an; C) int a ; int n; D) #define SIZE 10 scanf(%d, &n); int aSIZE; 二、试写出以下程序的输出结果(每小题3分,共6题,18分)1#include main()char k; int i; while( (k=getchar()!=n) switch(k) case 1:k=k+1; putchar(k); case 2:k=k+2; putchar(k); default:k=k-1; putchar(k); 程序运行时从键盘输入125,输出结果为_2 int change(int x, int y, int z) int t; t=x; x=y; y=z; z=t; return z;main( ) int x, y, z; x=50; y=500; z=0; z=change(x, y, z); printf(x=%d, y=%d, z=%dn, x, y, z); 运行结果:_x=50,y=500,z=50_ 3 main() char str140, str220; int i, j ; printf(Input string 1 and string 2:n); scanf(%s%s, str1, str2); i=0; while(str1i!=0) i+; for(j=0; str2j!=0; j+) str1i+j=str2j; str1i+j=0; printf(%sn, str1); 如果从键盘输入:how are you 则输出为_4. fun3(int x)static int b=3; int a=4; b+=x; a=b; return(a);main( )int a=2,n; n=fun3(a); printf(%4d,n); n=fun3(a); printf(%4dn,n); 输出结果:5-10_5. main() int a44=1,2,-3,-4,0,-12,-13,14 ,-21,23,0,-24,-31,32,-33,0; int i,j,s=0; for(i=0;i4;i +) for(j=0;j4;j +) if(aij0) continue; if(aij=0) break; s =aij; printf(%dn,s); 输出结果为_ 6. #include func (int a , int b) int c ; c = a+b ; return c ; main ( ) int x=6 , y=7 , z=8 , r ; r=func (x- , y+ , x+y ) , z- ) ; printf (“%d n “, r ) ; 输出结果为_21_ 三、填空题(每空2分,共10空,20分)1有整型数组a20,输入一组非0整数(少于20个)到该数组中,以输入0值为结束。然后求出并输出该数组中正数的个数和平均值,负数不处理。 main( ) int a20;int n=0, i, zn=0;float zaver=0;scanf( %d, &an);while( an!=0 (1) ) n+; Scanf(“%d”,&an (2) ; for( i=0; i0(3) ) zn+; zaver+=ai; if(zn!=0) _zaver/=zn (4) ; printf(zn=%d, zaver=%dn, zn, zaver);2.函数invert 函数功能是将一个字符串的内容颠倒过来。 #include void invert (str)char str ; int i=0,j,k; j=strlen(str)-1; while( _ij_ (5) _ ) k=stri; _stri=strj _ (6) _;strj=k;i+;j-; 3.以下程序的功能是:输出100以内(不含100)能被3整除且个位数为6的所有整数,请填空。main() int i , j; for(i=0;_i10_(7)_; i+) j=i*10+6; if(_j%3!=0_(8)_)continue; printf(d,j); 4. 以下程序为求字符串长度,请完善程序。mystrlen(char s ) int n,i=0 ; for(n=0 ; si!=0 _(9)_ ;i+) n+ ; return(n); main( )char str =“Hello!”; printf(“%dn”, mystrlen(str)_(10)_); 四、编程题(共3题,第1题10分,第2题11分,第三题11分,共32分)1 编写一个函数int prime(int x)判断参数x是否为素数,若是,返回1,若不是返回0,在主函数中定义并初始化一个一维数组a,其初值为: 10,23,9,16,17,3 在主函数中调用函数 prime,输出该数组中为素数的元素,统计并输出该数组中素数的个数。#include#includeint prime(int x) int I,a; a=sqrt(x); for(i=2;ia;i+)if(x%i=0) return 0;else return 1; main() int b6=10,23,9,16,17,3,i,k,n=0; for(i=0;i6;i+) k=prime(a); if(k=1) printf(“%d,”,ai); n+; printf(“n”); printf(“%d”,n);2在主函数中定义char s100用于存放字符串。请编写一个函数sort用冒泡法将字符串中的字符按从小到大的顺序进行排序。要求在主函数中输入字符串,调用函数sort,排序后的结果字符串在主函数中输出。例如,若输入字符串是yabtxyx,则排序后的结果字符串是abtxxyy。#include#includevoid sort(char a) int i,j,n; char t; n=strlen(a); for(i=0;in-1;i+)for(j=0;jsj+1 t=sj;sj=sj+1;sj+1=t;main ch

温馨提示

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

评论

0/150

提交评论