C++ Primer Plus 第6版 中文版 第5章编程练习

1、

#include <iostream>

using namespace std;

int main()
{
    int min, max, sum=0;

    cout << "Enter min number: ";
    cin >> min;
    cout << "Enter max number: ";
    cin >> max;

    for(int i=min; i<=max; i++)
        sum += i;

    cout << "Sum between " << min
         << " and " << max << " is "
         << sum << endl;

    return 0;
}

2、

#include <iostream>
#include <array>
 
using namespace std;
 
const int ArSize = 101;
 
int main()
{
    array<long double, ArSize> arr;
    arr[0] = arr[1] = 1L;
    for(int i=2; i<ArSize; i++)
        arr[i] = i*arr[i-1];
    for(int i=0; i<ArSize; i++)
        cout << i << "! = " << arr[i] << endl;
 
    return 0;
}

3、

#include <iostream>
 
using namespace std;
 
int main()
{
    int sum=0, num;
 
    cin >> num;
 
    while(num != 0)
    {
        sum += num;
        cin >> num;
    }
 
    cout << "Sum is " << sum << endl;
 
    return 0;
}

4、

#include <iostream>
 
using namespace std;
 
int main()
{
    double sumDaphne = 100;
    double sumCleo = 100;
    int i = 0;
 
    while(sumCleo <= sumDaphne)
    {
        sumDaphne += 10;
        sumCleo += sumCleo*0.05;
        i++;
    }
 
    cout << "After " << i << " years, sumCleo is bigger than sumDaphne." << endl;
    cout << "sumCleo = " << sumCleo << ", sumDaphne = " << sumDaphne << endl;
 
    return 0;
}

5、

#include <iostream>
 
using namespace std;
 
const int MON = 12;
 
int main()
{
    const char * monthes[MON] = {
        "Jan", "Feb", "Mar", "Apr",
        "May", "Jun", "Jul", "Aug",
        "Sep", "Oct", "Nov", "Dec"
    };
 
    int arr[MON] = {0};
    int sum = 0;
 
    for(int i=0; i<12; i++)
    {
        cout << monthes[i] << " sales are: ";
        cin >> arr[i];
        sum += arr[i];
    }
 
    cout << "Sum is " << sum << endl;
 
    return 0;
}
 
 

6、

#include <iostream>
 
using namespace std;
 
const int MON = 12;
 
int main()
{
    const char * monthes[MON] = {
        "Jan", "Feb", "Mar", "Apr",
        "May", "Jun", "Jul", "Aug",
        "Sep", "Oct", "Nov", "Dec"
    };
 
    int arr[3][MON] = {0};
    long sum = 0;
 
    for(int i=0; i<3; i++)
    {
        cout << "The " << (i+1) << " year:" << endl;
        for(int j=0; j<12; j++)
        {
            cout << "\t" << monthes[j] << ": ";
            cin >> arr[i][j];
            sum += arr[i][j];
        }
        cout << endl;
    }
 
    cout << "Sum is " << sum << endl;
 
    return 0;
}

7、

#include <iostream>
 
using namespace std;
 
typedef struct {
    char maker[100];
    int year;
}Car;
 
int main()
{
    int carNumber;
 
    cout << "How many cars do you wish to catalog?";
    cin >> carNumber;
 
    Car *pCar = new Car[carNumber];
 
    for(int i=0; i<carNumber; i++)
    {
        cin.get();
        cout << "Car #" << (i+1) << ":" << endl;
        cout << "Please enter the make: ";
        cin.getline(pCar[i].maker, 100);
        cout << "Please enter the year made: ";
        cin >> pCar[i].year;
    }
 
    cout << "Here is your collection:" << endl;
 
    for(int i=0; i<carNumber; i++)
    {
        cout << pCar[i].year << " " << pCar[i].maker << endl;
    }
 
    delete [] pCar;
 
    return 0;
}

8、

#include <iostream>
#include <cstring>
 
using namespace std;
 
int main()
{
    char word[100];
    int number = 0;
 
    cout << "Enter words (to stop, type the word done):" << endl;
    cin >> word;
 
    while(strcmp(word, "done"))
    {
        ++number;
        cin >> word;
    }
 
    cout << "You entered a total of " << number << " words.";
 
    return 0;
}

9、

#include <iostream>
#include <string>
 
using namespace std;
 
int main()
{
    string word;
    int number = 0;
 
    cout << "Enter words (to stop, type the word done):" << endl;
    cin >> word;
 
    while(word != "done")
    {
        ++number;
        cin >> word;
    }
 
    cout << "You entered a total of " << number << " words.";
 
    return 0;
}

10、

#include <iostream>
 
using namespace std;
 
int main()
{
    int rows = 0;
 
    cout << "Enter number of rows: ";
    cin >> rows;
 
    for(int i=1; i<=rows; i++)
    {
        for(int j=1; j<=rows; j++)
        {
            if(j < (rows-i+1))
                cout << ".";
            else
                cout << "*";
        }
        cout << endl;
    }
 
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值