5.6两个数相加

 int add(int a, int b) {return a + b;
}

5.7两个数相加

 #include<iostream>
using namespace std;
int add(int a, int b);
int main()
{int a,b;cout << "enter two numbers" << endl;cin >> a >> b;cout << a<<"+"<<b<<"="<<add(a,b) << endl;return 0;
}
int add(int a, int b) {return a + b;
}

5.8倒三角

 void print(char a) {int n = 9;for (int i = 0; i <= 4; i++)//控制行数{for (int k = 0; k < i; k++)//输出空格{cout << " ";}for (int j = n; j > 0; j--)//输出*号{cout << a;}n -= 2;cout << endl;}return;
}

5.9三个倒三角

 #include<iostream>
using namespace std;
void print(char a);
int main()
{char a,b,c;cout << "enter a char" << endl;cin >> a>>b>>c;print(a);print(b);print(c);return 0;
}
void print(char a) {int n = 9;for (int i = 0; i <= 4; i++)//控制行数{for (int k = 0; k < i; k++)//输出空格{cout << " ";}for (int j = n; j > 0; j--)//输出*号{cout << a;}n -= 2;cout << endl;}return;
}

5.10面积

 float area(float wid, float hei)
{return wid * hei;
}

5.11分离整数小数部分(改变原数据)

 #include<iostream>
using namespace std;
int intfrac(float &var) {int a = var;var -= a;return a;
}
int main() {float var;int intnum;cout << "enter a float number" << endl;cin >> var;intnum = intfrac(var);cout << "整数部分:" << intnum << endl;cout << "小数部分:" << var << endl;return 0;
}

5.11分离整数小数部分(不改变原数据)

 #include<iostream>
using namespace std;
int intfrac(float var) {int a = var;var -= a;return a;
}
int main() {float var;int intnum;cout << "enter a float number" << endl;cin >> var;intnum = intfrac(var);cout << "整数部分:" << intnum << endl;cout << "小数部分:" << var-intnum << endl;return 0;
}

5.12输入输出学生信息

 #include<iostream>
#include<iomanip>
using namespace std;
struct student
{char name[20];int num;char sex[5];int age;
};
void InFromKeyB(student &student) {cout << "enter the studen's name" << endl;cin >> student.name;cout << "enter the studen's number" << endl;cin >> student.num;cout << "enter the studen's sex" << endl;cin >> student.sex;cout << "enter the studen's age" << endl;cin >> student.age;
}
int main() {int n = 10;student student[10];for (int i = 0; i < n; i++){InFromKeyB(student[i]);}cout << "      姓名" << "     学号" << "        性别" << "       年龄" << endl;for (int i = 0; i < n; i++)cout << setw(10) << student[i].name << setw(10) << student[i].num << setw(10)<< student[i].sex << setw(10) << student[i].age << endl;return 0;
}

5.14递归逆序输出

 #include<iostream>
using namespace std;
void outbackform(int n) {int a;if (n!=0){a = n % 10;cout << a;n = n / 10;outbackform(n);}
}
int main() {int n;cout <<"enter a number:";cin >> n;outbackform(n);return 0;
}

5.15递归求最大公约数

 #include<iostream>
using namespace std;
int Gcd(int X,int Y) {if (Y == 0)return X;else{return Gcd(Y,X%Y);}
}
int main() {int x,y;cout <<"enter two numbers:";cin >> x>>y;cout<<x<<" 和 "<<y<<" 的最大公约数为:"<<Gcd(x,y)<<endl;return 0;
}

5.16连接字符串(指针)版本一

 #include<iostream>
using namespace std;
void strcon(char *sp1,char *sp2) {int len = strlen(sp1);char* spt = sp1 + len;//找到sp1的最后位置while (*sp2){*spt = *sp2;spt++;sp2++;}*spt = '\0';//用指针字符串别忘了
}
int main() {char sp1[50], sp2[50];cout <<"enter two strings:"<<endl;cin >> sp1>>sp2;strcon(sp1, sp2);cout<<sp1<<endl;return 0;
}

5.16连接字符串(库)版本二

 #include<iostream>
#include<string>
using namespace std;
int main() {string s1, s2;cout <<"enter two strings:"<<endl;cin >> s1>>s2;s1.append(s2);cout<<s1<<endl;return 0;
}

5.17逆序排序字符串

 #include<iostream>
using namespace std;
void strbac(char* sp) {int len = strlen(sp);char temp;char* spt;spt = sp + len - 1;//找到sp的最后元素地址while (spt>sp){temp = *sp;*sp = *spt;*spt = temp;sp++;spt--;}
}
int main() {char sp[80];cout << "enter a string:" << endl;cin >> sp;strbac(sp);cout << sp << endl;return 0;
}

5.20函数指针调用

 #include<iostream>
int add(int a, int b) {return a + b;
}
using namespace std;
int main() {int (*p)(int, int);p = add;int a, b;cout << "enter two numbers" << endl;cin >> a >> b;cout << a << "+" << b << "=" << (*p)(a, b) << endl;return 0;
}

5.21函数重载

 #include<iostream>
