#include <iostream>
#include <cctype>
#include <array>
#include <string>
#include <fstream>
#include <cstdlib>
using namespace std;
struct bop {
string fullname;
string title;
string bopname;
int preference;
};
struct patron {
string name;
double amount;
};
/*----------------------- exercise 1 -----------------------------*/
//int main(void)
//{
// using namespace std;
//
// char ch;
//
// cout << "Please enter text for analysis, and type @ to terminate input.\n ";
//
// while (cin.get(ch) && ch != '@'){
// if (isalpha(ch)){
// cout << (char)(islower(ch) ? toupper(ch) : tolower(ch)); //字符函数返回的都是int型值
// }
// }
//
// return 0;
//}
/*----------------------- exercise 2 -----------------------------*/
//int main(void)
//{
// using namespace std;
//
// array<double, 10> donation;
// double aver;
// double sum = 0;
// int i = 0;
// int count = 0;
//
// cout << "Please enter up to 10 numbers or type non-numeric to quit ";
//
// while (cin >> donation[i] && i < 10){
// sum += donation[i++];
// }
//
// aver = sum / i;
//
// for (int j = 0; j < i; j++){
// if (donation[j] > aver){
// count++;
// }
// }
// cout << "sum = " << sum << endl;
// cout << "aver = " << aver << endl;
// cout << "There have " << count << " num bigger than aver.\n";
//}
/*----------------------- exercise 3 -----------------------------*/
//int main(void)
//{
// using namespace std;
//
// char ch;
//
// cout << "Please enter one of the following choices:\n"
// << "c) carnivore p) pianist\n"
// << "t) tree g) game\n";
//
// cin.get(ch);
//
// while (ch != 'q'){
// switch (ch){
// case 'c':
// cout << "a maple is a carnivore\n";
// cin.get(); //read the '\n' in input stream
// cin.get(ch);
// break;
// case 'p':
// cout << "a maple is a pianist\n";
// cin.get();
// cin.get(ch);
// break;
// case 't':
// cout << "a maple is a tree\n";
// cin.get();
// cin.get(ch);
// break;
// case 'g':
// cout << "a maple is a game\n";
// cin.get();
// cin.get(ch);
// break;
// default :
// cout << "Please enter a 'c', 'p', 't', 'g':";
// cin.get();
// cin.get(ch);
// break;
// }
// }
//}
/*----------------------- exercise 4 -----------------------------*/
//int main(void)
//{
// using namespace std;
//
// struct bop bop_membs[5] = {
// {"Wimp Macho", "Wimp Macho", "Winp tzw", 0},
// {"Raki Rhodes", "Junior Programmer", "Junior tzw", 1},
// {"Celia Laiter", "MIPS", "MIPS tzw", 1},
// {"Hoppy Hipman", "Analyst Trainee", "Analyst tzw", 2},
// {"Pat Hand", "Loopy", "Looppy tzw", 0}
// };
//
// cout << "Benevolent Order of Programmers Report\n"
// << "a. display by fullname b. display by title\n"
// << "c. display by bopname d. display by preference\n"
// << "q. quit\n";
//
// char ch;
// cout << "Enter your choice: ";
//
// while (cin >> ch){
// switch (ch){
// case 'a':
// for (int i = 0; i < 5; i++){
// cout << bop_membs[i].fullname << endl;
// }
// cout << "Next choice: ";
// break;
// case 'b':
// for (int i = 0; i < 5; i++){
// cout << bop_membs[i].title << endl;
// }
// cout << "Next choice: ";
// break;
// case 'c':
// for (int i = 0; i < 5; i++){
// cout << bop_membs[i].bopname << endl;
// }
// cout << "Next choice: ";
// break;
// case 'd':
// for (int i = 0; i < 5; i++){
// switch (bop_membs[i].preference){
// case 0:
// cout << bop_membs[i].fullname << endl;
// break;
// case 1:
// cout << bop_membs[i].title << endl;
// break;
// case 2:
// cout << bop_membs[i].bopname << endl;
// break;
// default :
// break;
// }
// }
// cout << "Next choice: ";
// break;
// case 'q':
// cout << "Bye!\n";
// break;
// default :
// cout << "Please enter a 'a', 'b', 'c', 'd': ";
// break;
// }
// if (ch == 'q'){
// break;
// }
// }
/*----------------------- exercise 5 -----------------------------*/
//int main(void)
//{
// double income_tax;
// double income;
//
// cout << "Please enter your income: ";
// cin >> income;
//
// while (income >= 0){
// if (income <= 5000){
// income_tax = 0;
// } else if (income <= 15000){
// income_tax = (income - 5000) * 0.10;
// } else if (income <= 35000){
// income_tax = (income - 15000) * 0.15 + 10000 * 0.10;
// } else {
// income_tax = (income - 35000) * 0.20 + 20000 * 0.15 + 10000 * 0.10;
// }
//
// cout << "Your income_tax are " << income_tax << endl;
// cout << "Please enter your income: ";
// cin >> income;
// }
//
// return 0;
//}
/*----------------------- exercise 6 -----------------------------*/
//int main(void)
//{
// int count;
//
// cout << "Please enter the number of donors: ";
// cin >> count;
// const int cnt = count;
// struct patron *ptr = new struct patron [count];
// int i = 0;
//
// while (count){
// cout << "Please enter the name and amount: ";
// cin >> ptr[i].name;
// cin >> ptr[i].amount;
// i++;
// count--;
// }
//
// cout << "Grand Patrons:\n";
// int grand_count = 0;
// for (int i = 0; i < cnt; i++){
// if (ptr[i].amount > 10000){
// cout << ptr[i].name << endl;
// grand_count++;
// }
// }
// if (grand_count == 0){
// cout << "none\n";
// }
//
// cout << "Patrons:\n";
// int patron_count = 0;
// for (int i = 0; i < cnt; i++){
// if (ptr[i].amount <= 10000){
// cout << ptr[i].name << endl;
// patron_count++;
// }
// }
// if (patron_count == 0){
// cout << "none\n";
// }
//
// delete [] ptr;
// return 0;
//}
/*----------------------- exercise 7 -----------------------------*/
//int main(void)
//{
// string word;
// int vowel_count = 0;
// int consonante_count = 0;
// int other_count = 0;
//
// cout << "Enter words (q to quit)\n";
// cin >> word;
// while (word != "q"){
// if (isalpha(word[0])){
// switch (word[0]){
// case 'a':
// case 'e':
// case 'i':
// case 'o':
// case 'u':
// case 'A':
// case 'E':
// case 'I':
// case 'O':
// case 'U':
// vowel_count++;
// break;
// default :
// consonante_count++;
// break;
// }
// } else {
// other_count++;
// }
// cin >> word;
// }
//
// cout << vowel_count << " words beginning with vowels\n";
// cout << consonante_count << " words beginning with consonante\n";
// cout << other_count << " other\n";
//
// return 0;
//}
/*----------------------- exercise 8 -----------------------------*/
//int main(void)
//{
// ifstream fin;
// char ch;
// int count = 0;
// fin.open("testfile");
//
// if (fin.is_open()){
// while (!fin.eof()){
// fin >> ch;
// count++;
// }
//
// cout << "There have " << count << " characters\n";
//
// }
// return 0;
//}
/*----------------------- exercise 9 -----------------------------*/
int main(void)
{
ifstream fin;
struct patron *ptr = new struct patron [10];
int i = 0;
int cnt = 0;
fin.open("testfile");
if (fin.is_open()){
while (fin.good()){
fin >> ptr[i].amount;
fin.get();
getline(fin, ptr[i].name);
cnt++;
i++;
}
cout << "Grand Patrons:\n";
int grand_count = 0;
for (int i = 0; i < cnt; i++){
if (ptr[i].amount > 10000){
cout << ptr[i].name << endl;
grand_count++;
}
}
if (grand_count == 0){
cout << "none\n";
}
cout << "Patrons:\n";
int patron_count = 0;
for (int i = 0; i < cnt; i++){
if (ptr[i].amount <= 10000){
cout << ptr[i].name << endl;
patron_count++;
}
}
if (patron_count == 0){
cout << "none\n";
}
}
fin.close();
return 0;
}
水平有限,错误之处还请指正,谢谢!
转载于:https://blog.51cto.com/longtzw/1213986