|
发表于 2023-12-28 14:41:13
|
显示全部楼层
要实现一行输入多个数字,可以使用字符串来接收用户的输入。然后通过字符串分割的方式将数字提取出来进行求和。
以下是一个示例代码:
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- int main() {
- char input[100]; // 用于接收用户输入的字符串
- float sum = 0.0;
-
- printf("请输入数字(以空格或其他分隔符隔开):");
- fgets(input, sizeof(input), stdin); // 从标准输入中读取一行输入
-
- // 使用 strtok 函数分割字符串
- char* token = strtok(input, " \t\n"); // 分割字符串,分隔符包括空格、制表符和换行符
- while (token != NULL) {
- float num = atof(token); // 将提取出的字符串转换为浮点数
- sum += num;
- token = strtok(NULL, " \t\n"); // 继续提取下一个数字
- }
-
- printf("结果是:%.2f\n", sum);
-
- return 0;
- }
复制代码
这个代码通过使用 `fgets` 函数获取用户输入的一行字符串,并使用 `strtok` 函数将字符串分割成多个数字。然后将提取出的字符串转换为浮点数并进行求和。最后输出求和的结果。注意,在编译时需要包含 `<stdlib.h>` 和 `<string.h>` 头文件。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|