C语言复习题及答案
C语言考试题库及答案

C语言考试题库及答案1. 以下不是C语言的特点的是( C )A、C语言简洁,紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件进行操作D、C语言的移植性好2. 一个C程序是由()BA、一个主程序和若干个子程序组成B、一个或多个函数组成C、若干过程组成D、若干子程序组成3.以下描述正确的是( ) CA、由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句。
B、do-while循环由do开始,用while结束,在while(表达式)后面不能写分号。
C、在do-while循环体中,不一定要有能使while后面表达式的值变成零(“假”)的操作。
D、do-while循环中,根据情况可以省略while。
4.以下对一维整形数组a的正确说明是( ) DA、int a(10);B、int n=10,a[n];C、int n;D、int a[10];5.以下对二维数组a的正确说明是( ) CA、inta[3][];B、float a(3,4);C、double a[1][4];D、float a(3)(4);6.数组名作为实参传给被调用的函数时,形参获得的是()CA、该数组第一个元素的值B、该数组所有元素的值C、该数组第一个元素的首地址D、该数组所有元素的首地址7. C程序的开始是从()AA、main()函数开始,直到main()函数结束B、第一个函数开始,直到最后一个函数结束C、第一个语句开始,直到最后一个语句结束D、main()函数开始,直到最后一个函数结束8.在C程序中,main()函数的位置()CA、必须作为第一个函数B、必须作为第二个函数C、可以任意D、必须放在它所调用的函数之后9. C编译程序是()CA、C语言的机器语言版本B、一组机器语言指令C、将C源程序编译成目标程序的程序D、是由自己编制的10.以下叙述中错误的是( )CA、C程序经过编译、连接之后形成一个真正可执行的二进制机器指令文件B、用C语言编写的程序称为源程序,它以ASCⅡ代码形式存放在文件中C、C语言中的每条可执行语句和非执行语句最终被转换成二进制的机器指令非执行的语句不转换:例如//和/**/是注释的意思D、C语言源程序经编译后生成后缀为.obj的目标程序1.以下不正确的C语言标识符是( )D字母,数字,下划线组成,但是不能以数字开头A、ABCB、abcC、a_bcD、ab.c12.一个C语言程序是由( ) BA、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成13.以下叙述错误的是( ) C算法可以没有输入输入,但是一定不能没有输出A、算法正确的程序最终一定会结束B、算法正确的程序可以有零个输入C、算法正确的程序可以有零个输出D、算法正确的程序对于相同的输入一定有个相同的结果14.设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+ i*f值的数据类型为( ) C强制类型转换A、intB、floatC、doubleD、不确定15.以下叙述中错误的是( )CA、结构化程序由顺序、分支、循环三种基本结构组成B、C语言是一种结构化程序设计语言C、使用三种基本结构构成的程序只能解决简单问题D、结构化程序设计提倡模块化的设计方法16.以下叙述中错误的是()CA、算法正确的程序最终一定会结束B、算法正确的程序可以有零个输入C、算法正确的程序可以有零个输出D、算法正确的程序对于相同的输入一定有相同的结果17.以下选项中关于程序模块化的叙述错误的是()BA、把程序分成若干相对独立、功能单一的模块,可便于重复使用这些模块B、可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序C、把程序分成若干相对独立的模块,可便于编码和调试D、可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序18. 关于C语言的符号常量,以下叙述中正确的是()CA、符号常量的名是标识符,必须大写B、符号常量的名是标识符,必须小写C、符号常量是指用一个符号名来代表一个常量D、符号常量的符号名必须是常量19.关于C语言的变量,以下叙述中错误的是()BA、所谓变量是指在程序运行过程中其值可以被改变的量B、变量所占的存储单元地址可以随时改变C、程序中用到的所有变量都必须先定义后使用D、由三条下划线构成的符号名是合法的变量名20.以下选项中合法的变量名是()CA、5aB、A%C、_10_D、sizeof21.在C语言中,char型数据在内存中的存储形式是( ) DA、补码B、反码C、源码D、ASCII码22.有如下程序,输入数据:12345M678<cR>后(<CR>表示回车),x的值是( ) 。
C语言试卷(下)及答案