using namespace std;
int Add(int a, int b) {return a + b;
}
float Add(float a, float b) {return a + b;
}
double Add(double a, double b) {return a + b;
}
int main() {int a=2, b=3;float c = 1.121, d = 1.23;double f = 23.324, g = 23.232;cout << a << "+" << b << "=" << Add(a, b) << endl;cout << c << "+" << d << "=" << Add(c, d) << endl;cout << f << "+" << g << "=" << Add(f, g) << endl;return 0;
}

5.22模板函数

 #include<iostream>
using namespace std;
template<class T>
T Add(T a, T b) {return a + b;
}
int main() {int a=2, b=3;float c = 1.121, d = 1.23;double f = 23.324, g = 23.232;cout << a << "+" << b << "=" << Add<int>(a, b) << endl;cout << c << "+" << d << "=" << Add<float>(c, d) << endl;cout << f << "+" << g << "=" << Add<double>(f, g) << endl;return 0;
}

面向对象程序设计c++版董正言张聪课本课后习题答案第五章相关推荐

  1. 面向对象程序设计c++版董正言张聪课本课后习题答案第三章

    3.1判断大小写字母 #include <iostream> using namespace std; int main() {char ch;cout << "en ...

  2. 面向对象程序设计c++版董正言张聪课本课后习题答案第六章

    6.5雇员信息 #include<iostream> using namespace std; class employee {public:void setname(char* na); ...

  3. 面向对象程序设计c++版董正言张聪课本课后习题答案第四章

    4.1找出一维数组中的最大值 #include <iostream> using namespace std; int main() {int a[10] = { 1,2,3,4,6,7, ...

  4. 面向对象程序设计c++版董正言张聪课本课后习题答案第二章

    ASCII 码值为 65 的字符型变量 char ch = 65;//值为 10000 的无符号整型变量 unsigned int i = 10000;//一个双精度浮点型变量 double f; 写 ...

  5. Python 程序设计(第二版)董付国_清华大学出版社_习题答案与分析【针对8.4及其之前的】

    更多精彩内容:(没有设置公众号获得,麻烦动动小手~谢谢) CSDN下载:Python编程无师自通电子书,[美]科里·奥尔索夫(Cory Althoff)-文档类-CSDN下载 百度云:链接:https ...

  6. Python 程序设计(第二版)董付国_清华大学出版社_习题答案【未处理1-9章】

    CSDN下载:https://download.csdn.net/download/weixin_42859280/11254583 百度云:链接:https://pan.baidu.com/s/1i ...

  7. 编译原理(第3版-王生原)课后习题答案-第三章

    1.构造下列正规式相应的 DFA. (1)1(0|1) *101 (2)1(1010* |1(010)*1) *0 (3)a((a|b)* |ab*a)*b (4)b((ab)* bb)*ab 答案: ...

  8. 计算机网络谢希仁第七版课后习题答案(第三章)

    3-01数据链路(即逻辑链路)与链路(即物理链路)有何区别? "电路接通了"与"数据链路接通了"的区别何在? 答案:数据链路与链路的区别在于数据链路出链路外,还 ...

  9. 微型计算机原理与接口技术(周荷琴 冯焕清)第六版 课后习题答案 第三章(部分答案)

    第三章 1.分别说明下列指令的源操作数和目的操作数各采用什么寻址方式. 源操作数  目的操作数            源操作数                    目的操作数 (1)MOV AX, ...

最新文章

  1. windows远程ssh与scp操作linux
  2. 数据库SQL优化大总结之 百万级数据库优化方案(转)
  3. 各家usbcan分析仪以及各家软件使用经验
  4. java dht 爬虫_P2P中DHT网络爬虫
  5. java编程软件安装
  6. 20180310华为面试
  7. 铅酸电池废水处理技术沉淀+树脂吸附
  8. Xshell访问连接路由器的服务器
  9. 采样频率和带宽的关系_示波器关键参数---带宽
  10. 某电商平台数据分析报告(2)
  11. 2020民泰银行软件测试,2020应届生银行工作一个半月感受
  12. 正交设计 python算法_人人都可以掌握的正交试验设计测试用例方法
  13. 【PIPE】流水线设计中的基本模块
  14. 给计算机老师的元旦祝福,2020给老师元旦祝福语
  15. 我猜中了开始 也猜中了结局
  16. 2020最新广告法_2020新广告法关于房地产
  17. 内网穿透远程控制Windows主机
  18. 推荐两个软件:网文快捕和MYIE(主要是用时随手记下的好处)
  19. Scale- and shift-invariant losses
  20. Mysql 数据同步到 Elasticsearch

热门文章

  1. 学会JavaScript函数式编程(第3部分)
  2. 前端开发中需要用到的变换矩阵(2D游戏适用)
  3. 预习计算机组成原理之计算机的运算方法——笔记4
  4. 破解网吧电影,获取电影的实际地址!
  5. 【古琴】初学者选择练习琴的六条准则
  6. linux服务器安装mysql步骤详解
  7. python的图形用户界面
  8. @3-2 CCF 2020-12-2 期末预测之最佳阈值
  9. Java选择题(七)
  10. 自动驾驶系统的传感器标定方法