我的代码哪里错啦

来源:5-10 局部与全局

慕少6168890

2020-02-19 11:03

#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;

}


写回答 关注

3回答

  • qq_慕仰8138156
    2020-02-19 15:10:17
    已采纳

    代码没错,但输出的 main方法内:x=50,跟要求不符;

  • 行行复行行
    2020-04-15 11:06:41

    你在if语句中并没有重新定义变量 int x,  而是对mian函数的局部变量x进行了重新赋值, 所以mian方法内输出的值和要求不符了。

  • 努力0拼命
    2020-02-20 11:13:59

    在if判断语句里面,重新定义一个局部变量int x=100,x/=2.这样if里面的执行后这个局部变量就不影响main函数里面的x=10的值

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926028 学习 · 20793 问题

查看课程

相似问题