一、单项选择(每小题2分,共40分)
二、填空(每空2分,共造梦西游3宠物在哪20分)
三、程序填空题(每小题5分,共20分)
四、编程题小题10分,共20分)
1、C语言源程序文件经过C编译程序编译连接之后生成一个后缀为(  C    )的文件。
A.”.c”      B.“.obj”      C.“.exe”      D.“.bas”
2、以下叙述不正确的是(  C      )。
A. 一个C源程序可由一个或多个函数组成
B. 一个C源程序必须包含一个main函数
C. 在C程序中,一行只能写一个语句
D. 在C程序中,注释说明对程序功能不产生影响
3、一个C语言程序是由(  B    )。
A.一个主程序和若干子程序组成          B. 函数组成
C.若干过程组成                        D. 若干子程序组成
4、用C语言编写的代码程序( B      )。
A.可立即执行                          B. 是一个源程序
C.经过编译即可执行                    D. 经过编译解释才能执行
5一个C语言源程序只有一个函数,那么这个函数的名称为(  C      )。
A.math      B.stdio      C.main      D.abs
6、以下不正确的C语言标识符是 A    )
A. void        B. a3_b3      C. ablexe    D. _x
7、以下选项中属于C语言的数据类型是(  C    )。
A. 复数型      B. 逻辑型      C. 双精度型      D. 集合型
8若有说明和语句:int  a=5;
                  a++;
  则此处表达式a++的值是(  C      )。
A.7          B.6            C.5          D.4
9、在C语言中,以下叙述不正确的是(    A    )
A. 在C程序中,无论是整数还是实数,都能被准确无误的表示
B. 在C程序中,变量名代表存储器中的一个位置
C. C语言中的变量名只能由字母,数字和下划线三种字符组成
D. C语言中变量必须先定义后引用
10、设以下变量均为int类型,则值不等于7的表达式是C     )
A. (x=y=6,x+y,x+1)         B. (x=y=6,x+y,y+1)
C. (x=6,x+1,y=6,x+y)      D. (y=6,y+1,x=y,x+1) 
11、与数学式对应的C语言表达式是C    )
A. 3*xn/(2*x-1)              B人渣的本愿电视剧真人版. 3*x**n/(2*x-1)   
C. 3*pow(x,n)*(1/(2*x-1))        D. 3*pow(n,x)/(2*x-1)
12、若x和y都是int型变量,x=100,y=200,程序片段:printf("%d",(x,y));的输出结果是(  A    )。
A. 200        B. 100
C. 100 200      D. 输出格式符不够,输出不确定的值
13以下程序的输出结果是   D  )
#include<stdio.h>
void  main()
{
int a=12, b=12;
printf("%d,%d\n",--a,++b);
}
A. 10,10    B. 12,12    C. 11,10      D. 11,13
14、若有定义:
  int a=7;
  float x=2.5,y=4.7;
  则表达式 x+a%3*(int)(x+y)%2/4 的值是 A    )
A. 2.500000          B. 2.750000      C. 3.500000     D. 0.000000
15、字符(char)型数据在微机内存中的存储形式是 D    )
A. 反码  B. 补码  C. EBCDIC码  D. ASCII码
16、已知i,j,k为int变量,若从键盘输入1,2,3,使i的值为1,j的值为2,k的值为3,以下选项中正确的输入语句是(    C    )。
A. scanf("%2d%2d%2d",&i,&j,&k);        B. scanf("%d%d%d",&i,&j,&k);   
C. scanf("%d,%d,%d",&i,&j,&k);          D. scanf("i=%d,j=%d,k=%d",&i,&j,&k);
17、为表示关系x≥y≥z,应使用C语言表达式(    A    )。
A. (x>=y)&&(y>=z)        B. (x>=y)AND(y>=z)
C. (x>=y>=z)              D. (x>=y) & (y>=z)
18、C语言中while 和do-while 循环的主要区别是(  A    )。
A. do-while的循环体至少无条件执行一次
B. while 的循环控制条件比do-while 的循环控制条件严格
C. do-while 允许从外部转到循环体内
D. do-while 的循环体不能是复合语句
19、对于某个函数调用,不用给出被调用函数的原型的情况是( C      )
A. 被调用函数是无参函数               
B. 被调用函数是无返回值函数
C. 函数的定义在调用处之前             
D. 函数的定义在其他程序文件中
20、有如下函数调用语func(rec1,rec2+rec3,rec4,rec5);该函数调用语句中,含有的实参个数是(    B  )。思想汇报2012
A. 3      B. 4      C. 5      D. 有语法错误
21、一个C语言的执行是从(  C    )。
A. 本程序的主函数开始,到本程序的主函数结束
B. 本程序的第一个函数开始,到本程序的最后一个函数结束
C. 本程序的主函数开始,到本程序的最后一个函数结束
D. 本程序的第一个函数开始,到本程序的主函数结束
22、C语言程序的基本单位是(  C  )。
A. 程序行      B. 语句    C. 函数    D. 字符
23、一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是(    B    )。
A. 有零个或多个输入      B. 有零个或多个输出    C. 有穷性    D. 有效性
24、以下叙述中正确的是(  C    )。
A. C语言比其他语言高级     
B. C语言可以不用编译就能被计算机识别执行
C. C语言以接近自然语言和数学语言作为语言的表达形式   
D. C语言出现的最晚,具有其他高级语言的一切优点
25C语言源程序文件经过C编译程序编译之后生成一个后缀为(  B    )的文件。
A.”.c”      B.“.obj”      C.“.exe”      D.“.bas”
26、C语言提供的合法的数据类型关键字是( B       )
A.Double      B. short      C. integer      D. Char
张天爱方发声明27、可用作用户标识符的选项是(  B    )。
A. 2a                B. Case
C. void              D. -abc 
28、以下不正确的叙述是(  D      )。
林心如陈坤
A. 在C程序中,逗号运算符的优先级最低
B. 在C程序中,TOTAL和Total是两个不同的变量   
C. 在C程序中,%是只能用于整数运算的运算符   
  D. 当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值
29、若变量aint类型,并执行了语句 “a=’A’+1.6;” ,则正确的叙述是(  D      )。
A. a的值是字符C                B. a的值是浮点型   
C. 不允许字符型和浮点型相加        D. a的值是字符A的ASCII值加上1
30、表达式(  C    )的值是0。
A.3%5        B.3/5.0        C.3/5        D.3<5
31、表达式 !(x>0||y>0) 等价于(    D    )。
A.!x>0||!y>0        B.!(x>0)||!(y>0)    C.!x>0&&!y>0    D.!(x>0)&&!(y>0)
32、设有如下定义: int x=10,y=3,z则语句 printf("%d\n",z=(x%y,x/y));的输出结果是D     )
A. 1        B. 0        C. 4        D. 3
33阅读下面的程序
#include<stdio.h>
void main()
{
  int i,j,m,n;
  i=8;j=10;
  m=++i;
  n=j++;
  printf("%d,%d,%d,%d",i,j,m,n);
}
  程序的运行结果是(  C      )。
A. 8,10,8,10            B. 9,11,8,10
C. 9,11,9,10            D. 9,10,9,11
34、若有定义int x=3,y=2和float a=2.5,b=3.5,则表达式:(x+y)%2+(int)a/(int)b的值是D     )
A. 0        B. 2          C赵仁成. 1.5        D. 1
35、下列运算符中,优先级从高到低依次为   D  )