复数数组形如complex[(1,0),(2,0)]输出实部1,2应该怎么输出?

没有定义实部与虚部,仅仅想输出如上所定义数组的实部,1,2,这种,应该怎样输出,求大神指点!急求!

"complex[(1,0),(2,0)]"是什么,来自一个字符串么?那么可以用正则表达式提取。

你到现在为止,连你用的语言都没说。好像你的问题你自己都不关心,只是随便一扔就不管了一样。

你是不是用一个二维数组来存储复数数据?这样的输出实部是很容易的呀

#include "math.h"
#include
#include
#include
using namespace std;
void DFT(complex a,complex b[],int N)
{
for (int k=0;k {
b[k]=complex(0,0);
for(int n=0;n {
complexY = complex(0,(2*3.141592654*k*n/N));
b[k]=b[k]+(a*(exp(Y)));
}
}
}
//主函数
int main()
{

complex x=complex(1,0);
complex y[100];
DFT(x,y,100);
for(int k=0;k<100;k++)
{

ofstream fout("F:\data90.txt");//在F盘建立txt文件
for (int k=0; k<N; k++)
fout<<"\n"<<y[k];//写入y[k],只想输出它的实部
fout.close();

}
}

你的complex是个什么样的类?实部不就是类中的一个参数吗?
你输出的时候直接输出这个参数不就行了,比如complex.x

贴代码要用这里编辑器工具栏上</>按钮,你看你贴完不管了。你的代码丢了字符根本残缺不全没发现么?自始至终我没看到你对你自己负责任过。

没有定义类,怎么干呢?

这是个复数类还是复数结构?

```#include "math.h"
#include
#include
#include
using namespace std;
void DFT(complex a,complex b[],int N)
{
for (int k=0;k {
b[k]=complex(0,0);
for(int n=0;n {
complexY = complex(0,(2*3.141592654*k*n/N));
b[k]=b[k]+(a*(exp(Y)));
}
}
}
//主函数
int main()
{
complex x=complex(1,0);
complex y[100];
DFT(x,y,100);
for(int k=0;k<100;k++)
{
ofstream fout("F:\data90.txt");//在F盘建立txt文件
for (int k=0; k<N; k++)
fout<<"\n"<<y[k];//写入y[k]
fout.close();

}
}