C++初学者教程:数组与字符统计

需积分: 5 0 下载量 186 浏览量 更新于2024-07-09 收藏 711KB PPT 举报
"这是一份C++教学资料,主要讲解了函数和数组的相关知识,适合初学者学习。资料中包含了一个程序示例,用于统计输入的字符中特定字母出现的次数,并分析了使用`getchar()`和`getch()`函数在读取字符时的区别。" 在C++编程语言中,函数是组织代码的基本单元,它们可以接受参数并返回值。函数可以帮助我们将大型任务分解为更小、更易于管理的部分,提高代码的可读性和重用性。本资料中的重点是`main()`函数,它是每个C++程序的入口点。 数组是C++中存储同类型数据集合的一种方式。在示例程序中,数组被用来存储输入的字符。例如,`char c`变量用于保存每次读取的字符,而`int nCount`则用于计数已读取的字符总数。 程序首先定义了多个整型变量,如`na`, `ne`, `ni`, `no`, `nu`和`nother`,用于统计大写和小写字母"A", "E", "I", "O", "U"以及非这些字母的其他字符的出现次数。`getchar()`函数用于从标准输入流中读取单个字符,直到用户输入指定数量(由变量`n`控制)的字符并按下回车键。 程序中的条件语句(`if`和`else if`)用于检查读取的字符是否是目标字母,如果是,则相应的计数器增加。然而,程序存在一个问题:在用户输入字符并按下回车之前,`getchar()`不会返回任何结果。这意味着在统计字符时可能会遗漏一个字符,这是因为`getchar()`会在遇到换行符('\n')时才返回上一个字符。 为了对比,资料还给出了另一个程序,它使用`getch()`函数来读取字符。`getch()`函数与`getchar()`不同,它会立即读取并返回用户输入的字符,即使这个字符是换行符。因此,使用`getch()`可以避免因等待回车而导致的字符丢失问题。在这个示例中,`getch()`将字符读入`tmp`数组,直到遇到回车符(`\r`),此时将其替换为字符串结束符`\0`,并终止循环。 这份教学资料通过实例帮助初学者理解C++中的函数和数组操作,以及如何处理用户输入,特别是`getchar()`和`getch()`这两个输入函数的差异。通过学习这部分内容,初学者可以更好地掌握C++中基本的数据结构和输入/输出操作。