在VS2019中if 语句的条件没用。求解答。

比目XN 2019-10-11 02:59:08
#include"stdio.h"
int main()
{
int n, m, num;
printf("键入两个数:");
scanf_s("%d,%d", &n, &m);
num = n;

if(n>m) printf("%d\n", num + 1);

else printf("%d\n", n * m);
return 0;
}
结果:

键入两个数:2,3
...全文
1252 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
潇湘游子 2020-04-24
  • 打赏
  • 举报
回复
问题可能出现在你的 输入语句 scanf_s("%d,%d", &n, &m); 的两个分好之间的逗号,跟你在黑框框输入的时候的逗号不一致,逗号有两种,一种是英文下的逗号,一种是中文下的逗号。所以,要确保这两个逗号是同一种,最好都使用英文下的逗号。 所以,建议你把逗号都确保是英文下的逗号,在调试。 或者,把逗号去掉,改成空格,是最好的。 输入语句改成:scanf_s("%d %d", &n, &m); 然后黑框框,输入的时候输入:2 空格 3回车。试试!
gtergt 2020-04-23
  • 打赏
  • 举报
回复
scanf_s("%d,%d")两个%d之间的逗号如果用的是英文的话 在输入时 也要用英文逗号
赵4老师 2019-10-12
  • 打赏
  • 举报
回复
请判断scanf_s函数的返回值。
比目XN 2019-10-11
  • 打赏
  • 举报
回复
引用 2 楼 自信男孩的回复:
建议在scanf_s下加一条语句打印出n, m的值,然后根据结果看一下是否是你想要的输入或者和你的输入是否一致
还真不是我所输入的值。但这要怎样解决呢?
比目XN 2019-10-11
  • 打赏
  • 举报
回复
引用 1 楼 赵4老师的回复:
全角逗号和半角逗号不是一回事。
那么程序也就运行不了。我的问题主要就是:在我键入2和3两个数之后,去判断if语句,n<m的它应该执行的是else,但它执行的却是n>m的。
比目XN 2019-10-11
  • 打赏
  • 举报
回复
引用 1 楼 赵4老师的回复:
全角逗号和半角逗号不是一回事。
你没看清楚吧!全部都是半角逗号。如果出现全角逗号的话会报错的。
自信男孩 2019-10-11
  • 打赏
  • 举报
回复
建议在scanf_s下加一条语句打印出n, m的值,然后根据结果看一下是否是你想要的输入或者和你的输入是否一致
赵4老师 2019-10-11
  • 打赏
  • 举报
回复
全角逗号和半角逗号不是一回事。

70,023

社区成员

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

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