C语言复习卷(下) 答案一、填空题(每小题1分,共20分)1.C语言源程序文件的后缀是.C ,经过编译后,所生成文件的后缀是.obj ,经过连接后,生成的文件后缀是.exe。
2.在C语言中,二维数组元素在内存中的存放顺序是按行顺序存放。
(数组元素偏移量表示法: 对于a[m][n] a[i][j] = a[0][n*i+j] )3.若有说明:char s[20];,如果想从键盘上把字符串:This is a book. 输入到数组s 中,函数调用语句的形式是gets(s); 。
4.若用以下形式表示for循环语句:for (表达式1;表达式2;表达式3)循环体语句则执行语句for (i=0; i<3; i++) printf("*"); 时,表达式1执行__1__次,表达式3执行3 次,循环结束时i的值是3 。
5.在C语言中,真用__非0__表示,假用__0__表示。
当逻辑表达式的值为真时用__1__表示,当逻辑表达式的值为假时用__0__表示。
6.若a、b、c均是int型变量,则执行表达式c=(a=5)-(b=2)+a后,c的值为_ 8___。
7.设a=1 , b=2 , c=3 ,执行下面语句if ( a > c ) b = a ; a = c ; c = b ;后,a的值是_3_,b的值是__2__,c的值是__2__。
8.在C语言中,指针是指__位置__,而指针变量是指_用于存放位置的变量。
试定义一个指向字符的指针变量p:char *p; 。
9.在C语言中,数组名是一个_位置常量_,不能对其进行赋值操作。
二、选择题(每小题1分,共20分)1.逻辑运算符两侧运算对象的数据____。
A、只能是0或1B、只能是0或非0正数C、只能是整型或字符型数据D、可以是任何类型的数据2.若x为int类型,则逗号表达式((x = 4 * 5 , x * 5),x + 2 5)的结果是_。
C期末考试复习题(答案)

C期末考试复习题(答案)C语言复习题一、单项选择题1、C语言源程序文件经过C编译程序编译连接之后生成一个后缀为( C )的文件。
A).c B).obj C).exe D).bas2、)完成C源文件编辑后、到生成执行文件,C语言处理系统必须执行的步骤依次为( B )A)连接、编译B)编译、连接 C)连接、运行D)运行3、关于C语言的叙述中,不正确的是(D)A)C程序可由一个或多个函数组成B)C程序必须包含一个main ()函数C)C程序的基本组成单位是函数D)注释说明只能位于一条语句的后面4、一个C程序的执行是从(A )。
A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序的main函数开始,到本程序文件的最后一个函数结束D) 本程序文件的第一个函数开始,到本程序main函数结束5、以下正确的叙述是(C )A) 在C语言中,main函数必须位于文件的开头B) C语言每行中只能写一条语句C) C语言本身没有输入、输出语句D) 对一个C语言进行编译预处理时,可检查宏定义的语法错误6、下列选项中,不能用作标识符的是( D)。
A) _1234_ B) _1_2 C) int_2_ D) 2_int_7、常数的书写格式决定了常数的类型和值,0x1011是( C )A)8进制整型常量B)字符常量 C)16进制整型常数D)2进制整型常数8、以下4组用户定义标识符中,全部合法的一组是( A )A)_total clu_1 sum B)if -max turbC)txt REAL 3COM D)int k_2 _0019、_( D )是合法的用户自定义标识符。
A) b-b B)float C)123a D) _isw10、以下选项中不正确的整型常量是( C )。
A) 12L B) -10 C) 1,900 D) 123U11、表达式( C )的值是0。
C语言复习卷带答案

姓名:__________________年级专业:__________________ 学号:__________________凡年级专业、姓名、学号错写、漏写或字迹不清者,成绩按零分记。
…………………………密………………………………封………………………………线…………………………《复习卷》试卷一、单选题(每题1分,共计30分) 1、下列选项中,不合法的变量是(D )。
A 、int x = 3; B 、char ch = 'c' C 、float f ; D 、case c;2、下列选项中,不合法的常量是(D )。
A 、2 B 、'\n' C 、'a' D 、'\483'3、关于#include<stdio.h>这句代码,下列描述中错误的是(C ) A 、"#"是预处理标志,用来对文本进行预处理操作 B 、include 是预处理指令 C 、一对尖括号可以去掉D 、stdio.h 是标准输入输出头文件4、假设a 、b 、c 、d 、m 、n 均为int 型变量,且a=5、b=6、c=7、d=8、m=2、n=2,那么逻辑表达式(m=a>b)&&(n=c>d)运算后,n 的值为( C )。
A 、0 B 、1 C 、2 D 、35、C 语言程序的三种基本结构是( A )。
A 、顺序结构,选择结构,循环结构 B 、递归结构,循环结构,转移结构 C 、嵌套结构,递归结构,顺序结构 D 、循环结构,转移结构,顺序结构6、关于下面的for 循环语句 int i,k; for(i = 0,k = -1;k = 1;i++,k++) printf(“*****”); 下列选项中,描述正确的是(B )A 、判断循环结束的条件非法B 、是无限循环C 、只循环一次D 、一次也不循环7、以下定义语句中,错误的是( D )。
C语言复习资料,有答案

