首页 > > > C语言 scanf 小结
如果用户输入"1 2",可以正确输入,返回2(正确输入了两个变量);
如果用户输入"1,1",可以正确输入i,无法输入j,返回1(正确输入了一个变量)。
while (scanf("%s %c %c", str, &oldchar, &newchar) == 3) /* 或!= EOF , 但前者更好 */
{
; //处理
}
那是因为如果没空格的话。。。oldchar输入的就是空格了= =.
实例代码
#include<stdio.h>
void main(void)
{
int n = 0;
int i = 0;
int c ;
do{
n = scanf("%d%d",&i,&c);
printf("%d %d %d\n",i,c,n);
}while(n > 0);
}
注意 顺便说一下,printf的返回值是输出的字符数,例如,printf("1234")的返回值是4,而printf("1234\n")的返回值是5。
测试代码
/*************************************************************************
> File Name: scanf.c
> Author:
> Mail:
> Created Time: Wed 14 Nov 2018 08:04:02 PM CST
************************************************************************/
#include<stdio.h>
void main(void)
{
int n = 0;
int i = 0;
char c ;
do{
n = scanf("%d %c",&i,&c);
printf("%d\n",n);
}while(n > 0);
}视频
开始正常输入,后面输入ctrl+dhttps://
原文作者:;如有侵权,请联系管理员删除。