1.函数重载编程练习编写重载函数add(),实现对int型,double型,Complex型数据的加法

  1. #include<iostream>
  2. using namespace std;
  3. struct complex{
  4. double real;
  5. double imaginary;
  6. };
  7. int add(int,int);
  8. double add(double, double);
  9. complex add(complex, complex);
  10. int main(){
  11. int x;
  12. double y;
  13. complex z;
  14. int a,b;
  15. cout<<"请输入两个整数:"<<endl;
  16. cin>>a>>b;
  17. x=add(a,b);
  18. cout<<"整数之和为:"<<x<<endl;
  19. double c,d;
  20. cout<<"请输入两个double型数:"<<endl;
  21. cin>>c>>d;
  22. y=add(c,d);
  23. cout<<"double类型之和为:"<<y<<endl;
  24. complex e,f;
  25. cout<<"请输入两个复数的实部虚部"<<endl;
  26. cin>>e.real>>e.imaginary>>f.real>>f.imaginary;
  27. z=add(e,f);
  28. cout<<"复数之和为:"<<z.real<<"+"<<z.imaginary<<"i"<<endl;
  29. return ;
  30. }
  31. int add(int a,int b)
  32. {
  33. return (a+b);
  34. }
  35. double add(double a,double b)
  36. {
  37. return (a+b);
  38. }
  39. complex add(complex a,complex b)
  40. {
  41. complex c;
  42. c.real=a.real+b.real;
  43. c.imaginary=a.imaginary+b.imaginary;
  44. return c;
  45. }

2.编写实现快速排序函数模板,并在main()函数中,定义不同类型数据,调用测试。

#include<iostream>
using namespace std;
void QuickSort(double ar[], int left ,int right)

{
if(left<right)
{
int i = left;
int j = right;
double x = ar[i];
while(i<j)
{
while(i<j&&ar[j]>x)
j--;
if(i<j)
{
ar[i] = ar[j];
i++;
}
while(i<j&&ar[i]<x)
i++;
if(i<j)
{
ar[j] = ar[i];
j--;
}
}
ar[i] = x;
QuickSort(ar, left, i-1);
QuickSort(ar, i+1, right);
}
}
int main()
{
int n = 10 ;
double ar[]={5,78,45,67,45,55,24,89,54,9};
int i;
cout<<"排序前的数为:";
for(i=0;i<n;++i)
cout<<ar[i]<<' ';
cout<<endl;
QuickSort(ar,0,n-1);
cout<<"排序后的数为: ";
for(i=0;i<n;++i)
cout<<ar[i]<<' ';
cout<<endl;
return 0;
}

3.写一个处理用户信息的类,可以打印信息,支持修改密码。

  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4. class user
  5. {public:
  6. void setInfo(string name0,string password0="",string email0=" ");
  7. void changePassword();
  8. void printInfo();
  9. private:
  10. string name;
  11. string password;
  12. string email;
  13. };
  14.  
  15. void user::setInfo(string name0,string password0,string email0)
  16. {name=name0;
  17. password=password0;
  18. email=email0;
  19. }
  20.  
  21. void user::changePassword()
  22. {string old;
  23. int i=;
  24. cout<<"请输入原密码:"<<endl;
  25. cin>>old;
  26. while (old!=password && i<)
  27. {i++;
  28. cout<<"错误,请重新输入:"<<endl;
  29. cin>>old;
  30. }
  31. if(old==password)
  32. {cout<<"请输入新密码:"<<endl;
  33. cin>>password;
  34. }
  35. else if(i=)
  36. cout<<"请稍后再试"<<endl;
  37. }
  38.  
  39. void user::printInfo ()
  40. {cout<<"name :"<<name<<endl;
  41. cout<<"passwd : ******"<<endl;
  42. cout<<"email :"<<email<<endl;
  43. }
  44.  
  45. int main()
  46. {user user1;
  47. user1.setInfo("Leonard");
  48. user1.printInfo();
  49. user1.changePassword();
  50. user1.printInfo();
  51. cout<<endl;
  52. user user2;
  53. user2.setInfo("Jonny","","xyz@hotmail.com");
  54. user2.printInfo();
  55. return ;
  56. }

