C语言怎么判断输入的是一个空行?

2024-11-25 05:38:15
推荐回答(4个)
回答1:

可以通过gets读入整行数据。

gets的功能是读入一行数液行据,并把换行符替旁烂换成字符串运埋漏结束符,所以如果是空行,那么读到的字符串第一个元素就是结束符。

通过判断gets的结果,即可知道是否为空行。

参考代码如下:

char buf[100];
gets(buf);
if(buf[0] == '\0') printf("是空行\n");

回答2:

scanf("%d",×);
ch=getchar();
我这样写。怎么输入一个数就结束了?
没有执行getchar?

你没执行getchar()是因为scanf在读取的时祥弊候是不读换行符的,也就是你输入结束那个回车,所以这个回车留在了缓冲区中,被接下来的getchar()给读去了,不是他没执行,是没谨搜族按你的想法去执行,你可以再加一个getchar()漏雹验证一下。

回答3:

char buf[256];
scanf("%s", &buf);
int i = 0;
while (i < 256 && buf[i] == ' ') { // 判断一行中蚂昌有吵橡空格的空行
i++;
}
if (buf[i] == '\0') { // 判断指定字符数组闷碰扒索引是否为 null 字符
printf("未输入任何内容!");
} else {
// 处理输入内容
]

回答4:

char c = getchar();
if( c ="" )
printf("空字符");