【C语言】复数四则运算
【实验目的】抽象数据类型的实现,构造抽象数据类型以及结构体,以实现复数的多种计算完成创建数据结构的基本操作的函数。
【问题描述】设计一个可进行复数运算的演示程序。
【基本要求】实现下列七种基本运算:1)由输入的实部和虚部生成一个复数;2)复数的显示;3)两个复数求和;4)两个复数求差;5)两个复数求积;6)从已知复数中分离出实部;7)从已知复数中分离出虚部。
一、结果
二、代码
#include<stdio.h>
typedef struct
{float real;float imag;
}complex;
void show(complex x)
{if (x.real != 0){if (x.imag > 0)printf("%.2f+i%.2f\n", x.real, x.imag);elseif (x.imag == 0)printf("%.2f\n", x.real);else{x.imag = -x.imag;printf("%.2f-i%.2f\n", x.real, x.imag);}}else{if (x.imag > 0)printf("i%.2f\n", x.imag);elseif (x.imag == 0)printf("%.2f\n", x.real);else{x.imag = -x.imag;printf("-i%.2f\n", x.imag);}}
}
void add(complex x, complex y)
{complex sum;sum.real = x.real + y.real;sum.imag = x.imag + y.imag;show(sum);
}
void minus(complex x, complex y)
{complex sub;sub.real = x.real - y.real;sub.imag = x.imag - y.imag;show(sub);
}
void multi(complex x, complex y)
{complex mul;mul.real = x.real * y.real - x.imag * y.imag;mul.imag = x.real * y.imag + x.imag * y.real;show(mul);
}
float separate_real(complex x)
{return x.real;
}
float separate_imag(complex x)
{return x.imag;
}
int main()
{int i;complex a, b;printf("需要输入复数个数(1或2):");scanf_s("%d", &i);if (i == 1) {printf("实部、虚部分别输入:");scanf_s("%f%f", &a.real, &a.imag);printf("\n显示:a=");show(a);}else {printf("(1)分别输入两个复数的实部和虚部:");scanf_s("%f%f%f%f", &a.real, &a.imag, &b.real, &b.imag);printf("\n(2)显示:a=");show(a);printf("b=");show(b);printf("\n(3)和:a+b=");add(a, b);printf("\n(4)差:a-b=");minus(a, b);printf("b-a=");minus(b, a);printf("\n(5)乘积:a*b=");multi(a, b);printf("(6)实部:a.real=%.2f,b.real=%.2f", separate_real(a), separate_real(b));printf("\n(7)虚部:a.imag=%.2f,b.imag=%.2f", separate_imag(a), separate_imag(b));return 0;}
}
【C语言】复数四则运算相关推荐
- C语言 复数四则运算
复数四则运算 题目描述: 要求编写程序,计算2个复数的和.差.积.商. 输入格式: 输入在一行中按照a1 b1 a2 b2的格式给出2个复数C1=a1+b1i和C2=a2+b2i的实部和虚部.题目保证 ...
- c语言复数的log运算法则,谁知道c语言复数四则运算?
复数的四则运算规定为: (a+bi)+(c+di)=(a+c)+(b+d)i, (a+bi)-(c+di)=(a-c)+(b-d)i, (a+bi)?(c+di)=(ac-bd)+(bc+ad)i, ...
- C语言函数——复数四则运算
C语言函数--复数四则运算 本题要求编写程序,计算2个复数的和.差.积.商. 输入格式: 输入在一行中按照a1 b1 a2 b2的格式给出2个复数C1=a1+b1i和C2=a2+b2i的实部和虚部.题 ...
- 7-3 复数四则运算 C语言
7-3 复数四则运算 本题要求编写程序,计算2个复数的和.差.积.商. 输入格式: 输入在一行中按照a1 b1 a2 b2的格式给出2个复数C1=a1+b1i和C2=a2+b2i的实部和虚部.题目保证 ...
- c语言复数的运算实验报告,C语言复数的运算实验报告.doc
C语言复数的运算实验报告 实验报告 题目:复数的四则运算 班级: 13信管 姓名:白浩然 学号:201340403034 完成日期:2014.05.21 一.需求分析 1.本演示程序中复数由两个相互之 ...
- 数据结构 实验一:1.复数四则运算;2.百钱买百鸡
数据结构 实验一:1.复数四则运算:2.百钱买百鸡 一.实验目的 通过本实验的学习,复习C语言编程并认识数据结构,练习对程序进行简单的算法分析,为后续的数据结构实现及算法性能分析奠定基础. 二.实验内 ...
- python【蓝桥杯vip练习题库】ADV-120 6-17复数四则运算
试题 算法提高 6-17复数四则运算 资源限制 时间限制:1.0s 内存限制:512.0MB 设计复数库,实现基本的复数加减乘除运算. 输入时只需分别键入实部和虚部,以空格分割,两个复数之间用运算符分 ...
- 复数四则运算 (15 分)
7-76 复数四则运算 (15 分) 本题要求编写程序,计算2个复数的和.差.积.商. 输入格式: 输入在一行中按照a1 b1 a2 b2的格式给出2个复数C1=a1+b1i和C2=a2+b2i的实部 ...
- 7-36 复数四则运算 (15 分)【简化版】
7-36 复数四则运算 (15 分) 本题要求编写程序,计算2个复数的和.差.积.商. 输入格式: 输入在一行中按照a1 b1 a2 b2的格式给出2个复数C1=a1+b1i和C2=a2+b2i的实部 ...
- 复数四则运算(Web)
界面如下图所示 输入界面 <%@ page language="java" contentType="text/html; charset=UTF-8"p ...
最新文章
- 图解LSTM与GRU单元的各个公式和区别
- Microsoft Azure Express Route (专线直连)到云端数据中心(2)
- xen 虚拟机挂了,宿主机假死的问题追终,全思路
- 【Linux】一步一步学Linux——chmod命令(110)
- C++ vector用法
- python封装介绍_谈python3的封装
- 用VC写Assembly代码(5) --函数调用(一)
- 如何查找 MySQL配置文件 my.ini (my.conf)的位置(案例篇)
- 垃圾分类:人机搭配,干活不累
- [ 转载 ] Java基础12--基础学习总结——数组
- Win2008 R2 VDI动手实验系列之三:远程桌面会话主机配置
- HDU 2088 Box of Bricks
- 修改chrome中HTML元素,自由更改网页中的任何内容:Hack this page
- 泰山OFFICE适配龙芯新架构(loongarch64)UOS初步完成
- Windows环境CMake安装教程
- 登录图片滑动验证实现
- Windows中的NTUSER.DAT文件是什么?
- 《平衡掌控者 游戏数值战斗设计》学习笔记(一)游戏研发概要
- 为什么没写Feedsky话题广告
- css第八课:文本属性(字体,颜色属性)
热门文章
- 嵌入式Linux——oops:根据oops信息,找到错误的产生位置以及函数的调用关系
- 知道车架号,vin想查询车辆维修和出险记录,以上 JavaScript 代码可以通过 HTML 代码来调用
- 假如地球毁灭了 人类文明数据如何存储?
- 同相比造句_对比造句_造句大全
- 【小f的刷题笔记】(JS)阶乘 - 阶乘后的零 LeetCode172 阶乘函数后K个零 LeetCode793
- Hibernate实战——Generated注解
- opencv学习_11 (模板匹配(包括单模板和多模板))
- 任务11:“数码管”的静态显示和动态显示
- SharePoint 2010 主题
- 服务启动报错 RedisCommandExecutionException: READONLY You can‘t write against a read only replica.