当前位置: 首页 > news >正文

C++Primerplus编程练习 第六章

第六章

1

在这里插入图片描述

#include <iostream>
#include <cctype>
#include <cstring>
int main()
{using namespace std;char result[50];cout << "请输入内容:"<<endl;int i=0;while((result[i]=cin.get())!='@'){                                           if(isdigit(result[i])){continue;}   if(islower(result[i])){result[i]=toupper(result[i]);}   else{result[i]=tolower(result[i]);}   i++;}   result[i]='\0';cout << "\n" <<result<<endl;return 0;
}

2

在这里插入图片描述

#include <iostream>
int main()
{const int MAX =10;using namespace std;double donation[MAX];cout << "请输入donation值: "<<endl;int i=0;while(i<MAX && cin>>donation[i]){i++;}   double ave = 0;for(int j=0;j<i;j++){ave+=donation[j];}   ave = ave/i;int n =0 ;for(int j=0;j<i;j++){if(donation[j]>ave){                                                     n++;}   }   cout << "平均数为 " << ave << " 共有 " <<n<<" 个数大于平均数"<<endl;return 0;
}

3

在这里插入图片描述

#include <iostream>int main()
{using namespace std;cout << "Please enter one of the following choices: "<<endl<<"c) carnivore"<<"\tp) pianist"<<endl<<"t) tree" << " \tg) game"<<endl;char input;cin >> input;bool flag=true;while(flag){switch(input){case 'c':cout<<"carnivore get"<<endl;break;case 'p':cout<<"pianist get"<<endl;break;case 't':cout<<"A maple is a tree"<<endl;break;case 'g':cout<<"game get"<<endl;break;default:cout<<"Please enter a c, p, t, or g: ";cin>>input;continue;                                                        }   flag=false;}   return 0;
}

4

在这里插入图片描述
在这里插入图片描述

#include <iostream>
const int strsize = 50; 
struct bop{char fullname[strsize];                                                      char title[strsize];char bopname[strsize];int preference;
};
using namespace std;
void printBop(const bop* member, int size,int choice){for(int i=0;i<size;i++){int check=choice;if(choice==-1){check = member[i].preference;}   switch(check){case 0:cout<<member[i].fullname<<endl;break;case 1:cout<<member[i].title<<endl;break;case 2:cout<<member[i].bopname<<endl;break;}   }   
}
int main()
{const int MEMBERNUM=5;                                                       bop member[MEMBERNUM]{{"Wimp Macho","job title","WM",0},{"Raki Rhodes","Junior Programmer","RR",1},{"Celia Laiter","job title","MIPS",2},{"Hoppy Hipman","Analyst Trainee","HH",1},{"Pat Hand","job title","LOOPY",2}};cout << "Benevolent Order of Programmers Report"<<endl<<"a. display by name "<<"\tb. display by title" <<endl<<"c. display by bopname "<<"\td. display by preference"<<endl<<"q. quit"<<endl<<"Enter your choice: ";char choice;cin >> choice;while(choice!='q'){switch(choice){case 'a':printBop(member,MEMBERNUM,0);break;case 'b':printBop(member,MEMBERNUM,1);break;case 'c':printBop(member,MEMBERNUM,2);break;case 'd':printBop(member,MEMBERNUM,-1);break;default: cout<<"Enter your right choice: ";cin>>choice;continue;}cout<<"Next choice: ";cin>>choice;}cout<<"Bye!"<<endl;return 0;
}

5

在这里插入图片描述

#include <iostream>int main()
{using namespace std;const double LV_1_RATE=0.1;const double LV_2_RATE=0.15;const double LV_3_RATE=0.20;                                           double income=0;cout << "请输入你的收入计算个人所得税: ";while(cin>>income && income>0){double tax;cout << "收入为 " << income << " tvarps时,所得税为 ";if(income <= 5000){tax =0; }else if(income >5000 && income <=15000){tax = (income-5000)*0.1;}else if(income > 15000 && income <= 35000){tax = 10000*LV_1_RATE+(income-15000)*LV_2_RATE;}else{tax = 10000*LV_1_RATE+20000*LV_2_RATE+(income-35000)*LV_3_RATE;}   cout << tax << " tvarps " <<endl;cout << "请继续输入:" ;}   cout << "结束计算\n";return 0;
}

6

在这里插入图片描述

