问答详情
源自:5-10 局部与全局

输出错了,为什么?

#include <stdio.h>

int x = 77;

void fn1()

{

    printf("fn1(): x=%d\n", x);       

}

int main()

{

    int x = 10;

    if(x>0)

    {

        x = 100;

        x /= 2;

        printf("if语句内, x=%d\n", x);       

    }

    printf("main方法内, x=%d\n", x);

    fn1();

    return 0;

}


提问者:林幕 2019-07-05 12:27

个回答

  • 心灵至善美
    2019-07-24 09:27:57

    因为在if里x被赋予的量变了,只需在printf("main方法内,x=%d\n",x);前加一个x=10;就可以了

  • weixin_慕村0558235
    2019-07-05 14:39:32

    if 里面 x=100,前面需要加int