C语言测试题十 二.doc_第1页
C语言测试题十 二.doc_第2页
C语言测试题十 二.doc_第3页
C语言测试题十 二.doc_第4页
全文预览已结束

下载本文档

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

文档简介

C语言测试题十 二一、 选择题(40分)1.以下叙述正确的是( )A、可以把define和if定义为用户标识符B、可以把define定义为用户标识符,但不能把if定义为用户标识符C、可以把if定义为用户标识符,但不能把define定义不用户标识符D、define和if都不能定义为用户标识符2.若变量已正确说明为float类型,要通过语句scanf(%f %f %f ,&a,&b,&c);给a赋于10.0,b赋予22.0,c赋予33.0,不正确的输入形式是:( )A、102233B、10.0,22.0,33.0C、10.022.033.0 D、1022 333.若有定义: float w;int a,b;则合法的switch语句是()A、switch(w) B、switch(a) case 1.0:printf(*n); case 1printf(*n);case 2.0:printf(*n); case 2printf(*n); C、switch(b) D、switch(a+b) case 1:printf(*n); case 1:printf(*n);default:printf(n); case 2:printf(*n);case 2-1:printf(*n);default:printf(n); 4.有如下程序main( ) float x=2.0,y;if(x0.0)y=0.0;else if(x +y; x = i+ ) i = x ; B. for( ; ; x + = i ); C. while(1) x + ; D. for( i = 10; ; i- ) sum+=i;9.若有说明: int a10 ;则对数组元素的正确引用是( )A. a10 B. a3.5 C. a(5) D. a10-1010. 若有说明:int a 3 = 1,2,3,4,5,6,7;则a数组第一维的大小是( )A. 2B. 4C. 3D.不确定11.已知:char str18, str28 = “good” ; 则在程序中不能将字符数组str2赋值给str1的语句是( )A. str1 = str2 ; B. strcpy(str1, str2);C. strncpy(str1, str2, 6) D. memcpy(str1, str2, 5);12. 以下不能进行字符串赋初值的语句是( )A. char str5 = “good!”;B. char str = “good!”;C. char str8 = “good!”;D. char str5 = g,o,o,d;13. 以下不正确的说法是( )A. 实参可以是常量,变量或表达式B. 形参可以是常量,变量或表达式C. 实参可以为任何类型 D.形参应与其对应的实参类型一致14. 以下正确的函数定义形式是( )A. double fun( int x, int y ) B. double fun( int x; int y )C. double fun( int x, int y ); D. double fun( int x, y );15. 凡是函数中未指定存储类别的局部变量,其隐含的存储类别为()A. 自动(auto) B.静态(static) C. 外部(extern) D. 寄存器(register)16.C语句规定,简单变量做实参时,它和对应形参之间的数据传递方式是( ) A. 地址传递 B. 单向值传递C. 由实参传给形参,再由形参传回给实参 D. 由用户指定的传递方式17.下面能正确进行字符串赋值操作的是( )A. char s5= “ABCDE”; B. char s5= A,B,C,D,EC. char *s; s= “ABCDE” ; D. char *s ; scanf(“%s”,s) ;18.下面说明不正确的是( )A.char a10= “china” ;B.char a10, *p= a; p= “china” ;C.char *a; a= “china” ; D.char a10, *p; p= a=“china” ;19.变量的指针,其含义是指该变量的( )A. 值 B. 地址 C. 名D. 一个标志20. 已有定义int k = 2; int *ptr1, *ptr2;且ptr1和ptr2均已指向变量k ,下面不能正确执行的赋值语句是( )A. k = *ptr1 + *ptr2 ;B. ptr2 = k ; C. ptr1 = ptr2 ;D. k = *ptr1*(*ptr2);二、 填空题(30分)1. 程序中经常使用到常数6.6678,使用RUN表示,其宏定义格式为 2. 4/5*6的值是 3. 调用带参数的函数时,实参列表中的实参必须与函数定义时的形参 相同、 相符。4. 二维数组a23= 1, 2,6, 3,0,5中元素a02的值是_5.从函数定义的角度看,函数可分为 函数和 函数两种。6. 若有定义int a = 2,4,6,8,10,12 ,*p = a ;则*(p+ 3)的值是 *(a + 4)的值是 7.对于有返回值的函数来说,通常函数体内包含有 语句,其格式为 ;用于将返回值带给调用函数。8.对带有参数的函数进行调用时,参数的传递方式主要有 调用和 调用两种方式。9. C语言程序中,函数不允许嵌套 ,但允许嵌套 。10. 若a是int 型变量时,则表达式: (a = 4*5, a*2), a+6的值是 。11. 当循环体内遇到 、 或 语句时,将退出循环。12. do-while语句和while语句的区别在于 。13. break语句在循环体中的作用是 ,continue语句在循环体中的作用是 14. goto语句可与 语句配合使用,构成循环。15. 变量的作用域和生存期是从 和 的角度来体现变量的特性。三、 程序填空题(20分)1.下面程序的功能是将键盘输入的字符串str中的所有c字符用C替换。请补充程序。#include#inclucemain( ) int i ; Char str80 ; gets( ) ; for( i = 0 ; ; i+ ) if( stri != c) ; ; printf(“%sn , ”, str ) ; 2. 函数sstrcmp( )的功能是对两个字符串进行比较。当s所指字符串和t所指字符串相等时,返回值为0;当s所指字符串大于是t所指字符串时,返回值大于0;当s所指字符串小于t所指字符串时,返回值小于0(功能等同于库函数strcmp( ) ),请填空。#includeint sstrcmp(char *s, char *t ) while( *s&*t&*s= = ) s+ ; ; return ;3. 以下函数把b字符串连接到a字符串的后面,并返回a中新字符串的长度。请填空。int strcen( char a , char b ) int num =

温馨提示

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

评论

0/150

提交评论