好一个迷途小书童 2016-04-18 07:41 采纳率: 11.1%
浏览 1888
已采纳

奇数和偶数分离的问题 求大神 指点 提交不上去

#include //我感觉思路已经很清晰了
int main()
{
int array[10];

int arrayOdd[10][20];

int arrayEven[10][20];

int m , n , i , j , m1 , l = 0 , n1;

int Kodd=0,Keven=0;

scanf("%d",&m);

n1 = m;

for( i = 1; i <= m; i++)
{
    scanf("%d",&array[i]);
}

while(m)//这次的运行结果少了1和2 
{
    for( i = 1; i <= array[m]; i++)//就是一和2消失了 
    {
        if(i%2==0)
        {
            arrayEven[m][Keven]=i;
            Keven++;
            //printf("%d ",arrayEven[m][Keven]); 
        }
        if(i%2!=0)
        {
            arrayOdd[m][Kodd]=i;
            Kodd++;
            //printf("%d ",arrayOdd[m][Kodd]);
        }
    }

    Kodd=0,Keven=0;

    m--;    
}
for( i = 1; i <= n1;i++)//看来问题出来了输出这里,输入我并没有发现此物都很符合逻辑 
{
    for( j = 0 ;j < array[i]/2 ; j++)
    {
        printf("%d ",arrayOdd[i][j]);
    }
    printf("\n");
    for(j = 0;j < array[i]/2-1;j++)
    {
        printf("%d ",arrayEven[i][j]);
    }
    printf("%d",arrayEven[i][array[i]/2-1]); 
    //printf("\n");
    l++;
    if(l < n1)
    {

    printf("\n");

    }
    if(i<n1)
    printf("\n"); 
}

// printf("\n");

return 0;//,为什么一直在输出格式这里面搞事? 

}//嗯 还差了 一个 空格的问题

  • 写回答

6条回答

  • 林深 2016-04-18 08:13
    关注

    测试数据:
    2
    1000
    10000

    输出的答案就不对了,你的数组开太小了,,而且最后还少一个换行

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料