» 首页 » 电脑_数码 » 编程 » 这是一个矩阵,为什么会多输出呢.

这是一个矩阵,为什么会多输出呢.

#include<iostream>
#include <iomanip>
#include<fstream>
#include<string>
#include<stdio.h>
using namespace std;
const int maxsize=100;
const int maxrow=10;
const int OK=1;
const int ERROR=0;
typedef struct {
int i, j;
int e;
}Ttrible;

typedef struct {
int mu,nu,tu;
Ttrible data[maxsize+1];
int rpos[maxrow+1];
}TSMatrix;




/*创建一个新稀疏矩阵*/
int main()
{
TSMatrix T;
FILE *fp;
int i=1,j=1;
int k=0;
int m=1;
char str[20];
int t;
char ch;
fp=fopen("sparsematrix.txt","r");
while((ch=fgetc(fp))!=EOF)
{


if((ch!='\n')&&(ch!=' '))


{
str[k++]=ch;

}//写入字符串
else
{

str[k]='{ask}';
k=0;
t=atoi(str);

T.data[m].e=t;
T.data[m].i=i;
T.data[m].j=j;
if(ch==' ')
{
j++;
}
else if(ch=='\n')
{
i++;
j=1;
}

cout<<T.data[m].e<<T.data[m].i<<T.data[m].j<<endl;///*/

}
/*如果不为0先处理
字符串清空*/




for(m=1;m<maxsize+1;m++)
{
if(T.data[m].e!=0)
{

//cout<<T.data[m].e<<T.data[m].i<<T.data[m].j<<endl;
}

}


}


return OK;
}


这个程序在遇到空格和换行时就会输出两次是为什么呢?
问题补充:12 0 0 0 0 0 0
0 0 0 1 0 0 0
0 0 0 0 2 0 0


是你的数据有问题!
最后一个0的后面还有个空格,然后才回车的!

是你的数据有问题!
最后一个0的后面还有个空格,然后才回车的!

卖糕的,俺不懂

 相关问题
·这是一个矩阵,为什么会多输出呢.
·怎么在当前焦点处输出一段文本?
·易语言如何让cmd运行后然后加上ping的参数?
·我想做个点一下就展开,再点一下就折叠的按钮,(功能跟q...
·用易语言写想QQ一样功能的截图
·Exception occots at CChildFrame::OnClocs
·将dataset中的数据一次性插入数据库
·请MATLAB高手帮我看下程序
·PHP语法 求教
·关于asp中使用js的onchange的请教,谢谢
·关于asp 开发wap的问题
·今年河南农信社考试为什么到现在面试名单还不出台?
·delphi 中chart的用法
·上楼梯,一次可以上1梯也可以上2梯,上到n层时有几种方法...
·20分求助:点击过的超链接变色问题

 《这是一个矩阵,为什么会多输出呢.》答案收集时间:2008-06-14 14:32:45



©2007 电脑技术问答录