注册 登录
编程论坛 C++教室

乘法口诀的排列问题

migen 发布于 2012-11-28 13:55, 315 次点击
程序代码:
#include <iostream>
#include <iomanip>
using namespace std ;
int main()
{
    int i,j;
    for(int i=1;i<=9;i=i++)
    {
    for(int j=1;j<=i;j=j++)
        cout<<j<<"*"<<i<<"="<<i*j<<"\t";
        cout<<endl;
    }
   
    system("pause");
    return 0;
}
   




这段代码编译出来是
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9

我想让他编译出来的时候变成
                     1*1=1
               2*2=4 1*2=2
         3*3=9 2*3=6 1*3=3
这样的排列方式该怎么修改程序呢?
2 回复
#2
azzbcc2012-11-28 15:20
加一个循环。。
程序代码:
#include <iostream>
using namespace std;
int main()
{
    int i, j, k;

    for (i = 1;i <= 9;i++)
    {
        k = 9 - i;
        while (k--)
            cout<<"\t";
   
        for (j = 1;j <= i;j++)
            cout<<j<<"*"<<i<<"="<<i*j<<"\t";
   
        cout<<endl;
    }

    system("pause");
    return 0;
}
#3
DYONGJ2012-11-28 18:41
程序代码:
#include<iostream>
#include<iomanip>
using namespace std;

int main()
{
   int i,j,m;
   for(i=1;i<10;i++)
   {
      m=9-i;
      for(j=1;j<=i;j++)
         cout<<setw(8*(m+j-1))<<i<<"*"<<j<<"="<<i*j;
      cout<<endl;
      }
      return 0;
}


1