在C语言中,输入语句主要通过`scanf`函数来实现,其基本格式为:
```c
scanf("%格式控制符", &输入变量名);
```
其中,`格式控制符`用于指定输入数据的类型和格式,而`&输入变量名`则是输入数据存储的位置,可以是一个变量名,也可以是数组名等。
1. `%c`:读取一个字符。
2. `%d`:读取一个整数。
3. `%f`:读取一个浮点数。
4. `%lf`:读取一个双精度浮点数。
5. `%s`:读取一个字符串,直到遇到空白字符(空格、制表符或换行符)为止。
示例
1. 读取一个字符:
```c
char ch;
printf("Please input a character: ");
scanf("%c", &ch);
printf("You input: %c\n", ch);
```
2. 读取一个整数:
```c
int num;
printf("Please input a number: ");
scanf("%d", &num);
printf("You input: %d\n", num);
```
3. 读取一个浮点数:
```c
float num1;
double num2;
printf("Please input a float number: ");
scanf("%f", &num1);
printf("Please input a double number: ");
scanf("%lf", &num2);
printf("You input: %f, %lf\n", num1, num2);
```
4. 读取多个整数:
```c
int i1, i2;
printf("Please input two integers: ");
scanf("%d%d", &i1, &i2);
printf("You input: %d, %d\n", i1, i2);
```
5. 读取多个浮点数:
```c
float f1, f2;
printf("Please input two float numbers: ");
scanf("%f%f", &f1, &f2);
printf("You input: %f, %f\n", f1, f2);
```
注意事项
`scanf`函数在读取输入时会自动跳过空白字符(空格、制表符和换行符)。
如果需要读取包含空白字符的字符串,可以使用`gets`函数,但`gets`函数已被认为是不安全的,因为它不检查缓冲区溢出。建议使用`fgets`函数代替。
其他输入函数
除了`scanf`,C语言还提供了其他一些输入函数,如`getchar`和`putchar`用于逐个字符的输入和输出,`gets`和`puts`用于读取和输出整行字符串。