当前位置: 首页 > news >正文

计算机网站设计宁波网站制作优化服务

计算机网站设计,宁波网站制作优化服务,建立公众号,宏杰zkeys网站模板在本文中,我将向您展示一种使用C编程语言实现复数的方法。 请注意,使用此处提供的代码没有任何保证。 复数是一个数字,例如z,表示z realPart i * imaginaryPart,其中i是虚数单位,有时用j表示。 另外&…

在本文中,我将向您展示一种使用C编程语言实现复数的方法。 请注意,使用此处提供的代码没有任何保证。

复数是一个数字,例如z,表示z = realPart + i * imaginaryPart,其中i是虚数单位,有时用j表示。 另外,i * i = -1,这在查找两个复数的乘积/除法时很重要。

自然,我们可以将复数实现为结构:

/* Definition of a Complex number: */
typedef struct complex {double realPart;double imaginaryPart;
} Complex;
我们可以按如下方式将接口与实现分开。

首先,我们有标题

Complex.h ,它定义了Complex结构,并包含处理一个或多个Complex数字的函数的原型:
/* Complex.h */ 
#ifndef COMPLEX_H
#define COMPLEX_H 
/* Definition of a Complex number: */
typedef struct complex {double realPart;double imaginaryPart;
} Complex; 
/* Prototypes for functions to manipulate Complex number(s) (these functions are implemented in file Complex.c): */
Complex addition( const Complex *pointerToComplexNumber1, const Complex *pointerToComplexNumber2 );
Complex subtraction( const Complex *pointerToComplexNumber1, const Complex *pointerToComplexNumber2 );
Complex multiplication( const Complex *pointerToComplexNumber1, const Complex *pointerToComplexNumber2 );
Complex division(  const Complex *pointerToComplexNumber1, const Complex *pointerToComplexNumber2 );
void print( const Complex *pointerToComplexNumber ); 
#endif
文件Complex.c实现了以上功能:
/* Complex.c */ 
#include <stdio.h>
#include "Complex.h" 
/* Adds two Complex numbers, returning a new one, without modifying the ones received: */
Complex addition( const Complex *pointerToComplexNumber1, const Complex *pointerToComplexNumber2 )
{Complex complexNumber3; complexNumber3.realPart = pointerToComplexNumber1->realPart + pointerToComplexNumber2->realPart;complexNumber3.imaginaryPart = pointerToComplexNumber1->imaginaryPart + pointerToComplexNumber2->imaginaryPart; return complexNumber3;
} 
/* Subtracts two Complex numbers, returning a new one, without modifying the ones received: */
Complex subtraction( const Complex *pointerToComplexNumber1, const Complex *pointerToComplexNumber2 )
{Complex complexNumber3; complexNumber3.realPart = pointerToComplexNumber1->realPart - pointerToComplexNumber2->realPart;complexNumber3.imaginaryPart = pointerToComplexNumber1->imaginaryPart - pointerToComplexNumber2->imaginaryPart; return complexNumber3;
} 
/* Multiplies two Complex numbers, returning a new one, without modifying the ones received: */
Complex multiplication( const Complex *pointerToComplexNumber1, const Complex *pointerToComplexNumber2 )
{Complex complexNumber3; complexNumber3.realPart = pointerToComplexNumber1->realPart * pointerToComplexNumber2->realPart -pointerToComplexNumber1->imaginaryPart * pointerToComplexNumber2->imaginaryPart; complexNumber3.imaginaryPart = pointerToComplexNumber1->realPart * pointerToComplexNumber2->imaginaryPart +pointerToComplexNumber1->imaginaryPart * pointerToComplexNumber2->realPart; return complexNumber3;
} 
/* Divides two Complex numbers, returning a new one, without modifying the ones received: */
Complex division(  const Complex *pointerToComplexNumber1, const Complex *pointerToComplexNumber2 )
{Complex complexNumber3;double commonDenominator = pointerToComplexNumber2->realPart * pointerToComplexNumber2->realPart +pointerToComplexNumber2->imaginaryPart * pointerToComplexNumber2->imaginaryPart; complexNumber3.realPart = ( pointerToComplexNumber1->realPart * pointerToComplexNumber2->realPart +pointerToComplexNumber1->imaginaryPart * pointerToComplexNumber2->imaginaryPart ) / commonDenominator; complexNumber3.imaginaryPart = ( pointerToComplexNumber1->imaginaryPart * pointerToComplexNumber2->realPart -pointerToComplexNumber1->realPart * pointerToComplexNumber2->imaginaryPart ) / commonDenominator; return complexNumber3;
} 
/* Prints a Complex number in the form ( realPart ) + i( imaginaryPart ), without modifying it: */
void print( const Complex *pointerToComplexNumber )
{printf( "( %.4f ) + i( %.4f )", pointerToComplexNumber->realPart, pointerToComplexNumber->imaginaryPart );
}
最后,我们有一个名为ComplexTest.c的文件,该文件在主函数中测试文件Complex.cComplex.h ,这是我们C程序的起点:
/* ComplexTest.c */ 
#include <stdio.h>
#include "Complex.h" 
int main( void )
{Complex number1;Complex number2;Complex sumOfNumber1WithNumber2;Complex subtractionOfNumber2FromNumber1;Complex multiplicationOfNumber1WithNumber2;Complex divisionOfNumber1PerNumber2; number1.realPart = 1.2343;number1.imaginaryPart = 4.7621; number2.realPart = -3.213;number2.imaginaryPart = -9.8; sumOfNumber1WithNumber2 = addition( &number1, &number2 );subtractionOfNumber2FromNumber1 = subtraction( &number1, &number2 );multiplicationOfNumber1WithNumber2 = multiplication( &number1, &number2 );divisionOfNumber1PerNumber2 = division( &number1, &number2 ); printf( "Number1 = " );print( &number1 );printf( "\nNumber2 = " );print( &number2 );printf( "\nNumber1 + Number2 = " );print( &sumOfNumber1WithNumber2 );printf( "\nNumber1 - Number2 = " );print( &subtractionOfNumber2FromNumber1 );printf( "\nNumber1 * Number2 = " );print( &multiplicationOfNumber1WithNumber2 );printf( "\nNumber1 / Number2 = " );print( &divisionOfNumber1PerNumber2 );putchar( '\n' ); return 0;
}
要使用Visual Studio 2013编译该程序,请从命令行打开VS2013的“开发人员命令提示符”,转到上述三个文件所在的目录,然后输入命令cl ComplexTest.c Complex.c。

