C语言复数的运算(实验报告).doc_第1页
C语言复数的运算(实验报告).doc_第2页
C语言复数的运算(实验报告).doc_第3页
C语言复数的运算(实验报告).doc_第4页
C语言复数的运算(实验报告).doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验报告题目:复数的四则运算班级: 13信管 姓名:白浩然 学号:201340403034 完成日期:2014.05.21 一、需求分析1本演示程序中复数由两个相互之间存在次序关系的实数构成。2演示程序以用户和计算机的对话方式执行,即在计算机终端上显示“提示信息”之后,由用户在键盘上输入演示程序中规定的运算命令;相应的输入数据和运算结果显示在其后。3程序执行的命令包括:1)由输入的实部和虚部生成一个复数;2)两个复数求和;3)两个复数求差;4)两个复数求积;5)从已知复数中分离出实部;6)从已知复数中分离出虚部。4.测试数据:1)构造复数:2) 复数求和:3) 复数求差:4) 复数求积:5) 提取实部:6) 提取虚部:2、 编码实现#include stdio.h#include stdlib.hstruct complexfloat real;/实部float imag;/虚部;/构造复数void InitComplex(complex &c,float r1,float r2)c.real=r1;/r1为实部c.imag=r2;/r2为虚部/复数求和void AddComplex(complex &c,complex c1,complex c2)c.real=c1.real+c2.real;/实部相加c.imag=c1.imag+c2.imag;/虚部相加/复数求差void SubComplex(complex &c,complex c1,complex c2)c.real=c1.real-c2.real;/实部相减c.imag=c1.imag-c2.imag;/虚部相减/复数求积void MulComplex(complex &c,complex c1,complex c2)c.real=(c1.real*c2.real)-(c1.imag*c2.imag);c.imag=(c1.real*c2.imag)+(c2.real*c1.imag);/分离实部void RealComplex(complex c,float &r)r=c.real;/分离虚部void ImagComplex(complex c,float &r)r=c.imag;/主程序void main()complex c,c1,c2;float r,r1,r2,r11,r22,r12,r21;int node;printf(请输入要操作的序号:n);printf(1.构造一个复数 2.两个复数求和 3.两个复数求差n);printf(4.两个复数求积 5.分离出实部 6.分离出虚部n);scanf(%d,&node);while(node!=0)switch(node)case 1:printf(输入复数的实部和虚部:n);scanf(%f %f,&r1,&r2);InitComplex(c,r1,r2);printf(构造的复数为:%f+%fin,c.real,c.imag);break;case 2:printf(输入c1的实部和虚部:n);scanf(%f %f,&r11,&r12);InitComplex(c1,r11,r12);printf(输入c2的实部和虚部:n);scanf(%f %f,&r21,&r22);InitComplex(c2,r21,r22);AddComplex(c,c1,c2);printf(结果为:%f+%fin,c.real,c.imag);break;case 3:printf(输入c1的实部和虚部:n);scanf(%f %f,&r11,&r12);InitComplex(c1,r11,r12);printf(输入c2的实部和虚部:n);scanf(%f %f,&r21,&r22);InitComplex(c2,r21,r22);SubComplex(c,c1,c2);printf(结果为:%f+%fin,c.real,c.imag);break;case 4:printf(输入c1的实部和虚部:n);scanf(%f %f,&r11,&r12);InitComplex(c1,r11,r12);printf(输入c2的实部和虚部:n);scanf(%f %f,&r21,&r22);InitComplex(c2,r21,r22);MulComplex(c,c1,c2);printf(结果为:%f+%fin,c.real,c.imag);break;case 5:printf(输入复数的实部和虚部:n);scanf(%f %f,&r1,&r2);InitComplex(c,r1,r2);RealComplex(c,r);printf(实部为:%fn,r);break;case 6:printf(输入复数的实部和虚部:n);scanf(%f %f,&r1,&r2);InitComplex(c,r1,r2);ImagComplex(c,r);printf(虚部为:%fn,r);break;default:printf(结束);scanf(%d,node);3、 调试

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论