C语言中fgets函数

以之前做的一道题为例

 

适合使用 while 循环的场景

未知次数的迭代:

当你需要根据某个条件来决定是否继续循环,而这个条件可能在循环开始前是未知的,这时适合使用 while 循环。

编写一个程序:读取用户输入直到用户输入特定值(如“exit”)。

#include <stdio.h>

#include <stdlib.h>

#include <string.h>//strcmp函数头文件 

 

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

 

int main(int argc, char *argv[]) {

char a[100];//假设输入不超过99个字符 

printf("请输入内容:");

scanf("%s",a);//正确读入数组 

while(1)//无限循环,直到遇到break语句 

{

fgets(a, sizeof(a), stdin);//读取内容后,处理完进行下一轮的读取

if(strcmp(a,"exit")==0)//对比两个字符串,判断是否是exit 

{

break;

}

else

{

printf("你输入的内容是:%s\n",a);

}

}

return 0;

}

以上是小编自己写的程序,作为一个初学者进行了多次修改,让我意识到fgets函数的一些优点。

fgets函数能安全地读取包含空格的字符串,防止缓冲区溢出

 fgets 按行读取数据,遇到换行符 '\n' 或文件结束符 EOF 时停止读取,将读取的内容包括 '\n' 存入指定数组。这便于处理文本文件中以行为单位的数据。

 

 

 

 

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值