1、指出下列关于C源程序的叙述中哪些是错误的()
A、一个C源程序可由一个或多个函数组成
B、一个C源程序必须包含一个main()函数
C、C源程序的基本组成单位是函数
D、在C源程序中,注释说明只能位于一条语句的后面
答案选D。注释有2种方式:/* */和//
/* */可以位于一条语句的前面
C中,C程序的基本组成单位是函数
2、以下程序
int main()
{
char str[][10]={"China","Beijing"},*p=(char *)str;
printf("%s\n",p+10);
}
程序运行后的输出结果()
输出结果是Beijing。因为p+10指向下一列。下一列的开头是B的位置,而%s是字符串输出格式符,所以输出结果为Beijing。
3、能正确表示逻辑关系:"a≥10或a≤0"的C语言表达式是()。
a>=10||a<=0
4、下列关于类的权限的描述错误的是()
A、类本身的成员函数只能访问自身的私有成员
B、类的对象只能访问该类的共有成员
C、普通函数不能直接访问公有成员,必须通过对象访问
D、一个类可以将另一个类的对象作为成员
A 类本身的成员函数还可以访问公有成员,所有错误。
5、设有定义语句
int x[6]={2,4,6,8,5,7},*p=x,i;
要求依次输出x数组6个元素中的值,不能完成此操作的语句是( )。
A、for(i=0;i<6;i++) printf("%2d",*(p++));
B、for(i=0;i<6;i++) printf("%2d",*(p+i));
C、for(i=0;i<6;i++) printf("%2d",*p++);
D、for(i=0;i<6;i++) printf("%2d",(*p)++);
选择D。(*p)++表示的是取出指针p指向的内容,然后将它加1.但是指针不会改变。所以输出结果是2,3,4,5,6,7。不能将X数组中的6个元素输出。
6、对两个字符a和b进行初始化:char a[]="ABCDEF";char b[]={'A','B','C','D','E','F'};则以下叙述正确的是:
A、a数组比b数组长度长
B、a,b长度相同
C、a,b数组完全相同
D、a和b中都存放字符串
A正确,因为char a[]="ABCDEF"赋值的时候默认增加了一个'\0',所以长度比b数组多1。a,b中都存放的是一个一个字符,只不过是一个数组。
7、C 语言规定,在一个源程序中,main函数的位置()。
可以在任意位置
8、什么是面向对象程序设计语言中的一种机制。这种机制实现了方法的定义与具体的对象无关,而对方法的调用则可以关联于具体的对象。
答:模板
错误。
9、在64位系统中,有如下类:
class C
{
public:
char a;
static char b;
void *p;
static int *c;
virtual void func1();
virtual void func2();
};
则sizeof(C)的数值是()
A、9 B、17 C、32 D、24
10、32位机上,给你1、2、3 这三个数字,可以使用C的各种运算符,你能在计算机上得到的最大的整数是()
A、2*3*sizeof(1)
B、3<<(2<<sizeof(1))
C、sizeof(3)<<(sizeof(2)<<sizeof(1))
D、(unsigned long)(2-3)*1
选择D。A 24 B 0 C 0 D 2^32-1