C++ Primer第5版 第一章课后练习答案

合集《C++ Primer第5版》 课后练习答案 - 丸子球球 - 博客园 (cnblogs.com)


练习1.9

#include <iostream>
int main()
{
    int sum = 0, val = 50;
    while (val <= 100) {
        sum += val;
        ++val;
    }
    std::cout << "Sum of 50 to 100 inclusive is " << sum << std::endl;
    return 0;
}



练习1.10

#include <iostream>
int main()
{
    int val = 10;
    while (val >= 0) {
        std::cout << val-- << std::endl;
    }
    return 0;
}




练习1.11

#include <iostream>
int main()
{
    std::cout << "Please enter the two integers" << std::endl;
    int start, end;
//我这里没有对传入格式进行判断,如果大家有需要可以添加这个功能
    std::cin >> start >> end;
    if (start > end) {
        std::swap(start, end);
    }
    while (start <= end) {
        std::cout << start++ << std::endl;
    }
    return 0;
}

练习1.12

for循环将-100到100之间的整数相加,sum终值为0

练习1.13

#include <iostream>
int main()
{
    int sum = 0;
    for (int val = 50; val <= 100; ++val) {
        sum += val;
    }
    std::cout << "Sum of 50 to 100 inclusive is " << sum << std::endl;
    return 0;
}
#include <iostream>
int main()
{
    for (int val = 10; val >= 0; val--) {
    std::cout << val << std::endl;
    }
    return 0;
}
#include <iostream>
int main()
{
    std::cout << "Please enter the two integers" << std::endl;
    int start, end;
//我这里没有对传入格式进行判断,如果大家有需要可以添加这个功能
    std::cin >> start >> end;
    if (start > end) {
        std::swap(start, end);
    }
    for (; start <= end; start++) {
        std::cout << start << std::endl;
    }
    return 0;
}

练习1.14

for循环
  循环控制变量的初始化和修改都放在语句头部分,书写形式较简洁,且适用于循环次数已知的情况。在循环语句中定义一个局部变量,循环结束后,局部变量就被释放了。

while循环
  循环控制变量的初始化一般放在while语句之前,循环控制变量的修改一般放在循环体中,形式上不如for语句简洁,但它比较适用于循环次数不易预知的情况(用某一条件控制循环)

练习1.15


练习1.16

#include <iostream>
int main()
{
    std::cout << "Please enter some integers" << std::endl;
    int sum=0, val=0;
//我这里没有对传入格式进行判断,如果大家有需要可以添加这个功能
    while (std::cin >> val) {
        sum += val;
    }
    std::cout << "Sum of Integers is" << sum << std::endl;
    return 0;
}

练习1.17

如果输入的所有值都是相等的:输入值 occurs 输入次数 times
如果没有重复值:依次输出 输入值 occurs 1 times

练习1.18

visual studio2019环境:
cl /EHsc occurs.cpp
occurs

练习1.19

参考练习1.11

练习1.20

#include <iostream>
#include "Sales_item.h"
int main() {

    Sales_item total;

    while (std::cin >> total) {

        std::cout << "Record:" << total << std::endl;

    }

    return 0;

}

命令行输入
执行文件名 <输入数据所在文件 >写入文件
形似:out_item <data\book_sales >data\outfile

练习1.21

#include <iostream>
#include "Sales_item.h"
int main() {

    Sales_item item1, item2;

    std::cin >> item1 >> item2;

    std::cout << item1 + item2 << std::endl;

    return 0;

}

练习1.22

#include <iostream>
#include "Sales_item.h"
int main()
{
    Sales_item item, sum_item;
    if (std::cin >> sum_item) {
        while (std::cin >> item) {
            sum_item += item;
        }
    }
    std::cout << sum_item << std::endl;
    return 0;
}

练习1.23

#include <iostream>
#include "Sales_item.h"
int main()
{
    Sales_item item1, item2;
    if (std::cin >> item1) {
        int cnt = 1;
        while (std::cin >> item2) {
            if (item1.isbn() == item2.isbn())
                cnt++;
            else {
                std::cout << item1.isbn() << " " << cnt << std::endl;
                cnt = 1;
                item1 = item2;
            }
        }
        std::cout << item1.isbn() << " " << cnt << std::endl;
    }
return 0;
}

练习1.24

命令行代码形似:
add_items <data\book_sales >data\outfile

posted @ 2020-10-14 15:40  丸子球球  阅读(386)  评论(0编辑  收藏  举报