Math Dash 2021-05-28 20:36 采纳率: 88.1%
浏览 47
已结题

这个代码的主函数怎么写?怎么输出?

#include <stdio.h>
#include <stdlib.h>
typedef struct
{
    float Realpart;
    float Imagepart;
}Complex;
void Create(&Complex C,float x,float y)
{
    C.Realpart=x;
    C.Imagepart=y;
}
float GetReal(Complex C)
{
    return C.Realpart;
}
float GetImag(Complex C)
{
    return C.Imagepart;
}
Complex Add(Complex C1,Complex C2)
{
    Complex sum;
    sum.Realpart=C1.Realpart+C2.Realpart;
    sum.Imagepart=C1.Imagepart+C2.Imagepart;
    return sum;
}
Complex Sub(Complex C1,Complex C2)
{
    Complex difference;
    difference.Realpart=C1.Realpart-C2.Realpart;
    difference.Imagepart=C1.Imagepart-C2.Imagepart;
    return difference;
}
int main(int argc, char *argv[])
{
    
    return 0;
}

  • 写回答

1条回答 默认 最新

  • qfl_sdu 2021-05-28 22:30
    关注

    main函数怎么写取决于你想达到什么样的目的。如果只是简单的验证一下函数的效果,就定义两个结构体,用上面的函数实验一下就可以了。

    参考如下,如有帮助,请采纳一下,谢谢。

    #include <stdio.h>
    #include <stdlib.h>
    typedef struct
    {
    	float Realpart;
    	float Imagepart;
    }Complex;
    //这个地方改为指针
    void Create(Complex *C,float x,float y)
    {
    	C->Realpart=x;
    	C->Imagepart=y;
    }
    float GetReal(Complex C)
    {
    	return C.Realpart;
    }
    float GetImag(Complex C)
    {
    	return C.Imagepart;
    }
    Complex Add(Complex C1,Complex C2)
    {
    	Complex sum;
    	sum.Realpart=C1.Realpart+C2.Realpart;
    	sum.Imagepart=C1.Imagepart+C2.Imagepart;
    	return sum;
    }
    Complex Sub(Complex C1,Complex C2)
    {
    	Complex difference;
    	difference.Realpart=C1.Realpart-C2.Realpart;
    	difference.Imagepart=C1.Imagepart-C2.Imagepart;
    	return difference;
    }
    int main(int argc, char *argv[])
    {
    	Complex c1;
    	Create(&c1,1.1,1.2); //这个地方,第一个参数改为指针
    	printf("c1.Realpart = %.1f;c1.Imagepart=%.1f\n",GetReal(c1),GetImag(c1));
    	Complex c2;
    	c2.Realpart = 2.1;
    	c2.Imagepart = 2.2;
    	printf("c2.Realpart = %.1f;c2.Imagepart=%.1f\n",GetReal(c2),GetImag(c2));
    	Complex c3 = Add(c1,c2);
    	printf("c1+c2= c3.Realpart =%.1f,c3.Imagepart=%.1f\n",GetReal(c3),GetImag(c3));
    	Complex c4 = Sub(c1,c2);
    	printf("c1-c2= c4.Realpart =%.1f,c4.Imagepart=%.1f\n",GetReal(c4),GetImag(c4));
    	return 0;
    }
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 1月23日
  • 已采纳回答 1月23日

悬赏问题

  • ¥15 求螺旋焊缝的图像处理
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥15 网络通信安全解决方案
  • ¥50 yalmip+Gurobi
  • ¥20 win10修改放大文本以及缩放与布局后蓝屏无法正常进入桌面
  • ¥15 itunes恢复数据最后一步发生错误
  • ¥15 关于#windows#的问题:2024年5月15日的win11更新后资源管理器没有地址栏了顶部的地址栏和文件搜索都消失了
  • ¥100 H5网页如何调用微信扫一扫功能?
  • ¥15 讲解电路图,付费求解