请问是先输入矩阵A再输入向量x吗?我没做数据测试,你自己试一下看看可不可以,有问题我再改。
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#define maxn 100+5
using namespace std;
typedef long long LL;
struct Matrix{
int n,m;
int d[maxn][maxn];
Matrix (){ n=m=0;memset(d,0,sizeof(d)); }
Matrix operator * (const Matrix &T)const{
Matrix temp;
temp.n=n;temp.m=T.m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
for(int k=1;k<=T.m;k++)
temp.d[i][k]=temp.d[i][k]+d[i][j]*T.d[j][k];
return temp;
}
}A,x,c;
int val[maxn];
int main(){
freopen("f.txt","r",stdin);
freopen("f2.txt","w",stdout);
A.n=A.m=100; x.n=100; x.m=1;
for(int i=1;i<=100;i++)
for(int j=1;j<=100;j++)
scanf("%d",&A.d[i][j]);
for(int i=1;i<=100;i++)
scanf("%d",x.d[i][1]);
c=A*x;
for(int i=1;i<=100;i++)
val[i]=c.d[i][1];
sort(val+1,val+101);
for(int i=1;i<=100;i++)
printf("%d ",val[i]);
return 0;
}
追问顺序是随意的 先读取哪个都可以😂
追答那你测试一下我这个程序吧,我是先读取A再读取x的。
追问请问这是C++的程序吗 我怎么感觉输入输出不太一样啊QAQ
追答这是C++的程序……什么叫输入输出不太一样?你把错误的数据给我看看,我再改改。
追问我说的是语法
追答这是c++啊,难道语法不一样吗……你用的cin……?
还有我第37行要改成scanf("%d",&x.d[i][1]);
你用c++的编译器是肯定可以编译通过的
追问没问题 我刚刚查了查😂 感谢感谢!采纳了!