Jerryzhu 发表于 2017-8-26 16:00:15

S1e5的课后练习题关于宏定义的问题

各位老师;
         我在做第s1e5的练习题 #define F(n) 2*(n+2),不知道如何编写。试过很多次,但是程序输出还是显示错误。

    #include <stdio.h>

#define F(n) 2*(n)

int main()
{
      int n =3+2;
      
      printf("F(n) = %s = %d\n", n);

      return 0;

}

请各位老师帮我看看哪里不对?应该怎么编写!

丶忘却的年少o 发表于 2017-8-26 19:15:19

整个2*(n)加上括号#define F(n) (2*(n)), 还有就是你打印函数里有一个%s和%d,但是你只给了一个变量n,是%s没给还是多大了?
如果解决请点“最佳答案”{:10_303:}

ba21 发表于 2017-8-26 19:26:24

%s 没给值

#include <stdio.h>

#define F(n) 2*(n)

int main()
{
      int n =3+2;
      
      printf("F(n)= %d\n", n);

      return 0;

}

人之初 发表于 2017-8-30 08:54:52

ba21 发表于 2017-8-26 19:26
%s 没给值

#include F (n) 2*(n)是不是应该写成(2*(n))更恰当一些呢?

ba21 发表于 2017-8-30 09:52:41

人之初 发表于 2017-8-30 08:54
#include F (n) 2*(n)是不是应该写成(2*(n))更恰当一些呢?

确实
页: [1]
查看完整版本: S1e5的课后练习题关于宏定义的问题