首页 > 其他分享 >C语言-计算两个复数之积

C语言-计算两个复数之积

时间:2024-12-28 10:56:10浏览次数:7  
标签:real product struct imag 之积 C语言 complex 复数

#include <stdio.h>

// 定义一个复数结构体
struct complex{
    int real;   // 实部
    int imag;   // 虚部
};

// 声明复数乘法函数
struct complex multiply(struct complex x, struct complex y);

int main()
{
    struct complex product, x, y; // 声明用于存储乘积、第一个复数和第二个复数的变量

    // 从用户输入读取两个复数的实部和虚部
    scanf("%d%d%d%d", &x.real, &x.imag, &y.real, &y.imag);
    
    // 调用乘法函数计算两个复数的乘积
    product = multiply(x, y);
    
    // 打印原始复数和它们的乘积
    printf("(%d+%di) * (%d+%di) = %d + %di\n", 
            x.real, x.imag, y.real, y.imag, product.real, product.imag);
    
    return 0; // 程序成功执行后返回0
}

// 定义复数乘法函数
struct complex multiply(struct complex x, struct complex y){
    struct complex product; // 声明一个变量用于存储乘积结果
    
    // 计算乘积的实部
    product.real = x.real * y.real - x.imag * y.imag;
    
    // 计算乘积的虚部
    product.imag = x.real * y.imag + x.imag * y.real;
    
    // 返回计算得到的乘积
    return product;
}

标签:real,product,struct,imag,之积,C语言,complex,复数
From: https://blog.csdn.net/2401_87781924/article/details/144784741

相关文章

  • C语言勘破之路-最终篇 —— 预处理(下)
    人无完人,持之以恒,方能见真我!!!共同进步!!文章目录一、#和##1.#运算符2.##运算符二、预处理指令#undef三、条件编译1.单分支条件编译2.多分支条件编译3.判断符号是否被定义4.判断符号是否没有被定义四、头文件的包含1.库头文件的包含2.本地头文件的包含3.嵌套包含头文......
  • c语言结构体经验分享
     在C语言的学习与应用中,结构体是一个非常实用且重要的概念,下面就来分享一些关于结构体的经验。 首先,结构体的定义很关键。它允许我们将不同类型的数据组合在一起,形成一个新的复合数据类型。比如,定义一个表示学生信息的结构体: structStudent{  charname[20]; ......
  • C语言练习—变种水仙花数
    变种水仙花数-LilyNumber:把任意的数字,从中间拆分成两个数字,比如1461可以拆分成(1和461),(14和61),(146和1),如果所有拆分后的乘积之和等于自身,则是一个LilyNumber。例如:655=6*55+65*51461=1*461+14*61+146*1求出5位数中的所有LilyNumber求解思路:......
  • C语言——递归函数
            递归:函数自身调自身,以反向顺序输出,找到一个出口,结束递归        适用于有规律性的,例如阶乘、杨辉三角形、斐波那契数列#define_CRT_SECURE_NO_WARNINGS#include<stdio.h>intnum=0;//没有退出条件结束递归时,死循环,最大为3990voidfn(){ ......
  • MySQL日志之误删恢复数据
    目录1误删恢复数据1.1引言1.2解决方案1.2.1通用操作1.2.1.1确认binlog开启1.2.1.2binlog模式1.2.1.3binlog信息查询1.2.2方案一:找到insert语句,重新插入1.2.2.1找到binlog文件1.2.2.2根据时间点解析binlog文件1.2.2.2.1statement模式确认binlog位置1.2.2.2.2row模式确......
  • 如何处理恢复数据的主机无法同步问题?
    您好,关于您提到的恢复数据的主机无法同步问题,以下是详细的排查和解决方案:确认数据恢复状态:首先,确认数据是否已经完整恢复到目标主机。您可以登录到主机控制面板或通过FTP工具检查文件和目录结构,确保所有必要的文件都已成功恢复。如果发现缺少某些文件或目录,建议联系服务商确......
  • C语言最后一周复习
    充分相信自己每一次不都是失落失望到绝望,然后置于绝地而后生吗?1024参加线下C语言知识竞赛,到达现场本来都后悔想逃了,最后不还是拿了第一名?阴差阳错旷了课,不还是直面过错,找同姐开了假条吗?跑800体测,焦虑了快一个月,不还是按照预期跑完了吗?web蓝桥杯唯唯诺诺,内耗了很久,不还是硬着......
  • c语言实现重要算法二分查找和归并排序
    如有错误,请大佬指正,谢谢!前言二分查找和归并排序在c语言的算法学习中尤为重要,学会掌握这两种方法可以帮助我们解决数组排序和数组某元素查找的问题,尤其是在处理数据较多的时候。目录文章目录前言一、介绍一下二分查找和归并排序的概念和优点二、二分查找的实现三.归并......
  • c语言控制循环语句介绍
      目录 一.c语言语句介绍 一. 首先c语言中主要有以下几种语句:1.空语句(;)。可以看到如果出现结构中不需要语句时,可用分号(不写语句语法错误)。 2.控制语句。(循环,分支,转向)3.表达式语句。如下图4.复合语句函数大括号内各种语句结合即为复合语句。5.函数调用语句......
  • 链表插入(C语言)
    链表的插入操作是链表中非常重要的基本操作之一。在C语言中,链表通常由一个结构体表示,每个节点包含数据和一个指向下一个节点的指针。下面是链表插入的几种常见情况:1.插入到链表的头部当我们需要将一个新节点插入到链表的最前面时,我们只需要让新节点的next指针指向当前的......