C++编程练习:薪水计算与字符串操作

版权申诉
1星 1 下载量 182 浏览量 更新于2024-06-19 收藏 749KB PDF 举报
"皮德常C++全套答案.pdf" 在给定的文件中,我们看到了三个不同的编程题目,涉及C++语言的基础知识。下面是对每个题目所涵盖知识点的详细解释: ### 题目1 - 计算薪水总和 这个题目要求计算一个人在一段时期内的薪水,每天的薪水按翻倍计算。程序需要用户输入天数,并进行输入检验确保输入的是大于1的整数。以下是关键知识点: 1. **循环结构**:题目中涉及两个嵌套的`do...while`循环,用于获取有效输入并计算薪水。 2. **变量声明**:包括`int daynum`(天数)和`float daypay, paysum=0`(每天的薪水和薪水总和)。 3. **输入输出**:使用`cin`读取用户输入,`cout`输出结果。注意题目要求输出人民币单位“元”。 4. **条件判断**:检查输入的天数是否大于1,以确保计算的合法性。 5. **数学运算**:每天的薪水是前一天的两倍,这需要使用乘法和累加操作。 6. **格式化输出**:在输出薪水总和时,可能需要考虑如何格式化数字使其符合人民币的表示方式。 ### 题目2 - 字符串操作 题目要求用户输入一个字符串,然后创建一个新的字符串,其中原字符串的偶数位置字符按原顺序放在新字符串的一半位置,奇数位置字符按原顺序放在另一半位置。以下是相关知识点: 1. **字符串数组**:声明两个`char`类型的数组`str1`和`str2`来存储字符串。 2. **函数定义**:`void newstr(char str1[], char str2[])`函数负责处理字符串的转换。 3. **指针操作**:使用指针`p`和`q`遍历字符串,对字符进行复制。 4. **条件判断**:检查字符的位置(奇数或偶数),并决定它在新字符串中的位置。 5. **循环控制**:使用`for`循环遍历字符串,直至结束。 ### 题目3 - 检查回文字符串 这个题目要求编写一个函数`palin()`来检查字符串是否为回文,忽略大小写、空格和标点符号。以下是关键知识点: 1. **函数定义**:定义一个名为`Palin`的函数,接收一个字符数组`a`作为参数,返回一个布尔值表示是否为回文。 2. **输入输出**:在`main`函数中,使用`cin`获取用户输入的字符串,根据`Palin`函数的返回值输出结果。 3. **字符串处理**:在`Palin`函数内部,需要清理字符串,忽略大小写、空格和标点符号,通常可以通过遍历字符串并对每个字符进行处理实现。 4. **比较字符串**:比较字符串的前半部分和后半部分是否相同,以确定是否为回文。 5. **返回值控制**:根据字符串是否为回文,返回`true`或`false`。 6. **条件控制**:在`main`函数中,根据`Palin`函数的返回值决定输出“yes”还是“no”。 这些题目涵盖了C++的基本语法、数据类型、输入输出、循环控制、条件判断、函数使用、字符串操作以及逻辑判断等多个核心概念,适合初学者练习和巩固基础知识。