?? 復(fù)數(shù)運算.txt
字號:
#include "stdio.h"
#include "math.h"
typedef struct{
float x;
float y;
}num;
void menu(){
printf("*****************請選擇功能*****************\n");
printf("* 1.生成復(fù)數(shù) *\n");
printf("* 2.復(fù)數(shù)求和 *\n");
printf("* 3.復(fù)數(shù)求差 *\n");
printf("* 4.復(fù)數(shù)求積 *\n");
printf("* 5.分離實部和虛部 *\n");
printf("* 6.退出 *\n");
printf("********************************************\n");
}
num Init(){
num n;
printf("請輸入實部:\n");
scanf("%f",&n.x);
printf("請輸入虛部:\n");
scanf("%f",&n.y);
return n;
}
void produce(num a)
{
if(a.y<0)printf("%f-i%f\n",a.x,-a.y);
else printf("%f+i%f\n",a.x,a.y);
}
void add(num a,num b)
{
num c;
c.x=a.x+b.x;
c.y=a.y+b.y;
if(c.y<0)printf("%f-i%f\n",c.x,-c.y);
else printf("%f+i%f\n",c.x,c.y);
}
void sub(num a,num b)
{
num c;
c.x=a.x-b.x;
c.y=a.y-b.y;
if(c.y<0)printf("%f-i%f\n",c.x,-c.y);
else printf("%f+i%f\n",c.x,c.y);
}
void mult(num a,num b)
{num c;
c.x=a.x*b.x-a.y*b.y;
c.y=a.x*b.y+a.y*b.x;
if(c.y<0)printf("%f-i%f\n",c.x,-c.y);
else printf("%f+i%f\n",c.x,c.y);
}
void fengli(num a,num b)
{
printf("第一個復(fù)數(shù)的實部為:%f\n",a.x);
if(a.y<0)
printf("第一個復(fù)數(shù)的虛部為:-i%f\n",-a.y);
else
printf("第一個復(fù)數(shù)的虛部為:i%f\n",a.y);
printf("第二個復(fù)數(shù)的實部為:%f\n",b.x);
if(b.y>0)
printf("第二個復(fù)數(shù)的虛部為:i%f\n",b.y);
else
printf("第二個復(fù)數(shù)的虛部為:-i%f\n",-b.y);
}
void main()
{num a,b;int t;
a=Init();
b=Init();
while(t!=6)
{
menu();
scanf("%d",&t);
switch (t)
{case 1: produce(a); produce(b);break;
case 2:add(a,b);break;
case 3:sub(a,b);break;
case 4:mult(a,b);break;
case 5:fengli(a,b);break;
case 6:break;
default :printf("此選擇無效!\n");
}
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -