首页 > 代码库 > 东华软件笔试

东华软件笔试

1、switch语句运行过程:从第一个匹配条件開始。后边的全部代码都运行,直至结束或遇到 break;

#include<stdio.h>
int main()
{
	int x = 1,a = 0,b = 0;
	switch(x){
	case 0:b++;
	case 1:a++;
	case 2:a++,b++;
	}
	printf("%d %d\n",a,b);
	return 0;
}
输出结果: 2  1


2、逻辑运算符的运算规则:

A && B         当A为真时推断B,当A为假时直接得出最后结果为假。

A || B             当A为假时推断B,当A为真时直接得出最后结果为真。

#include<stdio.h>
int main()
{
	int i = 1, j = 2, k = 3;
	if(i++ == 1 &&(++j == 3 || k++ == 3)){  //k++并为运行
		printf("%d %d %d\n",i,j,k);
	}
	return 0;
}
输出结果:  2  3  3

3、 sizeof()和strlen()的差别

sizeof()     求一个对象所占内存的大小

strlen()     求一个字符数组的长度,遇到 \0 觉得字符串结束,\0 不计入长度

#include<stdio.h>
#include<string.h>
int main()
{
	char a[7] = "a0\0a0\0";
	int x,y;
	x = sizeof(a);
	y = strlen(a);
	printf("%d %d\n",x,y);
	return 0;
}
输出结果:   7  2



东华软件笔试