1.能正确表示a和b同时为正或同时为负的逻辑表达式是( D )。
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
解析:0是非正非负数
解析:s为结构体类型名,s a定义了a为一个结构体变量
2.表达式10!=9的值是true。 (F)
解析:在c语言中正确为1,错误为0;所以其值是 1
3.有如下程序段
float x=2.0,y;
if(x<0.0) y=0.0;
else if(x<5.0)y=1.0/x;
else y=1.0;
printf("%f\n",y);
该程序段的输出结果是( C )。
A.0.000000 B.0.250000
C.0.500000 D.1.000000
解释:y是float类型,且除数是浮点数形式
解析:C语言规定,实参变量对形参变量的数据传递是“值传递”,即单向传递,只由实参传给形参,而不能由形参传回来给实参。在内存中,实参单元与形参单元是不同的单元,所以选D
4.变量a所占内存字节数是( D )。
union U
{char st[4];
int i;
long l;
};
struct A
{int c;
union U u;
}a;
A: 4
B: 5
C: 6
D: 8
解析:共用体所占字节数是里面的成员所占字节数相加,int 4个字节 ,union U u取最长4字节,所以a所占字节数为
4+4=8.
5.以下错误的转义字符是(D)
A: ‘\’
B: ‘’’
C: ‘\t’
D: ‘\80’
解析:因为“\”后面使用数字表示字符ASCII值默认用的是8进制 用8自然是错的
6任何一个算法都必须有的基本结构是( A )
A: 顺序结构
B: 条件分支结构
C: 循环结构
D: 以上三个都要有
解析:根据算法的特点
如果在执行过程中,不需要分类讨论,则不需要有条件结构;
如果不需要重复执行某些操作,则不需要循环结构;
但任何一个算法都必须有顺序结构
7.以下程序输出结果是( B )
#include <stdi