A)每个函数都可以被其它函数调用(包括main函数)
B)每个函数都可以被单独编译
C)每个函数都可以单独运行
D)在一个函数内部可以定义另一个函数
(15)若有语句:char*line[5];,以下叙述中正确的是
A)定义line是一个数组,每个数组元素是一个基类型为char的指针变量
B)定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组
C)定义line是一个指针数组,语句中的*号称为间址运算符
D)定义line是一个指向字符型函数的指针
(16)有以下程序段
typedefstructNODE
{intnum;structNODE*next;
}OLD;
以下叙述中正确的是
A)以上的说明形式非法B)NODE是一个结构体类型
C)OLD是一个结构体类型D)OLD是一个结构体变量
(17)以下叙述中错误的是
A)C语言中对二进制文件的访问速度比文本文件快
B)C语言中,随机文件以二进制代码形式存储数据
C)语句FILEfp;定义了一个名为fp的文件指针
D)C语言中的文本文件以ASCII码形式存储数据
(18)当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是
A)k%2B)k%2==1C)(k%2)!=0D)!k%2==1
(19)以下不能正确计算代数式值的C语言表达式是
A)1/3*sin(1/2)*sin(1/2)B)sin(0。5)*sin(0。5)/3
C)pow(sin(0。5),2)/3D)1/3。0*pow(sin(1。0/2),2)
(20)以下能正确定义且赋初值的语句是
A)intn1=n2=10;B)charc=32;
C)floatf=f+1。1;D)doublex=12。3E2。5;
(21)以下程序的功能是:给r输入数据后计算半径为r的圆面积s。程序在编译时出错。
main()/*Beginning*/{intr;floats;scanf("%d",&r);s=*?*r*r;printf("s=%f\n",s);}
出错的原因是
A)注释语句书写位置错误B)存放圆半径的变量r不应该定义为整型
C)输出语句中格式描述符非法D)计算圆面积的赋值
(22)设有定义:intk=1,m=2;floatf=7;,则以下选项中错误的表达式是
A)k=k>=kB)-k++C)k%int(f)D)k>=f>=m
(23)设有定义:inta=2,b=3,c=4;,则以下选项中值为0的表达式是
A)(!a==1)&&(!b==0)B)(aC)a&&bD)a||(b+b)&&(c-a)
(24)有以下程序段
intk=0,a=1,b=2,c=3;
k=ac?c:k;
执行该程序段后,k的值是
A)3B)2C)1D)0
(25)设变量a、b、c、d和y都已正确定义并赋值。若有以下if语句
if(aif(c==d)y=0;
elsey=1;
该语句所表示的含义是
A)B)
C)D)
(26)有以下程序段
intn,t=1,s=0;
scanf("%d",&n);
do{s=s+t;t=t-2;}while(t!=n);
为使此程序段不陷入死循环,从键盘输入的数据应该是
A)任意正奇数B)任意负偶数C)任意正偶数D)任意负奇数
(27)设变量已正确定义,则以下能正确计算f=n!的程序段是
A)f=0;B)f=1;
for(i=1;i<=n;i++)f*=i;for(i=1;iC)f=1;D)f=1;
for(i=n;i>1;i++)f*=i;for(i=n;i>=2;i--)f*=i;