litengyue 发表于 2023-9-14 20:34:20

一个问题

哪位大佬回答一下我:
在C语言中, 如果用户可能输入两个类型的数据,
并且都要做出反应,
scanf里的类型如何选择?
被赋值的变量该如何定义?

isdkz 发表于 2023-9-14 20:34:28

可以使用 %s 类型来读取用户输入的字符串,然后再根据需要将其转换为相应的类型。例如,如果用户可能输入一个整数和一个浮点数,可以先读取字符串,然后使用 atoi 或 atof 函数将其转换为相应的类型。被赋值的变量应该根据需要定义为 int 或 float 类型。以下是一个示例代码:

#include <stdio.h>
#include <stdlib.h>

int main() {
    char input;
    int num;
    float fnum;

    printf("请输入一个整数:");
    scanf("%s", input);
    num = atoi(input);
    printf("您输入的整数是:%d\n", num);

    printf("请输入一个浮点数:");
    scanf("%s", input);
    fnum = atof(input);
    printf("您输入的浮点数是:%f\n", fnum);

    return 0;
}

litengyue 发表于 2023-9-14 20:39:48

isdkz 发表于 2023-9-14 20:34
可以使用 %s 类型来读取用户输入的字符串,然后再根据需要将其转换为相应的类型。例如,如果用户可能输入一 ...

如果是这样呢:
写一个循环,如果输入整数便打印出来,如果输入字符'q'便推出循环。

人造人 发表于 2023-9-14 21:11:53

litengyue 发表于 2023-9-14 20:39
如果是这样呢:
写一个循环,如果输入整数便打印出来,如果输入字符'q'便推出循环。

页: [1]
查看完整版本: 一个问题