C语言-条件运算符输出问题

ClanceyPMRS 2020-06-25 10:49:05
这个程序第十行,我设定的是首先判断a的值是否大于1,是则直接输出a作为b的值,否则再做一次判断,即a的值是否大于等于0,是则输出a的倒数作为b的值,否则输出a的相反数作为b的值。如图,输入x=1,y=10,则运算a的值应为0.4<1,则输出b应为a的倒数,即2.5。但是为什么在调试时b的值直接输出了a的值,而不是a的倒数?
...全文
192 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ClanceyPMRS 2020-06-25
  • 打赏
  • 举报
回复
引用 8 楼 早打大打打核战争 的回复:
a < 1这条件可以去掉

这样也可以!了解了
VS2019还是0.4,怎么改都不行,我猜是编译器出问题了
VC++6.0没有问题,输出2.5
我带上a<1主要是因为避免和前边a>1重叠。
ClanceyPMRS 2020-06-25
  • 打赏
  • 举报
回复
引用 7 楼 ?Victor.?? 的回复:
[quote=引用 6 楼 Clancey P.M.R.S. Yu 的回复:]
[quote=引用 5 楼 ?Victor.?? 的回复:]
奇怪

我用了你的代码还是2.5

b = (a >= 1 ? a : (a >= 0 && a < 1 ? 1 / a : -1 * a));

改成

b = (a >= 1 ? a : (((a >= 0) && (a < 1)) ? (1 / a) : (-1 * a)));

试试呢

还是不行,难不成是编译器问题?
[/quote]

vs吗,我也是呀,2017的

按理说不可能呀[/quote]

啊这,果然编译器有问题,我在虚拟机里跑XP,用VC++6.0最终得到了2.5.......

VS2019可能改了点我不知道的特性吧,我了解下
  • 打赏
  • 举报
回复
a < 1这条件可以去掉
孤远无梦 2020-06-25
  • 打赏
  • 举报
回复
引用 6 楼 Clancey P.M.R.S. Yu 的回复:
[quote=引用 5 楼 ?Victor.?? 的回复:] 奇怪 我用了你的代码还是2.5 b = (a >= 1 ? a : (a >= 0 && a < 1 ? 1 / a : -1 * a)); 改成 b = (a >= 1 ? a : (((a >= 0) && (a < 1)) ? (1 / a) : (-1 * a))); 试试呢
还是不行,难不成是编译器问题? [/quote] vs吗,我也是呀,2017的 按理说不可能呀
ClanceyPMRS 2020-06-25
  • 打赏
  • 举报
回复
引用 5 楼 ?Victor.?? 的回复:
奇怪

我用了你的代码还是2.5

b = (a >= 1 ? a : (a >= 0 && a < 1 ? 1 / a : -1 * a));

改成

b = (a >= 1 ? a : (((a >= 0) && (a < 1)) ? (1 / a) : (-1 * a)));

试试呢

还是不行,难不成是编译器问题?
孤远无梦 2020-06-25
  • 打赏
  • 举报
回复
奇怪 我用了你的代码还是2.5 b = (a >= 1 ? a : (a >= 0 && a < 1 ? 1 / a : -1 * a)); 改成 b = (a >= 1 ? a : (((a >= 0) && (a < 1)) ? (1 / a) : (-1 * a))); 试试呢
ClanceyPMRS 2020-06-25
  • 打赏
  • 举报
回复
引用 1 楼 ?Victor.?? 的回复:
可以把你的代码复制黏贴上来吗?

我得到2.5

#include <stdio.h>
#include <math.h>
#include <stdlib.h>
int main()
{
double x, y, a , b;
printf("Input the value of x,y:");
scanf_s("%lf%lf", &x, &y);
a = (x * 2 + 2) / y;
b=(a >= 1 ? a : (a >= 0 && a < 1 ? 1 / a : -1 * a));
printf("%lf", b);
system("pause");
return 0;
}
孤远无梦 2020-06-25
  • 打赏
  • 举报
回复
可以把你的代码复制黏贴上来吗? 我得到2.5

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