数字之间有符号,最后没有。如果是按照顺序的就不说了。

先看题

从这里可以看出输出的数字顺序不确定。

我目前的思路是将要打印的(无顺序)数存到一个(有顺序)数组里面。

如下代码:

#include<stdio.h>
#define num 5000
int main()
{
    int a[num],b[num],t=0,c[num]={0};
    int n,m;
    scanf("%d%d",&n,&m);
    for(int i=0;i<n;i++){
        a[i]=-(i+1);
    }
        for(int i=0;i<m;i++){
        b[i]=-(i+1);
    }
    for(int j=0;j<m;j++){
        for(int i=0;i<n;i++){
            if(a[i]==(a[i]/b[j])*b[j]){
                a[i]=-a[i];
            }
        }
        }
        for(int i=0;i<n;i++){
            if(a[i]>0){
            c[t]=a[i];
            t++;
            }
        }
        printf("\n");
        for(int i=0;i<t;i++){
            if((t-1)!=i)
            printf("%d,",c[i]);
            else
            printf("%d",c[i]);
        }
        return 0;

}
最后修改:2020 年 10 月 30 日
如果觉得我的文章对你有用,请随意赞赏