中等职业学校计算机应用专业C语言编程基础科试卷及答案
一、填空(共35分)
1、Unix系统诞生于      年,是由      实验室的KT和DMR用汇编语言开发成功的。 
2、在C语言中,标识符主要为                  的名字使用。
3、C语言中中的基本数据类型包括            三种。
4、数组是有序是的并且有      的数据的集合。 
5、C语言中,二维数组元素在内存中的存储顺序是   
6、C语言函数的实参、形参二者类型    ,一般个数   
7、在C语言中,变量的存储类别有四种,它们是               
8、根据函数能否被其他源文件调用,函数分为    函数和    函数两类。
9、文件是存储在外部存储设备上的     
10、定义文件指针变量的格式为   
11、feof( )函数是      检测函数,当文件位置指针处于    时,它返回一个    值。
12、用逻辑运算符将        连接起来就是逻辑表达式。
13、结构化程序设计方法,采用      的设计原则和          来构造程序。
14、程序结构一般采用              结构。
15、第三代高级语言是      ,注重的是          之间的关系是从属性的层层调用关系。
二、单项选择题(共15分)
1、C语言程序由    组成
A. 子程序  B. 主程序和子程序 
C. 函数    D. 过程
2、源程序要正确地运行,必须要有什么函数?
A. printf函数    B. 自定义的函数
C. main函数      D. 不需要函数
3、若a为整型变量,且有以下语句
a=-017L;
printf("%d\n",a);
则下面___说法是正确的?
A. 赋值不合法      B. 输出值为-17
C. 输出为不确定值  D. 输出值为-15
4、下面    表达式的值为4.
A. 11/3          B. 11.0/3
C. (float)11/3    D. (int)(11.0/3+0.5)
5、在C语言的if语句中,用作判断的表达式为___。
A. 关系表达式        B. 逻辑表达式
C. 算术表达式        D. 任意表达式
6、下面哪一项是不正确的字符串赋值或赋初值的方式。
A. char *str; str="string";
B. char str[7]={'s','t','r','i','n','g'};
C. char str1[10];str1="string";
D. char str1[]="string",str2[]="12345678";
7、若有以下说明和语句,则输出结果是哪一项?
(strlen(s)为求字符串s的长度的函数)
char s[12]="a book!";
printf("%d",strlen(s));
A. 12  B. 8  C. 7  D. 11
8、C语言可执行程序从什么地方开始执行?
A. 程序中第一条可执行语句    B. 程序中第一个函数
C. 程序中的main函数  D. 包含文件中的第一个函数
9、有一个函数原型如下所示:
abc(float x,float y);
则该函数的返回类型为___。
A. void  B. double  C. int  D. float
10、在C语言程序中,下面哪一个是正确的?
A. 函数的定义可以嵌套,但函数的调用不可以嵌套
B. 函数的定义不可以嵌套,但函数的调用可以嵌套
C. 函数的定义可以嵌套,函数的调用也可以嵌套
D. 函数的定义和函数的调用都不可以嵌套
11、对于类型相同的指针变量,不能进行哪种运算?
A. +  B. -  C. =  D. ==
12、若有以下说明和语句,且0<=i<10, 则下面    是对数组元素的错误引用?
int a[]={1,2,3,4,5,6,7,8,9,0}, *p, i;
p=a;
A. *(a+i)    B. a[p-a]  C. p+i  D. *(&a[i])
13、如果想把一些新的数据添加到文件xh.txt中,则应该以下面    方式打开文件?
A. fp=,"a");    B.fp=fopen("xh.txt",a);
C. fp=fopen("xh.txt","a");  D.fp=fopen("xh.txt",'a');
14、下面哪条语句是从文件中读取一个字符?
A. ch=getc();        B. fputc(ch,fp);
C. fscanf("%c",&ch);  D. scanf("%c",&ch);
15、C语言中的文件类型如何划分?
A. 索引文件和文本文件两种 
B. ASCII文件和二进制文件两种
C. 只有文本文件一种       
D. 只有二进制文件一种
三、多选题(共20分)
1、下面    是定义局部变量储存类别的保留字
A. int  B. auto    C.static    D.float
E. register  F.extern  G. unsigned H.signed
2、指出下面各说明语句中      是合法的:
A. int abcd[0x80];    B. char 9ab[10];
C. char chi[-200];    D. int aaa[5]={3,4,5};
E. float key[]={3.0,4.0,1,0};    F. char disk[];
G. int n,floppy[n];      H. int cash[4]={1,2,3,4,5,6};
3、C程序的结构可分为    类?
A.顺序结构    B.循环结构  C.程序结构 D.选择结构
4、C语言的主要特点有          
A.简洁、紧凑,使用方便、灵活,易于学习和应用。
B.C语言是面向结构化程序设计的语言。
C.C语言允许直接对位、字节和地址进行操作。
D.数据类型丰富。  E.C语言生成的目标代码质量高。
5、指出下面合法的标识符:       
编程语言有哪几种类A. 3ab    B. int    C. ABC    D. a_3
E. sum.a  F. #abc  G. _stu2  H. abc f
6、指出下面       是合法的用户定义的标识符
A. P-S  B. putchar  C. double  D. _908
E. *par  F. sheep!  G. wind    H. x y
7、C语言的基本类型   
A. 整型    B. 枚举型    C. 数组型    D. 指针型
E. 字符型  F. 构造型    G. 实形      H. 空类型
8、C语言中整形常量按进制划分,有以下几种:       
A. 十六进制常量  B. 十进制常量
C. 八进制常量    D. 二进制常量
9、如果要把常量327存入变量a中,a可以定义成    类型
A. int      B. char  C. long      D. float
10、下面      写法是对的,而且是常量
A. 125    B.  -.456    C. 1.25e20    D. 'AB'
E. E6    F.  0238    G. 0xabcdef 
H. "\n\\\'\123"
四、判断(共20分)
1.在C语言中,函数的参数传递有两种方式:传递值和传递地址。( )
2.一般来说,使用指针能使目标程序占用存储空间大,运行速度快。()
3.指针变量可以定义为指向字符型、实型以及其他类型的变量。()
4.内存区的每一个字节都有一个编号,这个编号就称为“地址”。()
5.条件编译的好处是可以增加被编译的语句,从面增加目标代码的长度。
6.写带有参数的宏定义时,宏与带括号的参数间有空格。()
7.fscanf()函数从文件中读取字符串,只当遇到空格符时才结束字符的读取。()
8.形式参数是指定义函数时跟在函数名后的小括号内的变量名。实际参数则是指调用函数时,跟在函数名后的小括号内的表达式。()
9.在定义字符数组的同时初始化数组外,可以用赋值的形式把字符串存入一个字符的数组中。()
10.用逻辑运算符将关系表达式或变量连接起来就是逻辑表达式。
11.在关系运算中,若规定的关系成立,则其结果为1,反之为0。
12.格式字符前面的数字,指定输入数据所占宽度,不能指定小数位数。
13.c格式符,用为输出一个字符。对于整数,只要它的值在0—256范围内。()
14.参数ch通常为字符型变量、字符码或字符本身。()
15.C语言提供了整型、实型、字符型三种基本类型。()
16.逗号运算符在所有运算符中优先级虽最低,逗号运算符的结合方向是“从左至右”。()
17.C语言提供了一个惟一的两目运算符(?:),即条件运算符。()
18.递增、递减运算符的优先级与“取正负”的优先级不同。()
19.当赋值号两边的数据类型不同时,一般由系统自动进行类型转换。()
20.自动转换的规则是按照低类型转换到高类型或赋值号的右边类型转换到赋值号左边的类型来进行的。()
五、A、写出下列程序的运行结果。(共5X4分)
1、void main()
{int count,i;int x,y,z;x=y=z=0;
scanf("%d",&count);
for(i=0;i<count;i++)
{x=(x+1)%2;y=(y+1)%3;z=(z+1)%5;}
printf("x=%d,y=%d,z=%d\n",x,y,z);
}
如果运行时输入10, 结果是 x=___,y=___,z=___。
如果运行时输入17, 结果是 x=___,y=___,z=___。
2、
void main()
{int a,b,c;a=2;b=7;c=5;
switch(a>0)
{case 1:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。