在c语言中要同时输入两个数且中间有逗号间隔要怎么办
时间: 2024-11-30 12:15:06 浏览: 16
在 C 语言中,标准输入流 `stdin` 或者函数 `scanf()` 可以用来同时读取两个数值,但如果你希望用户输入时使用逗号分隔,那么你需要稍微修改一下输入格式。因为逗号不是有效的数值分隔符,所以你需要先明确告诉用户按照特定的模式输入,例如 "请输入两个数,用空格或换行分隔"。
下面是一个简单的示例,利用 `sscanf()` 函数,假设用户输入的是形如 "num1, num2" 的字符串:
```c
#include <stdio.h>
int main() {
double num1, num2;
char input[20];
printf("请输入两个数,用逗号和空格分隔:");
fgets(input, sizeof(input), stdin); // 使用fgets防止输入过长
// 删除末尾换行符
input[strlen(input) - 1] = '\0';
if (sscanf(input, "%lf,%lf", &num1, &num2) == 2) { // sscanf返回成功读取的字段个数
printf("你输入的第一个数是: %lf\n", num1);
printf("你输入的第二个数是: %lf\n", num2);
} else {
printf("输入错误,请按照要求输入两个数。\n");
}
return 0;
}
```
在这个例子中,用户需要按提示输入像 "5, 7.5" 这样的格式。
阅读全文