东华软件笔试

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
",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
",i,j,k);
	}
	return 0;
}
输出结果:  2  3  3

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

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

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

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



原文地址:https://www.cnblogs.com/lxjshuju/p/6813627.html