Онлайн компилятор C

#include <stdio.h> int main() { int num1,num2,num3,sum; scanf("%d%d%d",&num1,&num2,&num3); sum=num1+num2+num3; printf("sum=%d\n",sum); return 0; }
这段代码的功能是:从用户输入读取三个整数,计算它们的和,然后输出结果。

- 代码中 `scanf` 的格式字符串 `"%d%d%d"` 没有空格,这意味着输入时三个数字必须连续输入(例如 `123`),或者用空白字符(空格、换行、制表符)分隔。但你的写法会导致 `scanf` 将连续的数字视为一个整体,比如输入 `123` 会被当作一个数 `123` 赋给 `num1`,而 `num2` 和 `num3` 会读取失败。你需要考虑如何让 `scanf` 正确区分三个独立的整数。

- 另外,`printf` 输出格式中 `"sum=%d\n"` 缺少一个换行前的空格,但这不是错误,只是输出风格问题。主要问题在于输入格式。