C++编程:使用字符数组与string类处理字符串

需积分: 0 0 下载量 168 浏览量 更新于2024-08-05 收藏 978KB PDF 举报
"实验2资料-20181" 这篇资料主要涵盖了两个实验,涉及到C++中的字符串处理和格式化输出。实验的核心是利用C++编程语言实现特定的功能,包括处理字符串和进行精度控制的输出。 实验2-1 的目标是创建一个程序,让用户输入他们的名字和朋友的名字,然后打印出生日卡的格式。在这个实验中,关键知识点是字符串的处理。C++中并没有内置的字符串变量,但可以通过两种方式来处理字符串:一是使用字符数组,这是C++第四章的内容;二是使用C++标准库中的`std::string`类,同样在第四章讲解。`std::string`类提供了许多方便的字符串操作,如拼接、查找、截取等。在给出的代码示例中,可以看到如何使用`std::string`来接收用户输入的名字,并输出生日祝福语。 实验2-2 的任务更复杂,需要输入学生的学号、名字和各科成绩,然后计算平均成绩并按照特定格式输出。这里涉及到了几个重要的C++ I/O流库函数和技巧: 1. 学号的存储:由于学号可能超过int类型的存储范围,因此选择使用double类型来存储,尽管学号本质上是整数,但在输出时再转换成整数形式。 2. 输出格式控制: - `ios::left`设置左对齐输出,默认情况下,输出是左对齐的。 - `ios::right`设置右对齐输出,可以通过`setiosflags(ios::right)`来实现。 - `setw(n)`和`cout.width(n)`都可以用来设置输出字段的宽度,实现右对齐效果。 - `fixed`设置浮点数输出固定小数位数。 - `precision(n)`设置输出的精度,例如保留2位小数。 给出的代码片段展示了如何定义变量,获取用户输入,以及如何进行格式化输出平均成绩。 这两个实验都强调了实际编程中的一些常见问题和解决策略,包括字符串操作和I/O流的控制。通过这些练习,学习者可以深化对C++中字符串处理和输出格式化的理解,同时提升编写实际程序的能力。