C语言任意输入一个有五位数字的正整数,逆序输出每一数位上的数字 如输入12345 输出5 4 3 2 1
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言任意输入一个有五位数字的正整数,逆序输出每一数位上的数字 如输入12345 输出5 4 3 2 1相关的知识,希望对你有一定的参考价值。
参考技术A输入一个整数,将其每位剥离,并记录在一个数组中,此时每位数即是逆序排列的。
#include <stdio.h>#define ARRAY_LEN 100 /*数组长度*/
void numToDigit (int num, int arr[]) /*将数字按位剥离并存储在数组中,该算法剥离出的每位数即是逆序排列的*/
int i,j,n;
for (i = 0, n = num; n>0; i++)
arr[i] = n%10; /*除以10取余数,以取出最后一位数字*/
n = n/10; /*除以10取整数,以丢弃最后一位数字*/
arr[i+1] = '\\0'; /*数组结束符号,便于后续统计位数*/
int digitCount (int arr[]) /*统计位数*/
int i,count;
for (i = 0, count = 0; arr[i] != '\\0'; i++)
count++;
return count;
void printArr (int arr[], int len) /*打印数组*/
int i;
for (i = 0; i<len; i++)
printf("%d\\t",arr[i]);
printf("\\n");
int main(void)
int num,len,arr[ARRAY_LEN];
printf("请输入一个正整数:\\n");
scanf("%d",&num);
printf ("======================================================\\n\\n");
printf("每一位数字逆序输出:\\n");
numToDigit (num, arr);
len = digitCount (arr);
printArr (arr, len);
return 0;
执行结果
输入一个4位数的正整数,编程逆序输出这个数?
输入4位的正整数,可以将其不断取商,取出四位数存在数组里,然后反系输出即可。 参考技术A c++:int num;
cin >> num;
if (num > 9999 || num < 1000)
//这里处理输入格式错误的情况
string str = to_string(num);
for (int i = str.size() - 1; i > -1; --i) cout << str[i];
以上是关于C语言任意输入一个有五位数字的正整数,逆序输出每一数位上的数字 如输入12345 输出5 4 3 2 1的主要内容,如果未能解决你的问题,请参考以下文章
2.给一个不多于5位的正整数,要求: ①求出它是几位数; ②分别输出每一位数字 ③按逆序输出各位数字。
给定一个不多于5位的正整数,求它是几位数并且按逆序分别输出每一位数字的C语言程序如何编写?
编写程序,输入一个不多于5位的正整数,要求:(1)输出它是几位数; (2)分别输出每一位数字?
给定一个不多于5位的正整数,要求:① 求它是几位数;② 分别打印出每一位数字;③ 按逆序打印出各位数