#include<iostream>
#include<iomanip>
using namespace std;
int main()
{const int M=10;
int x[M][M],m,a,b,c;
cout<<"请输入m值";
cin>>m;
x[0][0]=m;
for(a=1,b=m-1;b>0;a++,b--)
{x[a][a]=x[a-1][a-1]+b;}
while(b<9)
{b=1;
for(a=0,b;a<m;a++,b++)
{x[a][b]=x[a][a]-b;}
b++;}
for(a=0;a<m;a++)
{for(b=0;b<m;b++)
{if(x[a][b]>0)
{cout<<x[a][b]<<" ";}
cout<<endl;}}
}

while循环内每次都将b赋值为1,导致其到不了9,死循环。移到while之前就行
我帮你看一下
可以说一下你想实现什么功能吗,或者这个的题目是什么