每日一练—C++专项练习 7.26
1、十进制数268转换成十六进制数是()。
10C
2、sizeof(char),sizeof(int),sizeof(double),sizeof(float)的值分别是()
分别为1,4,8,4
3、如果有#define AREA(a,b)a+b则语句int s=AREA(3,4)*AREA(3,4) 执行后变量s值为()
宏定义是直接替换,所以s = 3+4*3+4 = 19
4、下面程序段的输出结果是:
int a = 5, b = 4, c = 3, d = 2;
if (a>b>c)
printf("%d\n", d);
else if ((c - 1 >= d) == 1)
printf("%d\n", d + 1);
else
printf("%d\n", d + 1);
a>b>c = (a>b)>c = 1>3 = 0
c - 1 >= d = 3 - 1 >= 2 = 1==1 所以输出d+1=3
5、设已经有A,B,C,D4个类的定义,程序中A,B,C,D析构函数调用顺序为?
C c;
void main()
{
A*pa=new A();
B b;
static D d;
delete pa;
}
析构顺序是A B D C
6、已知int a[3][3] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; 不能表示数组元素a[2][1]的地址是()。
A、&a[2][1]
B、*(a[2]+1)
C、a[2]+1
D、*(a+2)+1
选择B
7、定义char dog[]="wang\0miao";那么sizeof(dog)与strlen(dog)分别是多少:
char dog[] = "wang\0miao" 因为字符中间有一个\0,所以赋值时在\0处截断,所以dog[] = "wang\0",长度为5。所以sizeof(dog) = 1*5 = 5 strlen(dog) = 5
错误
所以sizeof(dog) = 10 ,strlen(dog) = 4
8、利用fseek函数可以实现的操作是()。
改变文件的位置指针
9、不是 E-R 图中基本元素的有()。
A、实体 B、属性 C、联系 D、关系
选择C
错误,应该选D。
10、阅读下面代码,程序会打印出来的值是?
#include <stdio.h>
void f(char**p)
{
*p +=2;
}
main()
{
char *a[] = {"123","abc","456"},**p;
p = a;
f(p);
printf("%s\r\n",*p);
}
*p+=2 -> *p = *p + 2 ,*p指向字符串“123”的第一个元素,所以*p+2指向3。
上一篇: 使用jQuery写插件
下一篇: Python练习题11:汉诺塔实践
推荐阅读