c++实验二的更多相关文章

  1. 20145215&20145307《信息安全系统设计基础》实验二 固件设计

    20145215&20145307<信息安全系统设计基础>实验二 固件设计 实验目的与要求 了解多线程程序设计的基本原理,学习 pthread 库函数的使用. 了解在 linux ...

  2. FPGA与simulink联合实时环路系列——实验二LED

    实验二LED 实验内容 在实验一的基础上,将simulink产生的测试信号输出到FPGA开发板上的LED灯进行显示,这里要在生成的硬件模型上进行修改,将传送到FPGA的信号输出到8个LED灯上,并且对 ...

  3. 20145204&20145212信息安全系统实验二

    20145204&20145212信息安全系统实验二 链接

  4. 20145204&20145212实验二报告

    实验二固件设计 步骤: 1.开发环境的配置,参考实验一 1.将实验代码拷贝到共享文件夹中. 2.在虚拟机中编译代码.对于多线程相关的代码,编译时需要加-lpthread的库.下载调试在超级终端中运行可 ...

  5. 20145215实验二 Java面向对象程序设计

    一.实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 二.实验步骤 (一)单元测试 (1)三种代码 伪代码: ...

  6. 实验二 用C语言表示进程的调度

    实验二 一. 实验目的 通过模拟进程的调度,进一步了解进程的调度的具体过程. 二. 实验内容和要求 1.进程PCB的结构体定义 2.定义队列 3.输入进程序列 4.排序(按到位时间) 5.输出进程运行 ...

  7. 20145218&20145240 《信息安全系统设计基础》实验二 固件设计

    20145218&20145240 <信息安全系统设计基础>实验二 固件设计 实验报告链接:http://www.cnblogs.com/20145240lsj/p/6035512 ...

  8. 实验二 Java面向对象程序设计

    实验二 Java面向对象程序设计 实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计 ...

  9. 实验二 PHP基本语法实验

    实验二 PHP基本语法实验 0 实验准备 0.1实验环境和相关工具软件 具体到的机房环境,请在Windowsxp环境下做本实验: l  操作系统:Windowsxp l  Web服务器:Apache ...

  10. 20145213《Java程序设计》实验二Java面向对象程序设计实验报告

    20145213<Java程序设计>实验二Java面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装,继承,多态 初步掌握UML建模 熟悉S.O. ...

随机推荐

  1. gitlab安装后吃内存的解决办法

    修改配置文件/etc/gitlab/gitlab.rb 将注释掉的这一行放开(至少为2,大致算法为cpu core数量*2 +1) # unicorn[ 然后执行如下命令: gitlab-ctl re ...

  2. Windows XP 的最高版本 .net framework 安装

    注意: Windows XP 系统已于2014年4月8日停止维护.出于安全.性能及新设备支持考虑,应立即停止使用. 安装 Windows XP SP3 所支持的最高.net framework 版本为 ...

  3. ansible-plabybook 常用的有用的命令

    ansible-plabybook 常用的有用的命令 ansible-playbook常用的非常有用的参数有: -C ,大写c ,这个命令的意思就是模拟执行,会告诉你跑完这个playbook会发生什么 ...

  4. 移动端右侧导航 显示隐藏js

    transform与fixed影响 html按钮 <span class="nav-btn"></span> <span class="cl ...

  5. LR使用web_add_cookie函数进行cookie模拟

    1    为什么要使用cookie模拟 从日常项目测试过程中的问题说起.比如要进行论坛中的文件下载功能的测试.我们都知道只有登录用户才能进行下载操作,这样我们的测试过程可能就变成了先登录系统,然后再进 ...

  6. Spring 将请求参数封装成对象

    简单描述:最近手里的模块,前后台之间需要传递很多的参数,使用封装的PageData,来获取请求参数的,作微服务迁移的时候,就涉及到需要把参数从pagedata里取出来,一个一个的放到对象的属性中.就很 ...

  7. 末学者笔记--apache编译安装及LAMP架构上线

    apache介绍 一.Apache的三种工作模式 Apache一共有3种稳定的MPM模式(多进程处理模块),它们分别是prefork.worker.event.http-2.2版本的httpd默认的m ...

  8. DDD - 概述 - (一)

    本片将介绍以下内容: 1).DDD是什么? 2).怎么使用DDD? 3).使用DDD应该规避或者注意什么? 一.DDD是什么? 简言之:领域驱动设计(domain driven design),顾名思 ...

  9. IE8 disable 兼容行问题

    在chrome 下 如果样式设置为disabled 则不能点击, 但是在IE9 或者IE8 则还是可以点击

  10. Codeforces 1015F Bracket Substring AC自动机 + dp

    Bracket Substring 这么垃圾的题怎么以前都不会写啊, 现在一眼怎么就会啊.... 考虑dp[ i ][ j ][ k ][ op ] 表示 已经填了 i 个空格, 末尾串匹配到 所给串 ...