#include <iostream>
using namespace std;
struct Patron{string name;double fund;
};
int main()
{int numOfPatron;string grandPatrons;string normalPatrons;cout << "请输入捐款者的数目: ";(cin >> numOfPatron).get();Patron* patrons = new Patron[numOfPatron];for(int i=0;i<numOfPatron;i++){cout << "请输入捐款者的姓名: ";getline(cin,patrons[i].name);cout << "请输入捐款的数目: ";cin >> patrons[i].fund;cin.get();}   cout << "Grand Patrons: ";for(int i=0;i<numOfPatron;i++){if(patrons[i].fund > 10000){cout << patrons[i].name << ' '<<patrons[i].fund << ' ';}   }                                                                      cout << endl << "Patrons: ";for(int i=0;i<numOfPatron;i++){if(patrons[i].fund <= 10000){cout << patrons[i].name << ' '<<patrons[i].fund << ' ';}}cout << endl;return 0;
}

7

在这里插入图片描述

#include <iostream>
#include <cctype>
int main()
{using namespace std;int Vowel=0;int Consonant=0;int other=0;string word;cout << "Enter words (q to quit): "<<endl;while(cin>>word && word!="q"){char letter=word[0];if(isalpha(letter)){letter = tolower(letter);if(letter=='a'||letter=='e'||letter=='i'||letter=='o'||letter=='u'){Vowel++;}   else{Consonant++;}   }   else{other++;}   }   cout << Vowel << " words begining with vowels\n"<< Consonant << " words begining with consonants\n"  << other << " others\n"<<endl;return 0;
}

8

在这里插入图片描述

// file.txt
hello hi  
This is my first attempt to write code for file input
bueryi *** 
end ! QAQ 
#include <iostream>
#include <fstream>
int main()
{using namespace std;ifstream inFile;inFile.open("file.txt");char letter;int num=0;while(inFile >> letter){num++;}   inFile.close();                                                        cout << "共有 " << num << " 个字符"<<endl;return 0;
}

9

在这里插入图片描述

// donate.txt
4
Sam Stone
2000
Freida Flass
100500
Tammy Tubbs
5000
Rich Raptor
55000   
#include <iostream>
#include <fstream>
using namespace std;                                                       
struct Patron{string name;double fund;
};
int main()
{int numOfPatron;string grandPatrons;string normalPatrons;ifstream inFile;inFile.open("donate.txt");(inFile >> numOfPatron).get();Patron* patrons = new Patron[numOfPatron];for(int i=0;i<numOfPatron;i++){getline(inFile,patrons[i].name);inFile >> patrons[i].fund;inFile.get();}   cout << "Grand Patrons: ";for(int i=0;i<numOfPatron;i++){if(patrons[i].fund > 10000){cout << patrons[i].name << ' '<<patrons[i].fund << ' ';}   }   cout << endl << "Patrons: ";for(int i=0;i<numOfPatron;i++){if(patrons[i].fund <= 10000){cout << patrons[i].name << ' '<<patrons[i].fund << ' ';}}cout << endl;return 0;
}
http://www.xdnf.cn/news/366445.html

相关文章:

  • 操作系统 == 内存管理
  • postgresql 参数wal_level
  • 【计算机网络-数据链路层】以太网、MAC地址、MTU与ARP协议
  • 7:点云处理—眼在手外标定
  • Grafana v10.1.5 升级至最新v12.0.0
  • 18.模方ModelFun设置教程
  • CSdiy java 07
  • GET请求如何传复杂数组参数
  • uniapp 和 webview 之间的通信
  • 上班摸鱼远程打游戏,哪款远控软件好用点?
  • 服务逃生(隐藏)-困难-其他,排序
  • 【Java基础】——集合篇
  • 使用Tomcat部署war包查看内存使用情况
  • 【0-3h PN相关2】GNSS天顶总延迟数据同化对意大利短期水汽和降水预报影响的研究
  • c++:编译链接过程
  • 40-算法打卡-二叉树-深度优先(前、中、后序遍历)-递归遍历-第四十天
  • Langchain、RAG、Agent相关
  • 【MyBatis-6】MyBatis动态SQL:灵活构建高效数据库查询的艺术
  • AI融合SEO关键词智能优化
  • 三轴云台之视觉跟踪系统篇
  • 算法设计与分析复习代码(hnust)
  • 聊一部很癫的电影
  • 数据结构与算法分析实验10 实现最短路径算法
  • Linux——多线程
  • 前端常见七种报错类型及解决方案
  • Linux vi/vim编辑器常用命令
  • 多分类问题softmax传递函数+交叉熵损失
  • 嵌入式学习笔记 - 关于结构体成员地址对齐问题
  • Edu教育邮箱申请成功下号
  • Knife4j文档的会被全局异常处理器拦截的问题解决