1.編寫一個c++程序,如下述輸出示例的那樣請求並顯示信息:

What is your first name? Betty Sue

What is your last name? Yewe

What letter grade do you deserve? B

What is your age? 22

Name:Yewe,Betty Sue

Grade:C

Age:22

(注意,該程序應該接受的名字包含多個單詞。另外,程序將向下調整成績,即向上調一個字母。假設用户請求A、B或C,所以不必擔心D和F之間的空檔。)

#include<iostream>
using namespace std;
int main() {
    // 1. 提示接收用户的輸入,名字 string
    string first_name;
    cout << "What is your first name?";
    //cin >> first_name;
    getline(cin, first_name);

    string last_name;
    cout << "What is your last name?";
    //cin >> last_name;
    getline(cin, last_name);

    char grade;
    cout << "What letter grade do you deserve?";
    cin >> grade;

    int age;
    cout << "What is your age?";
    cin >> age;

    // 2. 對 grade + 1
    grade = grade + 1;

    // 3. 輸出
    cout << "Name:" << last_name << "," << first_name << endl;
    cout << "Grade:" << grade << endl;
    cout << "Age:" << age << endl;
    
    return 0;
}
xaye@orange:~/code/dev/14$ ./a.out 
What is your first name?Betty sue
What is your last name?Yewe
What letter grade do you deserve?B
What is your age?22
Name:Yewe,Betty sue
Grade:C
Age:22

2.編寫一個程序,他要求用户首先輸入其名,然後輸入其姓;然後程序使用一個逗號和一個空格將姓和名組合起來,並存儲和顯示結合效果,請使用char數組和

頭文件cstring中的函數。下面是該程序的運行時的情形:

Enter your first name: Flip

Enter your last name: Fleaming

Here's the information in a single string: Fleming, Flip

#include<iostream>

#include<cstring>
using namespace std;

int main() {
    // 1. 接收用户的輸入
    char first_name[10];
    cout << "Enter your first name: ";
    cin >> first_name;

    char last_name[10];
    cout << "Enter your last name: ";
    cin >> last_name;
    
    // 2. 用char數組將姓和名組合起來,中間用逗號和一個空格
    char name[20];
    strcpy(name, last_name);
    strcat(name, ", ");
    strcat(name, first_name);
    
    // 3. 輸出
    cout << "Here's the information in a single string: " << name << endl;
    return 0;
}
xaye@orange:~/code/dev/14$ ./a.out 
Enter your first name: Flip    
Enter your last name: Fleaming
Here's the information in a single string: Fleaming, Flip

3.編寫一個程序,他要求用户首先輸入其名,然後輸入其姓;然後程序使用一個逗號和一個空格將姓和名組合起來,並存儲和顯示結合效果,請使用string對象

和文件string中的函數。下面是該程序的運行時的情形:

Enter your first name: Flip

Enter your last name: Fleaming

Here's the information in a single string: Fleming, Flip

#include<iostream>

#include<cstring>
using namespace std;

int main() {
    // 1. 接收用户的輸入
    string first_name;
    cout << "Enter your first name: ";
    //cin >> first_name;
    getline(cin, first_name);

    string last_name;
    cout << "Enter your last name: ";
    //cin >> last_name;
    getline(cin, last_name);
    
    // 2. 用char數組將姓和名組合起來,中間用逗號和一個空格
    string name = last_name + ", " + first_name;
    
    // 3. 輸出
    cout << "Here's the information in a single string: " << name << endl;
    return 0;
}
xaye@orange:~/code/dev/14$ ./a.out 
Enter your first name: Flip
Enter your last name: Fleaming
Here's the information in a single string: Fleaming, Flip

4.結構CandyBar包含3個成員。第一個成員存儲了糖塊的品牌;第二個成員存儲糖塊的重量(可以有小數);第三個成員存儲了糖的卡路里含量(整數)。請

編寫一個程序,聲明這個結構,創建一個名為snack的CandBar變量,並將其成員分別初始化為“Mocha

Munch”、2.3和350。初始化在聲明snack時進行。最後,程序顯示snack變量的內容。

#include<iostream>
using namespace std;

// 1. 聲明結構體
struct CandyBar {
    string brand;
    double weight; // 一般情況用 double
    unsigned int calorie; // 一般情況用 int , 肯定沒有負數,就用無符號
};

int main() {
    // 2. 創建一個名為 snack 的 CandyBar 變量,初始化聲明snack時進行
    CandyBar snack = {"Mocha Munch", 2.3, 350};

    // 3. 輸出
    cout << "brand: " << snack.brand << endl;
    cout << "weight: " << snack.weight << endl;
    cout << "calorie: " << snack.calorie << endl;
    return 0;
}
xaye@orange:~/code/dev/14$ ./a.out 
brand: Mocha Munch
weight: 2.3
calorie: 350

5.結構CandyBar包含3個成員,如編程練習4所示。請編寫一個程序,創建一個包含3個元素的CandyBar數組,並將他們初始化為所選擇的值,然後顯示每個

結構的內容。

#include<iostream>
using namespace std;
//1.聲明CandyBar結構體
struct CandyBar {
    string brand;
    double weight;//一般情況用double
    unsigned int calorie; //一般情況用int,但是這裏肯定沒有負數,所以就用無符號
};

int main() {
    // 2. 創建一個名為 snack 的 CandyBar 變量,初始化聲明snack時進行
    CandyBar snacks[3] = {{"Mocha Munch1", 2.3, 350},{"Mocha Munch2", 3.3, 450},{"Mocha Munch3", 4.3, 550}};
    

    // 3. 輸出
    cout << "first brand: " << snacks[0].brand << endl;
    cout << "first weight: " << snacks[0].weight << endl;
    cout << "first calorie: " << snacks[0].calorie << endl;

    cout << "***************" << endl;

    cout << "second brand: " << snacks[1].brand << endl;
    cout << "second weight: " << snacks[1].weight << endl;
    cout << "second calorie: " << snacks[1].calorie << endl;

     cout << "***************" << endl;

    cout << "third brand: " << snacks[2].brand << endl;
    cout << "third weight: " << snacks[2].weight << endl;
    cout << "third calorie: " << snacks[2].calorie << endl;
    return 0;
}
xaye@orange:~/code/dev/14$ ./a.out 
first brand: Mocha Munch1
first weight: 2.3
first calorie: 350
***************
second brand: Mocha Munch2
second weight: 3.3
second calorie: 450
***************
third brand: Mocha Munch3
third weight: 4.3
third calorie: 550