C语言基础综合练习题2.doc_第1页
C语言基础综合练习题2.doc_第2页
C语言基础综合练习题2.doc_第3页
C语言基础综合练习题2.doc_第4页
C语言基础综合练习题2.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

一、选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。前10题、每题1分,后5题、每题2分;共20分)1. C语言中运算对象必须是整型的运算符是( )A) % B) / C) = D) =2. C语言可执行程序的开始执行点是( )A) 程序中第一条可执行语言 B) 程序中第一个函数C) 程序中的main函数 D) 包含文件中的第一个函数3. 组成C程序的基本单位是_。A)表达式与语句B)若干文件C)函数D)main函数4. 下列变量定义正确的是_。A)int x_1 ; y;B)int x=y=5 ;C)int for=4;D)int printf=2,x_y=2;5 若变量c为char类型,能正确判断出c为小写字母的表达式是()A) a=c= a)|(c= z)C) (a=c)D) (c= a)&(c= z)6. 设有说明语句:char a=72;则变量a( )A) 包含1个字符 B) 包含2个字符 C) 包含3个字符 D) 说明不合法7.语句while(E);中的条件E等价于( )A)E = = 0 B)E!=1 C)E!=0 D)E8. 以下错误的描述是_。A)break语句和continue语句的作用是一样的B)break语句可用于dowhile语句C)在循环语句中使用break语句是为了跳出循环,提前结束循环D)在循环语句中使用continue语句是为了结束本次循环,而不终止整个循环 9t为int类型,进人下面的循环之前,t的值为0, 则以下叙述中正确的是( )while( t=l ) A) 循环控制表达式的值为0B) 循环控制表达式的值为1C) 循环控制表达式不合法D) 以上说法都不对10. 下列各语句定义了数组,其中哪一个是正确的( )。A)int a5,b2,3; B)char no(30);C)int x; D)int x5=1,2,3;11. 设有数组定义: char array =China; 则数组 array所占的空间为( ) A) 4个字节 B) 5个字节 C) 6个字节 D) 7个字节12以下程序的输出结果是( )main() int a44=1,3,5,2,4,6,3,5,7;printf(“%d%d%d%dn”,a03,a12,a21,a30;A) 0650 B) 1470 C) 5430 D) 输出值不定13已知:char a; int b; float c; double d; 执行语句c=a+b+c+d; 后,变量c的数据类型是( )。A) int B) char C) float D) double14. 若已定义:int a9,*p=a;下面表达式中不能表示a1 地址的表达式是( ) 。 A) p+1 B) a+1 C) a+ D) +p15. 说明一个结构体变量时系统分配给它的内存是( ) 。A)各成员所需内存总和。B)结构中第一个成员所需的内存量。C)成员中占内存量最大者所需的容量。D)结构中最后一个成员所需内存量。二、填空题(每空1分,共10分)1. 一个C源程序中至少应包括一个 2.数学表达式“12y3”对应的C语言表达式是 。3.声明语句为:char a10; 执行下列语句后的输出结果为_。printf(“%d n”, strlen(strcpy(a,”windows”);4.C语言中没有逻辑类型变量,在给出逻辑运算结果时,以 代表“假”。5.若输入字符串:abe,则以下while循环体将执行 次。while(ch=getchar()= =a) printf(“*”);6.执行语句:for(i=1;i+3;);后,变量i的值是 。7.函数类型是void则表示_ _ _。8. 若有以下定义:double max10;则最后一个元素是 。8如有 int a;*p=&a,且a的地址是1000,则p+的值为 。9如有FILE *fp;fp=fopen(“test”,”r”);则表示以 方式打开文件test。三、程序阅读题(写出程序运行的结果。第1题5分,第2题7分,第三题8分;共20分)1 main() int i; for(i=0;i3;i+)switch(i) case 0:printf(“%d”,i); case 2:printf(“%d”,i); default:printf(“%d”,i); 2.#includemain() int count=0,x=7711;while(x)if(x%10=6)count+;x/=10;printf(count=%d,x=%d,count,x); 3. #include#includeint fcharnumber(char *);main() char str100; printf(input a string:n); gets(str); printf(the number is %dn,fcharnumber(str);int fcharnumber(char *p) int i,length,count=0; length=strlen(p); for(i=0;i=a&pi=A&pi=Z) count+; return count;输入:Hello World!四、程序填空题(每空2分,共20分)1、以下程序对输入的1000以下的整数,求出其相应的个位数、十位数和百位数。#includevoid main()int x,a,b,c; doprintf(输入一个1000以下的整数:); scanf(%d,&x); printf(n); while( (1) ); a=x/100; b=(x-a*100)/10; c= (2) ; printf(%d的个位数是%d,十位数是%d,百位数是%dn,x,c,b,a); 2以下程序完成对键盘输入的正整数进行求和、平均值、最大值和最小值,输入负数时循环结束。请填写缺少的语句。#includevoid main()int i,j,n,max,min,a100,s=0; for(i=1; i100; i+)scanf(%d,&ai); (3) ; s+=ai; n=i-1; min=max=a1; for(j=2; j=n; j+)if( (4) ) max=aj; if( (5) ) min=aj; printf(s=%dtaverage=%ftmax=%dtmin=%dn,s,(float)s/n,max,min); 3、设计一个子函数,实现将两个整数交换,并在主函数中调用此函数。#include (6) ;main() int a,b; printf(input two numbers:n); scanf(%d%d,&a,&b); printf(the number is a=%d,b=%d,a,b); (7) ; printf(nafter swaped, the number is: a=%d,b=%dn,a,b);/*function:swap() */void swap( (8) ) (9) ; temp=*p; (10) ; *q=temp;五、编程题(每小题10分,共30分)1求圆周率。/41-1/3+1/5-1/7+。2打印出杨辉三角(如下:6行)。11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 13. 设计一个子函数,统计任意一串字符中数字字符的个数,并在主函数中调用此函数。参考答案一、单项选择题(每题1分,共20分)12345678910ACCBDACABD1112131415CACCA二、填空题(每空1分,共10分)1._main函数/主函数 2. _y=3 3. 7 4. _0_ 5. _1_ 6. _4_7. _ 函数无返回值_ 8. _max9_ 9. _1002_10. _只读_三、程序阅读题(第1题5分,第二题7分,第3题8分,共20分)1. 答:0001222. 答:count=2,x=03.答:the num

温馨提示

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

评论

0/150

提交评论