使用c语言实现复数运算的程序,用C语言实现的复数运算程序设计
用C语言实现的复数运算程序设计
电大理工
2009年3月 Study of Science and Engineering at RTVU. 第1期 总第238期
用C语言实现的复数运算程序设计
王彦良 王 珊
辽阳职业技术学院 ( 辽阳 111000 ) 辽宁师范大学( 大连 116029 )
摘 要 利用C语言提供的自定义结构体类型,自定义了复数结构体类型,在此基础上编写出实现对两个复数进行加、减、乘、除的程序,以及对一个复数求其模(绝对值)的程序。把关于复数类型的定义及相应的函数放到一个新建立的头文件中,可使用预编译命令,方便用户使用。
关键词 C语言 函数 复数 程序设计
众所周知,在C语言中没有提供有关复数运算的程序,这对于需要进行复数运算的用户来说十分不便。而C语言中允许用户自定义结构体类型,为解决用户进行复数运算提供了可能。
我们知道,一个复数z=2+j3是由实部2和一个虚部3构成的,为此,我们可以这样定义一个复数:
typedef struct { double re;
double im; } fcomplex;
结构体类型fcomplex 具有两个元素:一个是实部re,另一个是虚部im,考虑到工程计算中有关复数运算的实、虚部可能是带有小数的情况,我们把实、虚部都定义成双精度实数类型。有了上述对复数fcomplex 结构类型的定义之后,我们可以编制出实现两个复数进行加、减、乘、除的程序,以及对一个复数求其模(绝对值)的程序。
把两个复数z1=a+jb与z2=c+jd相加,其结果z=(a+c)+j(b+d),因此实现两个复数相加的函数如下:
fcomplex fadd( fcomplex z1,fcomplex z2) { fcomplex z;
z.re=z1.re+z2.re; z.im=z1.im+z2.im; return (z); }
把两个复数z1=a+jb与z2=c+jd相减,其结果z=(a-c)+j(b-d),因此实现两个复数相减的函数如下:
fcomplex fsub(fcomplex z1 , fcomplex z2) { fcomplex z; z.re=z1.re-z2.re; z.im=z1.im-z2.im; return (z); }
把两个复数z1=a+jb与z2=c+jd相乘,其结果z=(a+jb)(c+jd)=(ac-bd)+j(ad+bc),因此实现两个复数相乘的函数如下:
fcomplex fmul(fcomplex z1 , fcomplex z2) { fcomplex z;
z.re=(z1.re*z2.re)-(z1.im*z2.im); z.im=(z1.re*z2.im)+(z1.im*z2.re); return (z); }
把两个复数z1=a+jb与z2=c+jd相除,其结果z=(a+jb)/(c+jd)=((ac+bd)+j(bc-ad))/(c*c+d*d),因此实现两个复数相乘的函数如下:
使用c语言实现复数运算的程序,用C语言实现的复数运算程序设计相关推荐
- c语言复数相加的程序,运用C语言编写复数的四则运算.docx
.. 运用C语言编写复数的四则运算 需求分析 设计一个可进行复数运算的演示程序 实现下列六种基本运算: (1)由于输入的实部和虚部生成一个复数:(2)两个复数求和:(3)两个复数求差:(4)两个复数求 ...
- c语言怎么让他变成程序,用C语言编了个程序,怎样让它点击“下一步”后继续弹出窗口...
可以参考下面的代码: #include int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine, ...
- C语言实现与功能的程序,用C语言实现Ping程序功能
2001 年 10 月 01 日 大部分人用ping命令只是作为查看另一个系统的网络连接是否正常的一种简单方法.在这篇文章中,作者将介绍如何用C语言编写一个模拟ping命令功能的程序. ping命令是 ...
- 【C语言入门】SDUT《程序设计基础I 》实验2-选择结构程序设计题解 c语言语法讲解
题目链接 A - C语言实验--求绝对值(选择结构) 使用if选择语句, 大于等于 0 直接输出, 小于 0 输出 -x 即可 拓展: 求绝对值的函数 <math.h>头文件下有abs() ...
- c语言密码锁门禁系统程序,基于C语言STC89C52单片机电子密码锁的系统设计与仿真...
摘 要:介绍一种通过 Protues 软件成功仿真的电子密码锁的实现过程.它采用高可靠性的STC89C52单片机来实现*和密码酌识别,采用具备IC总线接田的EPROM芯片来完成密码的聋储,通过l602 ...
- C语言做一个表格的程序,用C语言画个简单表格
今天见到个题目,就把他做了,题目如下: 在图形环境中很容易做出漂亮的表格.但在控制台环境中就比较困难了.有的时候可以用一些符号大略地模拟:(word文档中可能不整齐,拷贝到记事本中看) +------ ...
- 用c语言写的电话簿的程序,用C语言散列表实现电话薄
#用C语言散列表实现电话薄# 标题 #include#include#includetypedef struct node { char num[11],name[15],address[20],ci ...
- C语言杨辉三角的程序分析,C语言:打印杨辉三角
打印出以下的杨辉三角(要求打印出十行) 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 ...... 一.分析规律: 1.每一行的 ...
- c语言水打印仙花数程序,最新C语言程序设计常见上机实验题目汇总(24页)-原创力文档...
C C语言程序设计常见上机实验题目汇总 PAGE PAGE # / 229 / 22 C语言常见的上机实验题目汇总 目录 1.计算矩形的周长与面积 Ft tBEt. C ? "ITT订舁拒形 ...
最新文章
- 「AI在左,营销在右」互动营销创意破圈,这事儿不难
- arrays.sort(._Arrays.sort与Arrays.parallelSort
- Vim新手必看:Vim 命令图解
- Yaml spring boot 二维数组写法
- [转载] python中集合的表示_Python No.18_集合以及表示符号
- 「三分钟系列02」3分钟看懂最高效的快速排序分析与优化
- idea 安装jrebel6.4.3及破解
- 魔方机器人机械部分_通过强化学习解决第2部分的魔方
- 基于F340 实现Bridge功能(二):上位机应用程序编写
- 【嵌入式--伺服电机】电磁理论的基础概念
- What Makes a Video a Video :Analyzing Temporal Information in Video Understanding Models and Dataset
- 扒一扒那些叫欧拉的定理们(九)——群论观点下的欧拉公式初步
- 计划驱动的软件过程:waterfall model(瀑布模型,或称之为SDLC模型)
- linux 搭建webserver-Goahead
- 计算机中专综合知识,湖南省汨罗市职业中专高考(八)计算机应用专业综合知识试题讲解.doc...
- HTML---一个没有下划线字体颜色为黑色的链接
- Cisco AnyConnect Client设置默认网关(域名+IP)
- 专家:程序员不配叫工程师
- PAT(乙级)1076.Wifi密码(15)
- stricmp——不区分大小写比较字符串