一.选择题
1.以下关于运算符优先顺序的描述中正确的是( C )。
A.关系运算符< 算术运算符< 赋值运算符< 逻辑与运算符
B.逻辑 运算符< 关系运算符< 算术运算符< 赋值运算符
C.赋值运算符< 逻辑与运算符< 关系运算符< 算术运算符
D.算术运算符< 关系运算符< 赋值运算符< 逻辑与运算符
2.下列选项中合法的变量名是______C___
A. #define B. int C. a594_3 D. abs(x)
3.以下正确的描述是( A )。
A. break语句的作用是结束整个循环的执行
B.在C程序中,注释说明只能位于一条语句的后面
C. 在循环体内使用break语句或continue语句的作用相同
D. 从多层循环嵌套中退出时, 只能使用goto语句
4.以下说法正确的是(C )
A.#define 和 printf 都是 C 语句。
B.#define 是C语句,而printf不是。
C.若程序中要调用数学函数,必须在文件开头输入语句 #include “math.h”
D. #define 和 printf 都不是 C 语句。
5.下面的函数定义正确的是____D__________
A) float fun (float x ; float y) {return x*y;}
B) float fun (float x,y) {return x*y;}
C) float fun (x,y) {int x,y;return x*y;}
D) int fun (int x, int y) {return x*y;}
6.执行下面语句后的输出为( D )
int i=-1;
if (i<=0) printf(“****\n”)
else printf(“%%%%\n”)
A). **** B). %%%%
C). %%%%c D). 有语法错误,不能正确执行
7.以下程序的输出结果是( A )
void main( )
{int k=17;
printf("%d, %o, %x \n ", k, k, k );
}
A). 17, 21, 11 B). 17, 17, 17
C). 17, 0x11, 021 D). 17, 21, 1
8.以下不正确的叙述是 ( C )
A)#define是宏定义命令
B)宏定义只是做简单的置换,不做正确性检查
C)宏定义是C语句,必须在行末加分号
D)printf是C语句,但#define不是。
9.一个C语言程序是由( D )
A) 一个主程序和若干子程序组成 B)若干子程序组成
C) 若干过程组成 D) 函数组成
10.C语言规定,在一个源程序中,main()函数的位置( C )。
A.必须在最开始 B.必须在最后
C.可以任意 D.必须在系统调用的库函数的后面
11.以下对二维数组a的正确说明是( C )。
A) int a[3][]; B) floatf a(3,4);
C) char a[1][3]; D) float a(3)(5);
12.若有说明: int a[3][2]={10};则下面正确的叙述是( A )
A)只有元素a[0][0]可得到初值10
B)此说明语句不正确:。
C)数组a中各元素都可得到初值,但其值不一定为0。
printf函数的执行顺序 D)数组a中每个元素均可得到初值10
13.以下叙述不正确的是( C )。
A) 一个C源程序可由一个或多个函数组成
B) 一个C源程序必须包含一个main函数
C) C程序的基本组成单位是语句
D) 只能在循环体内和switch语句体内使用break语句
14.为了避免在嵌套的条件语句If一else中产生二义性,C语言规定else子句总是与( B )配对。
A) 缩排位置相同的if B) 其之前最近的未配对的if
C) 之后最近的if D) 同一行上的if
15.能正确表示a和b同时为正或同时为负的逻辑表达式是( B)
A)(a>=0||b>=0)&&(a<0||b<0)
B)(a>=0&&b>=0)||(a<0&&b<0)
C)(a+b>0)&&(a+b<=0)
D) (a-b>0)&&(a-b<=0)
16.C语言提供的合法关键字是(D)。
A) swith
B) cher
C) Case
D) Default
17.在C语言中,逻辑值"真"的表示是用(c)。
A)true
B)整型值0
C)非另整型值
D)T
18逻辑运算符两侧运算对象的数据类型是(D)。
A)只是0或1
B)只能是0或非0正数
C)只能是整型或字符型数据
D)可以是任何合法的类型数据
19在C语言中,char 型数据在内存中的存储形式是(D)。
A)补码
B)反码
C)原码
D)ASCII 码
20 TURBOC中int类型变量所占字节数是(B)。
A)1
B)2
C)3
D)4
二、判断题
1数据是操作的对象,操作的结果会改变数据的状况。对
2字符型变量用来存放字符常量,注意只能放2个字符。错
3 C语言中可以把一个字符串赋给一个字符变量。错
4在C语言中的实型变量分为两种类型,它们是float(实型)和double(双精度实型)。错
5在C语言中,要求参加运算的数必须是整数的运算符是%.对
6若有以下定义,则执行下面表达式y+=y-=m*=y后,y的值为-6。int m=5,y=2;对
7输入语句的格式为: scanf("%d%d%d" ,&a,&b,&c);是正确的。对
8在scanf("%d,%d" &a,&b)函数中,可以使用一个或多个空格作为两个输入数之间的间隔。错
9 getchar 函数的功能是接收从键盘输入的一串字符。错
10在变量说明中给变量赋初值的方法是: int a=b=c=10;错
12 printf 函数是一个标准库函数,它的函数原型在头文件“stdio.h"中。对
13 printf 函数称为格式输入函数,它的函数原型在头文件“stdio.h"中。错
14 在printf 函数中,不同系统对输出表列的求值顺序不一定相同,TC是按从右到左进行的。对
15 若int x=3; printf("%d",&x);则系统会报错,没有任何结果。错
16 逻辑运算符的优先级别高于算术运算符错
二.填空题
1.C语言源程序的扩展名为.c,可执行文件的扩展名为_______________。.exe
2.数组 int a[3][5];共定义了______个数组元素。15
3.C程序由函数构成,C程序总是从_______开始执行.main()
4. C语言中,用__________ 关键字来包含如stdio.h之类的头文件。 include
5.函数的返回值是通过函数中的________________语句来获得的。return
6.至少执行一次循环体的循环语句是 。do—while 语句
7.对于不带返回值的函数,应当用关键字______________定义函数。void
8.多分支结构的程序,通常选用_________语句来实现。 switch
9.若char ch[]="25yi6"有以下语句,则编译后分配给数组ch的内存占用的字节数为________。6
10.若char str[8]={“tony”};int k=strlen(str);则k的值为____________。4
三.程序阅读题
1.以下程序的运行结果是 _________________1
#include <stdio.h>
void main()
{int m=3;
if(--m<3) printf(" %d\n",--m);
else printf("%d\n",++m);
}
2.执行下面程序段后, 输出结果是________________ i=6 j=3 m=7
#include <stdio.h>
int i=2;
int fun(int x)
{ int k,j=1;
i=x*2; k=i+j;
return k;
}
void main( )
{ int m,j=3; m=fun(j);
printf(“i=%d j=%d m=%d\n”,i,j,m);
}
3.下面程序的输出是_____________ 12
void main( )
{int arr[10],i,k=0;
for(i=0;i<10;i++)
arr[i]=i;
for(i=1;i<4;i++)
k+=arr[i]+i;
printf("%d\n",k);
}
4.下面程序的输出结果是________________234567
#include <stdio.h>
#include <string.h>
#define MAX_COUNT 6
void fun() ;
void main( )
{int count;
for(count=1;count<=MAX_COUNT;count++)
fun();
}
void fun()
{static int i;
i+=2;
printf("%d",i--);
}
}
四、程序填充题(本题共2小题,每个空格2分,共10分)给出下列程序,将横线处缺少的部分补上,使其能正确运行。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论