1. 对于以下代码,输出结果是 -1
int main()
{
char ch = -1;
int i = -1;
printf("%x\n", i);
printf("%d\n", ch);//-1
system("pause");
return 0;
}
先扩展为int 那么对应的就是 int类型的 -1; 然后输出
//-1
//8位
//原码1000,0001
//反码1111,1110
//补码1111,1111
//32位
//原码1000,0000 0000,0000 0000,0000 0000,0001
//反码1111,1111 1111,1111 1111,1111 1111,1110
//补码1111,1111 1111,1111 1111,1111 1111,1111
2.以下代码的输出是 9 1 20
int main()
{
int i, x, y;
i = x = y = 0;
do
{
++i;
if (i % 2)
x += i, i++;
y += i++;
} while (i<=7);
printf("%d %d %d", i, x, y);//9 1 20
system("pause");
return 0;
}