为什么我用多次输出不可以

Description

有天小C在操作excel,他发现一个有意思的事情:对数字单元进行下拉可以得到递增的序列,对含有数字的单元格同样有效果。

作为一名立志成为ACM大牛的小C开始思考如何用C语言实现这个功能。那么作为ACMer的你会选择怎么来实现这个功能呢?

Input

每组测试数据有一行,一个含有英文字母和数字的字符串和一个整数m,m表示下拉m个单元格。

Output

输出m+1行,表示下拉m个单元格的结果。

Sample Input

abc123de 3
Sample Output

abc123de
abc124de
abc125de
abc126de



#include<stdio.h>
int main()
{
    char ch[200];
    int m;
    scanf("%s",ch);
    scanf("%d", &m);
    while (m--)
    {
        printf("%s\n", ch);
    }
    printf("%s\n", ch);
    return 0;
}

代码修改如下:

#include <stdio.h>
#include <stdlib.h>
int main()
{
    char ch[200]={0};
    char pre[200]={0}; //数字前面的数据
    char nmb[10]={0}; //暂存数字
    char next[200]={0}; //数字后面的数据
    int m;
    int i=0,j=0,k=0,t=0,n;
    int flag = 1;
    scanf("%s %d",ch,&m);
    
    while(ch[i])
    {
        if(ch[i] >= '0' && ch[i] <='9')
        {
            nmb[j++] = ch[i];
            flag = 0;
        }
        else
        {
            if(flag == 1)
                pre[t++] = ch[i];
            else
                next[k++] = ch[i];
        }
        i++;
    }
    n = atoi(nmb); //得到数字
    for (i = 0;i<=m;i++)
    {
        printf("%s%d%s\n",pre,n,next);
        n++;
    }
    return 0;
}

你只是把同一个串输出了m遍而已,中间的数字是不会变的

你这也不对啊

兄弟,用过excel表的下拉功能没有,你先把题看明白了再去做