帮帮我啊,好郁闷哦
懂c++的帮帮我啊为什么给浮点性设置了两个有效位数后,输入一些数据进行运算后会有科学计数法的呢
像2e++8这样的,是不是我的程序哪里写错了
我用的是setprecision函数
浮点输出,setprecision(n)表有效位数。
定点输出(setiosflags(ios::fixed)),setprecision(n)表小数点后数字位数。
指数形式输出中(setiosflags(ios::scientific)),setprecision(n)表小数位数。
不明白也,能不能详细说一说啊
这是我的代码:
错在哪里????
void main()
{n=4;
cout<<"请输入基向量 bb["<<n-1<<"]["<<n-1<<"]:\n";
for(i=1;i<=n-1;i++)
{for(j=1;j<=n-1;j++)
cin>>bb;
cout<<'\n';}
void computertb() //求逆矩阵tb[]
{ for(i=1;i<=n-1;i++)
{for(j=n;j<=2*n-2;j++)
{if (i==j-n+1) bb=1;
elsebb=0;
}}
for(i=1;i<=n-1;i++)
{if(bb!=1)
{for (j=i+1;j<=2*n-2;j++) bb=bb/bb;
bb=1;}
for(k=i+1;k<n;k++)
{if(bb!=0)
{for(j=i+1;j<=2*n-2;j++) bb=bb-bb*bb;
bb=0;
}}}
for(i=n-1;i>=1;i--)
{for(k=i-1;k>=1;k--)
if(bb!=0)
{for(j=n;j<=2*n-2;j++) bb=bb-bb*bb;
bb=0;
}
}
for(i=1;i<n;i++)
for(j=n;j<=2*n-2;j++)tb=bb;
for(i=1;i<=n-1;i++)
{for(j=1;j<= n-1;j++)
cout<<setfill(' ')<<setw(10)<<setprecision(2)<<tb;
cout<<'\n';
}}
代码如上:
输入:
1 2 -1
2 -2 1
1 -1 2
运行结果:
1 0 0 0.33 1 -1.3
0 1 0 0.33 -1 1.7
0 0 1 6e-008-1 2
<P>倒数第二行setprecision(2)</P><P>把2改大一点试试?</P> 不懂...............?????????
页:
[1]