然后,使用以下命令运行程序

综合测试

From: https://bytes.com/topic/c/insights/956447-implementation-complex-numbers-c

http://www.khdw.cn/news/65951.html

相关文章:

  • 游戏网站建站公司网站如何制作
  • 行业网站建设方案建网络平台要多少费用
  • 北京哪里做网站好今天国内新闻
  • 网易做的什么网站seo站内优化最主要的是什么
  • 深圳做商城网站建设如何制作一个公司网站
  • 加强政府网站建设工作要求google搜索引擎入口 镜像
  • 用vs2010里的vb做网站seo网络优化师
  • 专业平台建设沈阳seo按天计费
  • 深圳国税局深圳做网站公司百度广告联盟收益
  • 最专业的企业营销型网站建设seo分析报告怎么写
  • post wordpress apiseo中心
  • 国外网站推广平台有哪些公司广东网站营销seo方案
  • 网站伪静态文件百度小说搜索风云榜排行榜
  • 做网站常见问题模板注册城乡规划师含金量
  • 平面设计大师营销推广seo
  • 济南集团网站建设方案连接交换
  • 网站建设论文的结论龙华百度快速排名
  • 导航网站教程杭州seo招聘
  • 医院门户网站制作宁波seo整站优化
  • 设计开发建设网站网上推广专员是什么意思
  • 长沙网站排名报价宜昌网站建设公司
  • 专业电商网站开发淘宝推广哪种方式最好
  • 网站建设项目预算媒体代发网站
  • 网站标题更新企业网址搭建
  • 只做男生穿搭的网站如何做百度搜索推广
  • 海口网站制作企业北京营销公司排行榜
  • 做英文网站 是每个单词首字母大写 还是每段落首字母大写搜索引擎有哪几个网站
  • 网站注册会绑定式收费吗企业网站seo优化公司
  • 单县网站建设口碑营销经典案例
  • 建设网站的准备工作市场调研报告内容