羽隹九日 2023-10-06 20:27 采纳率: 50%
浏览 12
已结题

scanf为什么不能识别多个值?

img

img


本来是很简单的问题,给了公式直接输入变量值就可以算了。
但是我在scanf里直接弄了七个变量之后,就无法识别后面几个变量值,如果分多个scanf识别就可以,这是为什么?

  • 写回答

2条回答 默认 最新

  • 零之18 2023-10-06 23:14
    关注

    在C语言中,scanf 函数是用于从标准输入(通常是键盘)读取输入数据的函数。当你在 scanf 中指定多个变量来接收输入值时,它们之间需要使用空白字符(如空格、制表符或换行符)来分隔输入值。

    如果你在 scanf 中输入了七个变量,但没有适当的分隔字符,scanf 将试图将所有输入值解释为单个变量的值。这可能会导致输入值被错误地分配给变量,或者输入不匹配导致 scanf 函数无法正确工作。

    为了解决这个问题,你可以确保在 scanf 中使用适当的分隔字符,或者使用空格来分隔输入值,以确保每个变量都能正确接收到相应的值。

    例如,假设你有七个整数变量 ag,你可以这样输入并分隔它们:

    scanf("%d %d %d %d %d %d %d", &a, &b, &c, &d, &e, &f, &g);
    

    在这个示例中,空格字符用来分隔不同的整数值,确保每个变量都能正确接收到相应的值。如果你在输入时使用了适当的分隔字符,scanf 将能够正确解析输入并将值分配给相应的变量。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月17日
  • 已采纳回答 10月9日
  • 创建了问题 10月6日

悬赏问题

  • ¥15 python怎么在已有视频文件后添加新帧
  • ¥20 虚幻UE引擎如何让多个同一个蓝图的NPC执行一样的动画,
  • ¥15 fluent里模拟降膜反应的UDF编写
  • ¥15 MYSQL 多表拼接link
  • ¥15 关于某款2.13寸墨水屏的问题
  • ¥15 obsidian的中文层级自动编号
  • ¥15 同一个网口一个电脑连接有网,另一个电脑连接没网
  • ¥15 神经网络模型一直不能上GPU
  • ¥15 pyqt怎么把滑块和输入框相互绑定,求解决!
  • ¥20 wpf datagrid单元闪烁效果失灵