C语言程序:求字符串长度与统计大写辅音字母

需积分: 38 4 下载量 136 浏览量 更新于2024-09-13 收藏 19KB PDF 举报
"字符串处理,字符串长度计算,大写辅音字母统计" 在给定的文件中,我们涉及了三个不同的字符串处理问题,主要集中在计算字符串长度和统计大写辅音字母数量上。以下是详细的知识点说明: 1. **字符串长度的计算**: - 在8.1求字符串长度的部分,程序的目的是读取一系列以#为结束符的字符串,直到遇到双#(##)为止。每个字符串的有效长度是指不包括结束符在内的字符数。 - 代码中使用了一个`while`循环来读取输入,`getchar()`函数用于获取单个字符。`oldch`变量用于判断是否遇到了双#,当连续两次读到的字符都是'#'时,结束输入。 - `k`用于跟踪字符串中的字符数,`str`数组存储输入的字符串。在每次读取到字符后,如果该字符不是'#'并且`k`小于`MAXLEN-1`,就将字符添加到`str`中,并更新`k`的值。 - 当读取到字符串的结束符('#')时,`str[k]='\0';`添加空字符作为C语言中的字符串结束标识。然后,通过`printf("%d\n", len);`打印字符串的长度。 2. **大写辅音字母的统计**: - 在8.2统计大写辅音字母的部分,目标是统计每个字符串中除了'A', 'E', 'I', 'O', 'U'之外的大写字母的数量。 - 代码同样使用一个`while`循环读取输入,但是在这个部分,我们需要对每个字符进行检查,看它是否是大写辅音字母。如果满足条件,`count`计数器就会增加。 - 代码中,`if((ch>='B'&&ch<='Z')&&(ch!='E'&&ch!='I'&&ch!='O'&&ch!='U')){count++;}`这一行用于判断字符是否为大写辅音字母。如果满足条件,`count`加一。 - 输入结束后,`printf("%d\n", count);`会输出字符串中大写辅音字母的总数。 3. **查找子串**: - 虽然这个部分没有给出完整的代码,但可以推断出目标是查找每个字符串中某个特定子串出现的次数。这通常涉及到字符串搜索算法,如KMP算法或简单的线性搜索。 这些编程练习有助于提升对C语言字符串处理的理解,包括输入输出、字符判断、字符串长度计算以及字符遍历等基本操作。在实际应用中,这些技能对于处理文本数据和实现各种文本处理功能非常重要。