c语言作业 输入一串字符,以换行符结束输入,统计其中字符a的个数,在C语言中 先输入一串字符串再计算所有字符的个数...

本文详细解析了gets函数的功能及工作原理,包括如何读取并处理字符串输入,以及通过一个具体的例子展示了如何使用该函数统计字符串中的字符数量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 函数gets的定义如下,当读入一个字符串时,自动将字符串末尾的换行符替换为字符'\0',所以判断字符数组是否读完,应判断当前字符是否等于'\0'

char *gets(char *s)

gets 函数把下一个输入行读入到数组s 中,并把末尾的换行字符替换为字符‘\0’。它返回数组s。

2. 你使用char a[200]={0};实际上是将字符数组中每个字符都初始化为'\0',所以后面while判断的时候应该使用是否等于'\0'进行判断。注:和1有点重复了。

3. 楼上提到的,定义字符数组200是有200个元素,而访问的时候,下表是0~199。

代码如下,你看看:

#include

main()

{

int i = 0, j = 0;

char a[200] = {0};

printf("请输入一串字符串: ");

gets(a);

printf("\n");

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

printf("\n");

while (a[j] != '\0')

{

if ((a[j] >= 'a' && a[j] <= 'z') || (a[j] >= 'A' && a[j] <= 'Z')) i++;

else if (a[j] >= '0'&&a[j]<='9') i++;

else if (a[j] == ' ') i++;

j++;

}

printf("您一共输入了%d个数\n", i);

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值