m0_64007431 2021-11-16 20:22 采纳率: 100%
浏览 290
已结题

从高位开始隔位输出该整数的各位数字,每个数字后面有一个空格。要求,偶数只输出偶数位上数字,奇数只输出奇数位上数字

要求编写程序实现:对输入的一个整数,如果是偶数从高位开始逐位分割并输出它的偶数位数字;如果是奇数则从高位开始逐位分割并输出它的奇数位数字。 整数的个位对应数位1,十位对应数位2,百位对应数位3...
输入格式:

输入在一行中给出一个整型范围内的正整数N (N>10)。

输出格式:

从高位开始隔位输出该整数的各位数字,每个数字后面有一个空格。要求,偶数只输出偶数位上数字,奇数只输出奇数位上数字

  • 写回答

1条回答 默认 最新

  • CSDN专家-link 2021-11-16 20:33
    关注

    可以先循环求余将余数存储到一个数组,然后数组倒序输出就行了

    #include <stdio.h>
    int main()
    {
          int n,m=0,count=0;
          int a[10],js = 1,i;
          scanf("%d",&n);
          if(n%2==0)
                js = 0;
          while(n>0)
          {
              if(js)
              {
                  if(count%2==0)
                      a[m++] = n%10;
              }
              else
              {
                   if(count%2==1)
                      a[m++] = n%10;
              }
              n = n/10;
              count++;
          }
          for(i=m-1;i>=0;i--)
              printf("%d ",a[i]);
    
        return 0;
    
    }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 11月25日
  • 已采纳回答 11月17日
  • 创建了问题 11月16日