关于#c语言#的问题:main(){ int a, b

img

求指导
#include
main()
{
int a, b;
a = 10; b = 5;
{int a = 20;
printf("%d\n",a);
b++;}
printf("%d\n", a);
printf("%d\n", b);
}

为啥输出为20 10 6啊

你想要打印什么样的,{}里面是局部范围。你在{}里面定义的a=20输出20,出了{}后此时a=10,b++变成了6。所以你的屏幕打印20 10 6。以下程序也是打印20 10 6


#include<stdio.h>

int main()
{
    int a = 0;
    int b = 0;
    a = 10;
    b = 5;
    printf("%d\n", a);
    printf("%d\n", b);
    a = 20;
    b++;
    printf("%d\n", a);
    printf("%d\n", b);
    return 0;
}