c语言编程序 二维数组 输出数字三角形

要用二维数组int a[ i ] [ j ] ,for循环: 输入两个自然数s,n (n<=9)s为首数字 n为行数 输出这样的三角形(第一行为s ,第二行为s+1 s+2,第三行为s+3 s+4 s+5,以此类推 )
如:s=3 n=3 输出
3
4 5
6 7 8
(拜托大大们了,真的很急)尽量简单点

#include<stdio.h>
main()
{
int i,j,l,m,n;
scanf("%d%d",&m,&n);
printf("\n\n");
for(i=1;i<=n;i++)
{
for(j=0;j<i;j++)
{l=m+i+j;
printf("%d ",l);
}
printf("\n");
m=m+i;
}}
第一步输入scanf("%d%d",&m,&n);m代表首字母即为起始数字,n代表行数,再跳两行 printf("\n\n"); 接着 for(i=1;i<=n;i++)用I做变量控制行数就是I每次循环后自加等于行数n,在一重循环里面 再来一个循环控制每个数相加for(j=0;j<i;j++)而且输出下三角,则j<i,l=m+i+j;是l等于行数加列数再加上你的起始数m,输出l,执行完内循环后即一行跳出,换行,再次执行, m=m+i;行数增加用m来保留增加的行数,,,不知你懂了没有
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-03-09
#include<stdio.h>

int main()
{
    int i,j,c=0;
    int s,n;
    scanf("%d%d",&s,&n);
    for(i=1;i<=n;i++)
    {
        for(j=0;j<i;j++)
            printf("%d ",s+c+j);
        printf("\n");
        c+=i;
    }
}

追问

那个。。。 看起来没有老师要的类似a[ i ] [ j ]的二维数组

追答#include<stdio.h>
int main()
{
    int i,j,c=0;
    int a[9][9];
    int s,n;
    scanf("%d%d",&s,&n);
    for(i=0;i<n;i++)
    {
        for(j=0;j<=i;j++)
            a[i][j]=s+c+j;
        c+=i+1;
    }
    for(i=0;i<n;i++)
    {
        for(j=0;j<=i;j++)
            printf("%d ",a[i][j]);
        printf("\n");
    }
}

你们老师还真能折腾,看看这个。

追问

不该是int a[10][10]吗?老师好像说最后一个不能用的 所以要9+1吧

追答

题目要求只需要9行,a[9][9]就够了。

本回答被提问者和网友采纳
第2个回答  2013-06-20
#include<stdio.h>
main()
{
int s, n, a, c, b;
printf("输入s:");
scanf("%d", &s);
printf("输入n:");
scanf("%d", &n);
for (a = 0; a <= 4; a++)
{
printf("%d", s);
for (b = 1; b <= a; b++)
{
s = s + 1;
printf("%5d", s);
}
s = s + 1;
printf("\n");
}
}祝你愉快!
第3个回答  2013-06-19
for (int i = 0 ;i < n ;i++)
{
for (int j = 0 ;j < s;j++)
{
cout << a[i][j];

}
cout << endl;

}

不知到你是不是这个意思