1、在程序中编写三个名为add的重载函数,分别实现两整数相加、两实数相加和两复数

要详细编程过程!... 要详细编程过程! 展开
 我来答
leehyfer
2011-10-24 · TA获得超过1518个赞
知道小有建树答主
回答量:576
采纳率:100%
帮助的人:229万
展开全部
//在程序中编写三个名为add的重载函数,分别实现两整数相加、两实数相加和两复数

#include <stream.h>
#include <stdio.h>
#include <math.h>

//----------------------------------------
typedef struct complex_nick_name
{
float real;
float imag;
}
COMPLEX, *ptrCOMPLEX;

//----------------------------------------
int add(int add1, int add2);
float add(float add1, float add2);
COMPLEX add(COMPLEX add1, COMPLEX add2);

void print_COMPLEX(COMPLEX data);

//----------------------------------------
int add(int add1, int add2)
{
return (add1+add2);
}
float add(float add1, float add2)
{
return (add1+add2);
}
COMPLEX add(COMPLEX add1, COMPLEX add2)
{
COMPLEX sum;
sum.real = add1.real + add2.real;
sum.imag = add1.imag + add2.imag;
return sum;
}

void print_COMPLEX(COMPLEX data)
{
cout<<data.real<<"+"<<data.imag<<"i";
}

//----------------------------------------
int main()
{
int add1_int = 5;
int add2_int = 6;
int sum_int = 0;

float add1_float = 7.6;
float add2_float = 8.5;
float sum_float = 0;

COMPLEX add1_complex = {1.1, 2.2};
COMPLEX add2_complex = {3.7, 4.2};
COMPLEX sum_complex = {0, 0};

sum_int = add(add1_int, add2_int);
sum_float = add(add1_float, add2_float);
sum_complex = add(add1_complex, add2_complex);

cout<<"sum_int = "<<sum_int<<endl;
cout<<"sum_float = "<<sum_float<<endl;
cout<<"sum_complex = ";
print_COMPLEX(sum_complex);

getchar();
return 0;
}
//----------------------------------------
追问
有错调试一下!
追答
qq522161657
华山_东风无力
2011-10-24 · 超过16用户采纳过TA的回答
知道答主
回答量:90
采纳率:0%
帮助的人:33.2万
展开全部
templete<typename T>
const T& add(const T& t1, const T& t2)
{
return t1 + t2;
}

一个模板就可以解决
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式