2.3 综合自测
一、选择题
1.构成C语言程序的基本单位是( )。
A.函数 B.变量 C.子程序 D.语句)是不正确的转义字符。
2.以下(
A.'\\' B.'\" C.'020' D.'\0'
3.C语言规定:在一个源程序中,main()函数的位置( )。
A.必须在最开始 B.必须在系统调用的库函数后面
C.可以任意 D.必须在最后
4.为求出return语句返回计算100!的结果,此函数的类型说明应为( )。
A.int B.long C.unsigned long D.选项A、B、C都不对
5.C语言中的标识符只能由字母、数字和下划线3种字符组成,且第一个字符( )。
A.必须为字母 B.必须为下划线
C.必须为字母或下划线 D.可以是字母、数字和下划线中的任意一种
6.以下选项中合法的用户标识符是( )。
A.int B.a# C.5mem D._243
7.C语言中的简单数据类型有( )。
A.整型、实型、逻辑型 B.整型、字符型、逻辑型
C.整型、实型、字符型 D.整型、实型、字符型、逻辑型
8.以下选项中,不正确的整型常量是( )。
A.-37 B.32,758 C.326 D.6
9.以下选项中,合法的C语言字符常量是( )。
A.'\t' B."A" C.67 D.A
10.以下选项中,不正确的实型常量是( )。
A.123 B.1e4 C.3.640E-1 D.0.35
11.以下选项中,合法的C语言赋值语句是( )。
A.a=b=34 B.a=34,b=34 C.--i; D.m=(int)(x+y);
12.设int类型的数据长度为两个字节,则unsigned int类型数据的取值范围是( )。
A.0~255 B.0~65535 C.-32768~32767 D.-256~255
二、操作题
下列给定程序中函数fun()的功能是:求两个非零正整数的最大公约数,并作为函数值返回。
例如,若num1和num2分别为49和21,则输出的最大公约数为7;若num1和num2分别为27和81,则输出的最大公约数为27。
请改正程序中的错误,使它能得出正确结果。
注意:不得增行或删行,也不得更改程序的结构。
试题程序
#include <stdio.h>
int fun(int a,int b)
{ /*****found*****/
int r;t;
if(a < b)
{ /*****found*****
t = a;a = b;b = t
}
r = a% b;
/*****found*****/
while(r!= 0);
{ a = b;b = r;r = a% b;
}
return b;
}
main()
{
int a,b
printf("请输入两个非0正数整数:\n");
scanf("% d% d",&a,&b)
printf("% d和% d的最大公约数为:% d\n",a,b,fun(a,b);
}