1.以下程序段的输出结果是()?
int i=9;
printf("%o\n",i);
解析:11
printf 函数是输出函数
一般格式为:
printf (格式控制,输出表列);
而%o 就是格式控制 代表以八进制整数形式输出
9转换为八进制也就是11
2.以下对二维数组 a 的正确说明是()。
- int a[3] []
- float a(3,4)
- double a[1] [4]
- float a(3)(4)
解析:double a[1] [4]
二维数组的定义形式:
类型说明符 数组名 [常量表达式] [常量表达式];
其中行的个数省略而列不行。
a=1;
b=1;
a+=b++;
b+=++a;
请问结果为?
解析:a=3,b=5
翻译一下
a=a+b ; b=b+1; 后执行b++
a=a+1; b=b+a ; 先执行++a
4.有以下程序运行结果为:
#include<iostream>
using namespace std;
char fun(char x, char y) {
if (x < y)
return x;
return y;
}
int main() {
int a = '1', b = '1', c = '2';
cout << fun(fun(a, b), fun(b, c));
return 0;
}
解析:1
字符数据是以ASII码形式存放,所以可以用整数型存储字符型。
5.下列哪种方式可以完成float a与0的比较
解析:fabs(a) < 0.00001f
不会
6.下列程序的输出结果是
main()
{
char p1[15]=“abcd”,*p2=“ABCD”, str[50]=“xyz”;
strcpy(str+2,strcat(p1+2,p2+1));
printf(“%s”,str);
}
解析:xycdBCD
C语言编译系统提供了一些处理字符串的库函数
strcat 两个字符串连接返回第一个的地址
strcp 将第二个字符串复制到第一个中
strcat(cd,BCD);
strcp(abc,cdBCD);
cpy 保留前面的
cat 保留后面的
7.以下运行结果:
for(var i = 0; i < 10; i++) {
setTimeout(function() {
console.log(i);
}, 1000);
}
解析:10个10
8.在小端序的机器中,如果
union X
{
int x;
char y[4];
};
如果
X a;
a.x=0x11223344;//16进制
则:
解析:y[3]=11
9.已知函数 int fun( int i )。以下声明函数指针pfunc的语句正确的是
解析:int(*pfunc)(int);
由于( )优先级大于* 所以函数指针必须有()包括指针;
10.在声明类时,下面的说法正确的是
- 可以在类的声明中给数据成员赋初值(c++11新标准)
- 数据成员的数据类型可以是register
- private、public、protected可以按任意顺序出现
- 没有用private、public、protected定义的数据成员是公有成员
解析:
可以在类的声明中给数据成员赋初值(c++11新标准)
private、public、protected可以按任意顺序出现