当前位置:首页 » 编程语言 » c语言使用虚数
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言使用虚数

发布时间: 2022-06-26 03:05:16

㈠ 在编一元二次方程的c语言中出现虚数,怎么表示虚数i

是计算一元二次方程组的解吧。就是当delta<0时的解是虚数吧。可以直接在输出结果后面直接加上i就好了吧,以示区分,在编写一元二次方程的时候,结果是虚数的定义不是很重要吧。

㈡ c语言虚数乘法

#include<stdio.h>
voidxushu(inta,intb,intc,intd)
{
intnum1,num2;
num1=a*d+b*c;
num2=-(a*c)+b*d;
if(num2>0)
printf("(%di+%d)(%di+%d)=%di+%d",a,b,c,d,num1,num2);
else
printf("(%di+%d)(%di+%d)=%di%d",a,b,c,d,num1,num2);
}
intmain()
{
inta,b,c,d;
printf("inputnumber1: ");
scanf("%di+%d",&a,&b);
printf("inputnumber2: ");
scanf("%di+%d",&c,&d);
xushu(a,b,c,d);
}

㈢ 在c语言里,复数和虚数类型代表着什么意思该怎么用

对C语言本身没什么意义,C语言没有内置的向量。但你在处理图形或其他带有矢量计算的地方就需要使用复数,比如:做力学的模拟实验时进行力的合成等等,将某个图片进行旋转。

㈣ c语言虚数的四则运算高手帮帮忙!!!!

高手们帮帮忙吧
入门新手实在不会了
用结构体
做一个虚数的四则运算
写add,
subtract,
multiple,
divide四个函数
(麻烦帮忙写一下简单的说明)谢谢谢谢了a1
:
1+3ia2
:
5-3.5ia1
+
a2
=
6.0000
-
0.5000ia1
-
a2
=
-4.0000
+
6.5000ia1
*
a2
=
15.5000
+11.5000ia1
/
a2
=
-0.1477
+
0.4966i

㈤ 我有需要求一个函数的值,但是函数中有一个虚数i,我该怎么用C语言编写求函数值的程序

你可以定义一个结构体,结构体成员包括虚数的实部和虚部,虚部。分开来处理,实部简单,虚部首先考虑系数的处理,然后条件判断,每次遇到 i*i 就给系数乘以 -1,细节部分还要你自己去考虑。
这道题如果是C++的话可以直接用运算符重载来做!

㈥ 编程语言里虚数如何表示 最好是c语言里 谢谢啊

结构体

㈦ C语言解一元二次方程(包含虚数解)

表示虚数一般不用j表示,而是用i表示。输出的时候后面带上i就可以了。

判别式变量d为负时,用sqrt(-d)

形如ax²+bx+c=0的方程的完整程序如下:

#include<stdio.h>
#include<math.h>
voidmain()
{
floata,b,c,dlt;
printf("请输入a、b、c:");
scanf("%f%f%f",&a,&b,&c);
if(a)
{
dlt=b*b-a*c*4;
if(dlt>0)
printf("x1=%f x2=%f",(-b+sqrt(dlt))/(a*2),(-b-sqrt(dlt))/(a*2));
elseif(dlt<0)
printf("x1=%f+%fi x2=%f-%fi",-b/(a*2),abs(sqrt(-dlt)/(a*2)),-b/(a*2),abs(sqrt(-dlt)/(a*2)));
elseprintf("x=%f",-b/(a*2));
}
else
{
if(b)c?printf("x=%f",-c/b):printf("x=%f",abs(-c/b));
elsec?printf("方程无实数解"):printf("方程的解为任意实数");
}
}

㈧ 在C语言编程中怎么表示虚数,看了人家的可是不太懂,麻烦会的同学解决一下

看看数据结构,把它抽象出来,用结构体定义复数,然后写基本操作函数,如加减乘除,比较两数是否相等

㈨ c语言 虚数的四则运算 高手帮帮忙!!!!

回答的也太快了吧!我刚输完就有这么多了!
还好我这是纯c语言版。
输入数据是实属部分和虚数部分用逗号隔开。
#include <stdio.h>
#include <stdlib.h>
typedef struct
{
double real; /*实数部分*/
double vir; /*虚数部分*/
}COMPLEX;

COMPLEX add(COMPLEX a,COMPLEX b);
COMPLEX substract(COMPLEX a,COMPLEX b);
COMPLEX multiple(COMPLEX a,COMPLEX b);
COMPLEX divide(COMPLEX a,COMPLEX b);

void printC(COMPLEX n)
{
if((n.vir - 0.00) < 0)
printf("(%.4lf%.4lfi)",n.real,n.vir);
else
printf("(%.4lf+%.4lfi)",n.real,n.vir);
}
void main()
{
COMPLEX a,b;
char c;
printf("input real and virtual of complex number a:");
scanf("%lf,%lf",&a.real,&a.vir);
fflush(stdin);
printf("input real and virtual of complex number b:");
scanf("%lf,%lf",&b.real,&b.vir);

c = '+';
printC(a); printf(" %c ",c); printC(b); printf(" = ");
printC(add(a,b));
putchar('\n');

c = '-';
printC(a); printf(" %c ",c); printC(b); printf(" = ");
printC(substract(a,b));
putchar('\n');

c = '-';
printC(a); printf(" %c ",c); printC(b); printf(" = ");
printC(multiple(a,b));
putchar('\n');

c = '/';
printC(a); printf(" %c ",c); printC(b); printf(" = ");
printC(divide(a,b));
putchar('\n');

system("pause");
}
COMPLEX add(COMPLEX a,COMPLEX b)
{
COMPLEX c;
c.real = a.real + b.real;
c.vir = a.vir + b.vir;
return c;
}
COMPLEX substract(COMPLEX a,COMPLEX b)
{
COMPLEX c;
c.real = a.real - b.real;
c.vir = a.vir - b.vir;
return c;
}
COMPLEX multiple(COMPLEX a,COMPLEX b)
{
COMPLEX c;
c.real = a.real * b.real - a.vir * b.vir;
c.vir = a.vir * b.real + a.real * b.vir;
return c;
}
COMPLEX divide(COMPLEX a,COMPLEX b)
{
COMPLEX c;
double den = b.real * b.real + b.vir * b.vir;
c.real = (a.real * b.real + a.vir * b.vir) / den;
c.vir = (a.vir * b.real - a.real * b.vir) / den;
return c;
}