一、填空题1.C语言所提供的基本数据类型包括:单精度、双精度、整型、字符型。
2.若定义int m=8,y=3;则执行y*=y+=m-=y;后y的值是64。
3.Ox10相当于八进制数20 。
4.%m.n表示数据输出的总宽度占M列,其中小数部分占N 列。
5.C语言提供的3种逻辑运算符是非、或者、与。
6.当m=3,n=4,a=5,b=1,c=2时,执行完d=(m=a!=b)&&(n=b>c)后,n的值为1,m 的值为1,d的值为0。
7. 在数组定义格式中,放括号中的元素个数是量。
8. 判断字符串a和b是否相等,应当使用strcmp函数。
9. 在C语言中不能被调用的函数是函数。
10、目前,有两种重要的程序设计方法,分别是面向对象和面向过程。
12、面向对象程序设计的三个特征:多态、继承和封装。
13、在一个C源程序中,注释部分两侧的分界符为___ * */ __ 。
14、do----while 语句至少执行____1____次循环体。
15、在C语言中,一个double型数据在内存中所占的字节数为__8___。
16、若s是unsigned int型变量且已赋初值,则表达式s%2+(s+1)%2的值是__1_______17、表达式3>4的值是___0________18、若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n++后,x的值为11,n的值为6。
19、若x=0,y=0,z=0,则计算表达式x++||y++&&z++后,x的值为1,y的值为1,z的值为1。
二、单项选择题1、下列各高级语言中,(B)是面向对象的程序语言。
A)Basic B)C C)C++ D)Pascal2、一个C程序的执行是从( A )。
A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序的main函数开始,到本程序文件的最后一个函数结束D) 本程序文件的第一个函数开始,到本程序main函数结束3、C语言规定,不同类型的数据占用存储空间的长度是不同的。
c语言期末复习试题附答案

试卷编号:1120所属语言:C语言试卷方案:C语言期末考试试卷总分:100分共有题型:4种一、单项选择共30题(共计60分)第1题(分)设有定义:int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是(A ).A:k++B:k+=1C:++kD:k+1第2题(分)已知int i=5,执行语句i+=++i后,i的值是(C).A:10B:llC:12D:A、B、C都不对第3题(分)以下程序的功能是:给r输入数据后,计算半径为r的圆面积s.程序在编译时出错. ttinclude <>void main()/* Beginning */{ int r;float s;scanf (〃%d〃,&r);s=p*r*r; printf (〃s=%f\n〃,s);出错的原因是(D).A:注释语句书写位置错误B:存放圆半径的变量r不应该定义为整型C:输出语句中格式描述符非法D:计算圆面积的赋值语句中使用了非法变量第4题(分)〃\\\〃 ABC\〃 \\〃的长度是(B ).A:llB:7C:5D:3第5题(分)已知int j, i=l执行语句j=-i++;后,j的值是(C ).A:1B:2串中的内容为“abcdefg”时,c 所指数组中的内容应该为 “lg2f3e4dcba” 。
*/ttinclude <>#include <>#include <>void fun ( char char *b, char *c )int i , j;char ch;i = 0;j 二 strlen(b)-l;/**********FOUND**********/ch = b [ i];b[j] = ch; i++; j —;/**********FOUND**********/while ( *a &&*b )//此处&&改为| | (逻辑或)if ()*c =*a;c++;/**********FOUND**********/a+;)if ( *b )*c 二*b; c++;b++;*c = 0;main()char sl[100],s2[100],t[200];clrscr ();printf (,z \nEnter si string : 〃);scanf (〃如〃,si);printf (,z \nEnter s2 string : 〃);scanf (〃%s 〃, s2);fun( si, s2, t );printf (/z \nThe result is : %s\n 〃,t );i j四、程序设计共1题(共计20分)第1题(分)/*【程序设计】功能:判断一个整数w 的各位数字平方之和能否被5整除, 可以被5整除则返回1,否则返回0。
(完整版)C语言各章节复习题(带答案)

一、C语言概述练习题选择1.一个C程序的执行是从。
A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序文件的第一个函数开始,到本程序main函数结束D) 本程序的main函数开始,到本程序文件的最后一个函数结束2.以下叙述不正确的是。
A) 一个C源程序必须包含一个main函数 B)一个C源程序可由一个或多个函数组成C) C程序的基本组成单位是函数 D) 在C程序中,注释说明只能位于一条语句的后面3.以下叙述正确的是。
A) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误B) 在C程序中,main函数必须位于程序的最前面C) C语言本身没有输入输出语句 D) C程序的每行中只能写一条语句4.一个C语言程序是由。
A)一个主程序和若干个子程序组成 B) 函数组成 C) 若干过程组成 D) 若干子程序组成5.计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是。
A) C语言程序仅可以编译执行B) C语言程序仅可以解释执行C) C语言程序既可以编译执行又可以解释执行D) 以上说法都不对6.以下叙述中错误的是。
A) C语言的可执行程序是由一系列机器指令构成的B)用C语言编写的源程序不能直接在计算机上运行C)通过编译得到的二进制目标程序需要连接才可以运行D)在没有安装C语言集成开发环境的机器上不能运行C源程序生成的.exe 文件7.以下叙述正确的是。
A) C语言程序是由过程和函数组成的B) C语言函数可以嵌套调用,例如:fun(fun(x))C) C语言函数不可以单独编译 D) C语言中除了main函数,其他函数不可作为单独文件形式存在二、数据类型、运算符与表达式选择.1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为x=(i=4,j=16,k=32) A) 4 B) 16 C) 32D) 522.下列四组选项中,均不是C语言关键字的选项是。
c语言考试题及答案

c语言考试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述中,错误的是:A. C语言是一种高级语言B. C语言可以直接被计算机执行C. C语言具有结构化的特点D. C语言具有跨平台的特性答案:B2. C语言中,用于定义一个整型变量的关键字是:A. intB. floatC. doubleD. char答案:A3. 在C语言中,以下哪个运算符用于取模运算?A. %B. /C. *D. -答案:A4. 下列关于数组的描述中,正确的是:A. 数组必须在程序开始时初始化B. 数组的元素可以是不同的数据类型C. 数组的索引从1开始D. 数组的声明必须指定数组的大小答案:D5. 在C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. functionD. define答案:B6. C语言中,用于表示逻辑“与”操作的运算符是:A. &&B. ||C. !D. &答案:A7. 下列哪个选项是C语言中合法的注释?A. // 这是一个注释B. /* 这是一个注释 */C. // 这是一个注释/* 这是一个注释 */D. /* 这是一个注释 */答案:A8. C语言中,用于定义一个空指针的值是:A. NULLB. 0C. falseD. none答案:A9. 下列关于指针的描述中,错误的是:A. 指针可以存储变量的地址B. 指针可以存储函数的地址C. 指针可以存储数组的索引D. 指针可以存储指针的地址答案:C10. 在C语言中,用于定义一个字符型指针的声明是:A. char *ptr;B. int *ptr;C. float *ptr;D. double *ptr;答案:A二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型数组的语法是:______ int array[10];。
答案:int2. 如果一个变量的值是10,那么表达式sizeof(&var)的结果是:______。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言复习题及答案一.单项选择题1.下列选项中,不是转义字符集中的符号是( C )。
A \\B \’C 074D \02. 下列给出的符号串中,不属于C语言保留字的是( B )。
A switchB cherC caseD else3. 下列给出的符号串中,不能作为C语言标识符的是( C )。
A a_2B _2aC a.3D a_34. 下列属于C语言字符常量的是( C )。
A ‘abc’B “\n”C ‘a’D ‘a\0’5. 字符串”ABC”再内存占用的字节数为( B )。
A 3B 4C 6D 86. 设有宏定义“#define R 2+3”,则R*R的宏替换结果正确的是( B )。
A (2+3)*(2+3)B 2+3*2+3C 5*5D 5.0*5.07. 设整形变量I的值为3,则表达式i---i的值为( A )。
A 0B 1C 2D 38. 表达式“10!=9”的值为( D )。
A trueB 非零值C 0D 19. 设有语句int a=3;则执行了语句a+=a-=a*a;后,变量a的值为( D )。
A 3B 0C 9D -1210. 下列选项中,正确的赋值表达式为( C )。
A a=7+b+c=a+7B a=7+b++=a+7C a=(7+b,b++,a+7)D a=7+b,c=a+711. 若有以下定义语句:char a;float c; double d; 则表达式a*b+d-c值的类型为( D )。
A floatB intC charD double12. 用十进制数表示表达式“12||012”的运算结果是( A )。
A 1B 0C 14D 1213. 下列一组运算符中,优先级别最高的运算符是( C )。
A <=B =C %D &&14. 设定“ char a=3,b=6,c;”,计算表达式c=(a^b)<<2后c的二进制值是( D )。
A 00011100B 00000111C 00000001D 0001010015. 设x,y,z,t 均为int类型,则执行下列语句串后,变量t的值为(C )。
X=y=z=0;If(x=y) t=z;Else t=!z;A 不定值B 2C 1D 016. 设整形变量m1值为3,m2值为2,m3值为1,执行下列语句后,整形变量m4值为( D )。
Switch(m1=m2==m3+1){ case1:m4=1;break;case2:m4=3;break;case3:m4=2;break;default:m4=4;}A 1B 2C 3D 417. 设有数据定义语句“int a[200];”,下列数组元素引用中下标不越界的是( A )。
A a[-1]B a[0]C a[201]D a[200]18. 若有以下数据定义语句,则数值为4的表达式是( A )。
int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};A a[‘g’-‘c’]B a[4]C a[‘d’-‘c’]D a[‘d’-c]19. 语句”printf(“%d\n”,strlen(“ats\n012\1\\”));”的输出结果是( C )。
A 11B 10C 9D 820. char x[]={“abcdefg”};char y[]={‘a’,’b’,’c’,’d’,’e’,’f’,’g’};则正确的叙述为( C )。
A 数组x和数组y等价B 数组x和数组y的长度相同C 数组x的长度大于数组y的长度D 数组x的长度小于数组y的长度21.下列不正确的转义字符是(C )A. ′\\′B. ′\″C. ′\086′D. ′\0′22.下列运算符中,优先级最高的是(A )A.[]B.++C.%D.&&23.下列标识符中,不是C语言保留字的是(C )A. charB. whileC. minD. default24.下列数据中,不是C语言常量的是( C)A. ′\n′B. ″a″C. e-2D. 01225.若定义了int a;char b;float c;,则表达式a*b-c的类型是( D)A. floatB. intC. charD. double26.若定义了int a,x,y;,则下列语句中不正确的是( D)A. x=3,y=5;B. ++x;C. x=y+=x*30;D. a=y+x=30;27.设有如下的变量定义:int i = 8 , k , a , b ; unsigned long w = 5 ; double x = 1.42 , y=5.2;则以下符合C语言语法的表达式是〔 A 〕A.a+=a-=(b=4)*(a=3) B.x%(-3)C.a=a*3=2 D.y=float( i )28.经int a=7; float x=2.5,y=4.7; 说明后,表达式x+a%3*(int)(x+y)%2/4的值是〔A 〕A.2.500000 B.2.750000C.3.500000 D.0.00000029.设有单精度量f,其值为13.8,执行语句n = ( int ) f % 3 ; 后,整型变量的值是〔 A 〕A.1 B.4 C.4.333333 D.4.630. 设int c=5 , a ; a=2+(c+=c++, c+8 , ++c ) ; 则a = 〔 B 〕A.15 B.14 C.13 D.1631.已知字母‘A’的十进制ASCII代码值为65,下面程序段的输出是〔 A 〕Char ch1,ch2; ch1=?A?+?5?-…3?; ch2=?A?+?6?-…3?; printf(“%d,%c\n”,ch1,ch2);A.67,D B.B,C C.不确定的值D.C32.设a , b , c为整型数,且a=2,b=3,c=4,则执行完以下语句a*=16+(b++)-(++c)后,a的值是〔 A 〕A.28 B.30 C.32 D.2633. 以下语句:int a = 110 , b = 017; printf ( “ %x , %d \n ” ,a++ , ++b ) ; 输出结果是〔 A 〕A.6e , 15 B.6e , 16 C.6f , 15 D.6f , 1634. 以下程序段int x=10 , y=10 ; printf ( “ %d %d\n ” , x――, ――y ) ;的输出结果是〔 D 〕A.10 10 B.9 9 C.0 10 D.10 935.int x=13, y=5 ; printf(“%d\n”,x%=y/=2); 运行结果为〔 B 〕A.0 B.1 C.2 D.336.已有如下定义和输入语句,若要求a1, a2 , c1 , c2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的数据输入方式是〔AC 〕int a1 , a2 ; char c1 , c2 ;scanf( “ %d %c %d %c ” , &a1 , &c1 , &a2 , &c2 ) ; /* 表示回车*/A.10A 20B B.10 A 20 BC.10A20B D.10A20 B37.若定义了int b[][3]={1 ,2,3,4,5,6,7};,则b数组第一维的长度是(B )A. 2B. 3C. 4D.无确定值38.若定义了x=100;,则表达式x++>100?x+20:x+10的值是(A )A.110B.111C.120D.12139.执行printf(″%d\n″,strlen(″t\″066\xee\n″));语句的输出结果是(A )A.7B.12C.13D.输出项不合法,无正常输出40.若定义了int m,n=0,*p1=&m;,则下列与m=n;等价的正确语句是( D)A. m=*p1;B. *p1=&*n;C. *&p1=&*n;D. *p1=*&n;41.可以用作C程序标识符的一组是(A)A.printB.i\amoodb one-halfaBc 3paiC.PxqD.Cppline# powHis.age while42.以下叙述正确的是( C )A.宏名必须用大写的英文字母表示B.宏定义不仅是符号替换,也可以赋值C.宏替换是在程序编译时完成的,不占用程序运行时间D.引用带参数的宏时,实际参数与宏定义中的形式参数类型应一致43.设char a='\70';则变量a 中( A )A.包含1个字符B.包含2个字符C.包含3个字符D.是非法表示44.设long i=65539;,执行语句printf("%d ",i);后的输出结果是( B )A.-3B.3C.65539D.数据不确定45.设float c,f;,将数学表达式C=95(F-32)能正确表示成C 语言赋值表达式的是(A )A.c=5*(f-32)/9B.c=5/9(f-32)C.c=5/9*(f-32)D.c=5/(9*(f-32))46.设int i=10;,表达式30-i<=i<=9的值是( B )A.0B.1C.9D.2047.以下不能..看作一条C 语句的是( D )A.{;}B.a=5,b=5,c=5;C.if(x>=0&&y=0);D.if(x= =0)a=5;b=10;48.在函数调用时,以下说法正确的是( B )A.函数调用后必须带回返回值B.实际参数和形式参数可以同名C.函数间的数据传递不可以使用全局变量D.主调函数和被调函数总是在同一个文件里49.设int x=7;,执行语句x=x <<2;后,变量x 的值是( D )A.1B.3C.14D.2850.执行语句printf("|%9.4f|\n ",12345.67);后的输出结果是( B )A.|2345.6700|B.|12345.6700|C.|12345.670|D.|12345.67|51.以下说法中正确的是(B)A.字符型变量可以存放字符串B.递归调用是指函数调用自己C.所有的外部函数只能在本文件中被调用D.在循环体中break语句和continue语句的作用都是结束循环52.设char s[6],*ps=s;,则正确的赋值语句是(C)A.s="12345";B.*s="12345";C.ps="12345";D.*ps="12345";53.设int a[ ]={1,2,3,4,5},*p=a;则数组元素的正确表示是(A)A.a[2]B.&(a+1)C.a[5]D.&p54.对二维数组的正确定义是(C)A.int a[ ] [ ]={1,2,3,4,5,6};B.int a[2] [ ]={1,2,3,4,5,6};C.int a[ ] [3]={1,2,3,4,5,6};D.int a[2,3]={1,2,3,4,5,6};55.字符数组s不能..作为字符串使用的是(D)A.char s[ ]="happy";B.char s[ ]={"happy"};C.char s[6]={'h','a','p','p','y'};D.char s[4]={'h','a','p','p','y'};56.若定义函数:fun(int a,float b){return a+b;}则该函数的数据类型是(A)A.intB.voidC.floatD.不确定57.设struct st{ int a;float b;}s, *p=&s;则正确的引用是(B)A.(*).s.aB.(*p).aC.p->s.aD.p.s.a58.设enum color {red,yellow=2,blue,white,black}r=white;,执行printf("%d",r);后的输出结果是(D)A.0B.1C.3D.459.以下说法中错误..的是(C)A.共用型数据中所有成员的首地址都是同一个B.可以用已定义的共用型来定义数组或指针变量的类型C.共用型数据中的成员可以是结构型,但不可以是共用型D.用typedef定义新类型取代原有类型后,原类型仍可有效使用60.设#define L(x) 2*3.14*x则L(x)是(D)A.函数名B.函数调用C.无参的宏名D.带参的宏名61.字符串”xyzd”再内存占用的字节数为( C )。