scanf()实际上是从输入缓冲区中读取数据的.对下面的语句如果输入12.3回车,再看看结果吧!
int i=0,j=0,k=0;
char c1,c2,c3;
scanf("%d",&i);//能接受到的是
12,遇到
.结束语句
scanf("%d",&j);//试图接受但遇到非数字字符
.结束语句
scanf("%d",&k);//试图接受但遇到非数字字符
.结束语句
scanf("%c",&c1);//正常接受
.
scanf("%c",&c2);//接受
3
scanf("%c",&c3);//接受回车
printf("%d---%d---%d---%c---%c---%c---\n",i,j,k,c1,c2,c3);
printf("%d---%d---%d---%d---%d---%d---\n",i,j,k,c1,c2,c3);