版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
./运用C语言编写复数的四则运算需求分析设计一个可进行复数运算的演示程序实现下列六种基本运算:〔1由于输入的实部和虚部生成一个复数;〔2两个复数求和;〔3两个复数求差;〔4两个复数求积;〔5从已知复数中分离出虚部。运算结果一相应的复数或实数的表示形式显示。3.程序执行的命令包括:a.输入数据生成一个复数b.求复数和c.求复数差d.求复数积〔1建立一个复数,然后根据提示用户输入两个复数,使得能同时进行两个复数的加.减.乘运算。输入形式和输入值得范围:分别输入两个复数,其格式为:a+bi用enter结束输入。输出形式:按程序规定输出其运算值。如:运算后只有实数时只输出实数虚部部分不表示,反之一样5.测试程序〔10,0;0,0;应输出"0"〔23.1,0;4.22,8.9;应输出"7.32+i8.9"-1.33,2.34;0.1,-6.5;应输出"-1.23-i4.16"0,9.7;-2.1,-9.7;应输出"-2.1"7.7,-8;-7.7,0;应输出"-i8"概要分析为实现上述程序的功能,需要定义一个表示复数的抽象数据类型。本程序包含的函数:〔1主函数main〔;构造函数typedefstruct〔;调用函数ComplexcreateComplex<floata,floatb>Complexadd<Complexz1,Complexz2>Complexjian<Complexz1,Complexz2>Complexcheng<Complexz1,Complexz2>voidprintComplex<Complexz>;各函数关系如下:主函数伪代码main<>{说明一个构造函数Complex;定义两个实数和虚数分别为z1,z2;提示输入实数和虚数z1,z2;调用子函数;提示输入+-*;根据输入的符号判断输入的复数做何运算{输入+时,调用加法子函数,打印输出;输入-时,调用加法子函数,打印输出;输入*时,调用加法子函数,打印输出;}}详细设计主函数及其他函数#include<stdio.h>#include<math.h>typedefstruct{ floatre; floatim;}Complex;ComplexcreateComplex<floata,floatb>//编写一个函数生成复数//{ Complexz; z.re=a; z.im=b; returnz;}voidprintComplex<Complexz>//输出复数并控制其格式//{ if<z.re==0&&z.im==0> printf<"0\n">; elseif<z.re!=0&&z.im==0> printf<"%.2f\n",z.re>; elseif<z.re==0&&z.im!=0> { if<z.im>0> printf<"i%.2f\n",z.im>; elseif<z.im<0> printf<"-i%.2f\n",fabs<z.im>>; } else { if<z.im>0> printf<"%.2f+i%.2f\n",z.re,z.im>; else printf<"%.2f-i%.2f\n",z.re,fabs<z.im>>; }}Complexadd<Complexz1,Complexz2>{ Complexz; z.re=z1.re+z2.re; z.im=z1.im+z2.im; returnz;}Complexjian<Complexz1,Complexz2>{ Complexz; z.re=z1.re-z2.re; z.im=z1.im-z2.im; returnz;}Complexcheng<Complexz1,Complexz2>{ Complexz; z.re=z1.re*z2.re-z1.im*z2.im; z.im=z1.re*z2.im+z1.im*z2.re; returnz;}main<>{ floata,b,c,d; Complexz1,z2,c1,c2,c3; printf<"请输入元素">; scanf<"%f%f%f%f",&a,&b,&c,&d>;//输入元素并调用函数生成复数z1,z2;并输出// z1=createComplex<a,b>; z2=createComplex<c,d>; printf<"产生的两个复数为:">; printComplex<z1>; printComplex<z2>; c1=add<z1,z2>; c2=jian<z1,z2>; c3=cheng<z1,z2>; printf<"这两个复数的和差积:">; printComplex<c1>; printComplex<c2>; printComplex<c3>;}调试及分析由于开始对于结构体使用并不熟悉,使用时语法错误很多,需要多加使用。编写是输入printf拼写错误〔漏掉后面的f导致该程序无法执行在使用"&&"符号是漏些了一个&符号,这点需要常记。对于声明的函数使用不熟练,在编写时对于其中的循环
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026育龙教育数学真题+答案 刷完直接提30分
- 2024幼师同工同酬笔试突击刷题包附完整答案解析
- 2026年讲解员技能测试题及答案
- 2026年程序设计基础测试题及答案
- 2024年化工厂维修工五险二金岗笔试题及答案 必考题型
- 2021营养学会考试懒人备考神器模拟题及速查答案
- 2021建设工程监理高频易错测试题及答案解析
- 江苏南京市鼓楼区南京民办求真中学2025-2026学年八年级下学期第一次学情自测数学卷(含解析)
- 专利收益分红合作协议书
- 银行与政府战略协议书签署
- 山西省吕梁市2025-2026学年高三第二次模拟调研测试生物+答案
- 2026山东青岛海上综合试验场有限公司招聘38人备考题库含完整答案详解(全优)
- 大型赛事活动安保服务方案投标文件(技术标)
- 施工工地员工考核管理制度(3篇)
- 医院耗材监督考核制度
- 2025特变电工校园招聘200人笔试历年常考点试题专练附带答案详解2套试卷
- 2026年山东潍坊市高三一模高考生物模拟试卷(含答案详解)
- 玉林介绍教学课件
- 中建塔式起重机拆卸专项施工方案
- 2026年东莞市厚街控股集团有限公司招聘14名工作人员备考题库含答案详解
- 《DLT 2976-2025柔性低压直流互联装置技术规范》专题研究报告
评论
0/150
提交评论