Canly 发表于 2020-7-14 18:47:47

课后作业~

关于#define

#include <stdio.h>

#define MONEY 4000000

int main()
{
       
   
        int count = 0;
       
        while( MONEY >= 0)
        {
               MONEY =MONEY - 500000;
               MONEY =MONEY + MONEY * 0.08;
                  count = count +1;
        }
       
        printf("需要%d\n年", count);
       
        return 0;
}











#include <stdio.h>

int main()
{
       
    int MONEY = 4000000;
        int count = 0;
       
        while( MONEY >= 0)
        {
               MONEY =MONEY - 500000;
               MONEY =MONEY + MONEY * 0.08;
                  count = count +1;
        }
       
        printf("需要%d\n年", count);
       
        return 0;
}





#define 不是相当于赋值的意思吗为什么我第一个式子在上面先写上 然后下面就运行不了了 必须要在里面赋值呢...

liuzhengyuan 发表于 2020-7-14 18:51:38

本帖最后由 liuzhengyuan 于 2020-7-14 18:53 编辑


define 它做不到变量的作用
它只是一个替换,把所有MONEY 替换成数字40000000

然后你的while 循环会被c 语言替换成
while(4000000 >= 0)永远死循环
页: [1]
查看完整版本: 课后作业~