C语言如何控制多数值的输⼊?

一、问题

        在程序开发中,有时需要设计⼀个⼀次输⼊多个数值的模块,那么如何控制呢?

二、解答

        scanf()函数⼀次可以输⼊⼀个数值,也可以输⼊多个数值,⽽且多个数值类型可以相同,也可以不相同。⽤ scanf()输⼊的多个数据之间⽤C语⾔标准分隔符分开。

        标准分隔符包括以下3个:空格、Enter键、Tab 键。例如:

scanf("%d%d",&a,&b);

为a,b输⼊10 和20时,可以有以下⼏种输⼊⽅法。

第一种:

10 20            //(空格)

第二种:

10

20              //(Enter键)

第三种:

10    20        //(Tab键)

        标准分隔符的个数可以是多个,也可以混⽤。例如,上⾯空格可以是3个,也可以是 5个,还可以输⼊⼏个空格后再输⼊⼏个回车。

        这是在 scanf()的双引号中只有格式说明符的情况,如果还有其他字符呢?

        输⼊⽅式是 scanf()语句中有什么,执⾏时就输⼊什么,或称“格式声明符之外的其他字符输⼊时直接输⼊”。

例如:

scanf("%d,%d");    //此时就输⼊10,20。

如果输⼊数据中包含字符型,那么字符型输⼊时不⽤分隔符。

例如:

#include 
int main()
{
    int a, b;
    char c;
    scanf("%d%c%d", &a, &c, &b);
    printf("a=%d,b=%d,c=%c\n", a, b, c);
    return 0;
}

输⼊10x20 结果是:

10x20
a=10,b=20,c=x

//a 的值是 10,b的值是20,c的值是字母x

输⼊10 20结果是: 

10 20
a=10,b=20,c= 

//结果c的值就是空格。

 三、总结

        以上规则可以保证输⼊多个数的控制。

你可能感兴趣的:(C语言,c语言,开发语言,算法)