C语言 从低位开始取出整型变量s中从右开始数奇数位上的数,依次构成一个新数放在t中?

(例:输入s为54321,得到t为135)设计子函数 int GetData (int n),不要在子函数中输出,在主函数中输出。
2026年09月20日 05:09
有2个网友回答
网友(1):

#include


int GetData(int n) {

  int t = 0, flag = 1;

  while (n) {

    if (flag) {

      t *= 10;

      t += n % 10;

    }

    n /= 10;

    flag = !flag;

  }

  return t;

}


int main(void) {

  int n;

  printf("n = ");

  scanf("%d", &n);

  printf("t = %d", GetData(n));

  return 0;

}

网友(2):

#include

int GetData (int n)
{
int t = 0;
while (n > 0)
{
t = t * 10 + n % 10; /* 整数对10求余数就是个位上的数 */
n /= 100;
}
return t;
}

int main(int argc, char *argv[])
{
int n;
scanf("%d", &n);
int t = GetData(n);
printf("%d\n", t);
return 0;
}