首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

每天一道c语言编程题,第31题,数字的处理与判断

给出一个不多于5位的整数,分别求出它是几位数 ,输出每一位数字、按逆序输出每位数字。

#include

int main() {

  int num;

  printf("请输入一个不多于5位的整数:");

  scanf("%d", &num);

  // 求出它是几位数

  int count = 0, temp = num;

  while (temp > 0) {

      count++;

      temp /= 10;

  }

  printf("该数为%d位数\n", count);

  // 分别输出每一位数字

  int digits[count], i = 0;

  while (num > 0) {

      digits[i] = num % 10;

      num /= 10;

      i++;

  }

  printf("每一位数字分别为:");

  for (int j = count - 1; j >= 0; j--) {

      printf("%d ", digits[j]);

  }

  printf("\n");

  // 按逆序输出各位数字

  printf("按逆序输出各位数字为:");

  for (int j = 0; j < count; j++) {

      printf("%d", digits[j]);

  }

  printf("\n");

  return 0;

}

首先,该程序通过scanf函数从用户处获取一个输入整数num,并使用while循环来统计该整数的位数count。接着,程序使用另一个while循环从num中分离出每一位数字,并将它们存储在一个数组digits中。最后,程序分别输出了该数为几位数,每一位数字分别为多少以及按逆序输出各位数字。

总体来说,这段代码的主要作用是将一个整数拆分成其各位数字,并输出相应的信息。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230315A03PIO00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券