本文参考C Primerf Plus进行C语言学习
文章目录
- 使用scanf()
- 从scanf()角度看输入
- 格式字符串中的普通字符
- scanf()的返回值
1.使用scanf()
- 如果用scanf()读取基本变量类型的值,在变量名前加上一个&;
- 如果用scanf()把字符串读入字符数组中,不要使用&。
#include<stdio.h>
int main(void)
{
int age; //变量
float assets; //变量
char pet[30]; //字符数组,用于储存字符串
printf("Enter your age,assets,and favourite pet.\n");
scanf("%d %f",&age,&assets); //这里要使用&
scanf("%s",pet); //字符数组不使用&
printf("%d $%.2 %s\n",age,assets,pet);
return 0;
}
运行结果:
只要在每个输入项之间输入至少一个换行符、空格或制表符即可。
唯一 例外的是%c转换说明。根据%c,scanf()会读取每个字符,包括空白。
scanf()和printf()函数所用的转换说明与printf()函数几乎相同。主要区别是,float类型和double类型,printf()都使用%f、%e、%E、%g和%G转换说明。而scanf()只把它们用于float类型,对于double类型要使用1修饰符。