复数的四则运算
2016-03-18 00:46
375 查看
#include<stdio.h> #include<stdlib.h> void add_state(float a, float b, float x, float y) { float m = a + x; float n = b + y; if (n > 0) printf("%f+%fi\n", m, n); else printf("%f%fi\n", m, n); } void sub_state(float a, float b, float x, float y) { float m = a - x; float n = b - y; if (n > 0) printf("%f-%fi\n", m, n); else printf("%f%fi\n", m, n); } void mul_state(float a, float b, float x, float y) { float m = a*x - b*y; float n = a*y + b*x; if (n > 0) printf("%f+%fi\n", m, n); else printf("%f%fi\n", m, n); } void div_state(float a, float b, float x, float y) { float m = (a*x + b*y) / (x*x + y*y); float n = (-a*y + b*x) / (x*x + y*y); if (n > 0) printf("%f+%fi\n", m, n); else printf("%f%fi\n", m, n); } struct pluar { float real; float imag; char i; };
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> #include"windly.h" int main() { printf("**************两个复数之间的运算**************\n"); printf("请按照标准形式 a+bi 输入复数,其中a,b不可缺省\n"); struct pluar num1 = { 0 }; struct pluar num2 = { 0 }; char sym[2]; scanf("%f%f%s", &num1.real, &num1.imag, &num1.i); scanf("%s",sym); scanf("%f%f%s", &num2.real, &num2.imag, &num2.i); switch (sym[0]) { case '+': add_state(num1.real, num1.imag, num2.real, num2.imag); break; case '-': sub_state(num1.real, num1.imag, num2.real, num2.imag); break; case '*': mul_state(num1.real, num1.imag, num2.real, num2.imag); break; case '/': div_state(num1.real, num1.imag, num2.real, num2.imag); break; default: printf("NULL"); break; } system("pause"); return 0; }
相关文章推荐
- java---servlet学习笔记
- 《Linux内核分析》--扒开系统调用的三层皮 20135311傅冬菁
- BZOJ 3172:后缀数组
- 事务隔离级别
- 使用动态内存求解任意矩阵的乘法
- Hive 官方手册学习(一) Hive命令行
- 开发笔记- iOS监听某些事件的方法简单梳理
- Java ActiveMQ 讲解(一)理解JMS 和 ActiveMQ基本使用(转)
- Monkey API学习与脚本编写小记
- CheckBoxList取值与初始化
- MongoDB一些进阶操作(索引,批量操作,分片)
- make
- 【Three.js】入门-坐标系精讲
- No.1小白的HTML+CSS心得篇
- 在Java 线程中返回值的用法
- ASP.NET Core 1.0 中 EntityFramework 与 PostgreSQL 的使用
- 16.03.18 【练习】利用RANDOM生成10个随机数,并找出其中的最大值和最小值。
- DOM-元素的内容、属性、样式
- Mac 升级到php56 ,手动启动mysql56方法
- java多线程的一个案例