gpt4 book ai didi

C语言,在if-else语句中给char赋值?

转载 作者:行者123 更新时间:2023-11-30 18:37:52 25 4
gpt4 key购买 nike

我正在尝试像这样使用定义

`printf ("1st Account:");
scanf("%i",&AN1);
printf ("Value of 1st Account:");
scanf("%f",&VAN1);
printf ("2nd Account:");
scanf("%i",&AN2);
printf ("Value of 2nd Account:");
scanf("%f",&VAN2);
system("pause");
system("cls");
if (AN1==101)
#define CAN1 "Cash"
else if (AN1==102)
#define CAN1 "Accounts Receivable"
else if (AN1==104)
#define CAN1 "Notes Receivable"`

等等

显然,它不起作用,因为 Define 是针对整个程序的,而不是只在 if 语句中读取。

有人知道如何让它发挥作用吗?我需要稍后显示它,就像这样

`printf ("Your 1st account name is: %s with the value of %.2f.\n",CAN1,VAN1);
printf ("Your 2nd account name is: %s with the value of %.2f.\n",CAN2,VAN2);`

最佳答案

使用变量而不是定义:

 const char *can1 ="unknown";

if (AN1==101)
can1 = "Cash";
else if (AN1==102)
can1 = "Accounts Receivable";
else if (AN1==104)
can1 = "Notes Receivable";

define 在编译时处理,而您的值仅在运行时才知道。

关于C语言,在if-else语句中给char赋值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35536203/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com