C语言任意输入一个有五位数字的正整数,逆序输出每一数位上的数字 如输入12345 输出5 4 3 2 1

作者&投稿:敖看 (若有异议请与网页底部的电邮联系)
C语言任意输入一个有五位数字的正整数,逆序输出每一数位上的数字 如输入12345 输出5 4 3 2 1~

#include
usingnamespacestd;
intmain(){
intoriginal,key,result=0;
cout<<"PleaseEntertheNumber:"<<endl;
cin>>original;
do
{
key=original%10;
if(key==0)
{
cout<<"NewNumberis0"<<original;
//original=(original-key)/10;
}
else
{
result=key+result*10;//result需要移位
original=(original-key)/10;
//cout<<"NewNumberis"<<result;
}

}while(key!=0);//key=0是终止条件
cout<<"NewNumberis"<<result<<endl;
return0;
}

扩展资料
c++,输入一个整数值并输出此整数的各数字反序的数值

#include
usingnamespacestd;
voidfunc(int);
intmain()
{
intnum;
cout<<"输入一个整数:";
cin>>num;
func(num);
return0;
}
voidfunc(intn)
{
intcon=0;
while(n)
{
con=con*10+n%10;
n/=10;
};
cout<<"这个数的反序:"<<con<<endl;
}

#include int res[5] = {}; //外部变量 , 把每一位作为数组元素进行存储int *p = res;int main(){ int num = 12345; void ser(int);//分别输出每一位数字 ser(num); printf("
"); p = res + 4; //指针置于数组末尾 for(int i=0; i 9){ ser(number/10); //递归 } printf("%d ", number % 10); //顺序输出 *p = (int)number % 10; p++;}/* 程序的输出顺序为 10 -> 8 -> 6 -> 4 -> 2 递归步骤解释 1: 第一次执行ser函数,numbser = 12345判断数字大于9,将int(1234)再次执行函数 ps: (int)/(int) 结果为int 2: 待执行ser函数后,输出结果个位数 12345 % 10 = 5 3: 第二次执行ser函数....类比步骤1 4: 待递归执行ser函数,类比步骤2,输出十位个数 1234 % 10 = 4 5: 类比步骤1 6: 类比步骤2,输出百位个数 123 % 10 = 3 7: 类比步骤1 8: 类比步骤2,输出千位 12 % 10 = 2 9: 类比步骤1 10: number值为1,不再递归,直接输出万位 1 % 10 = 1 */
如有帮助,请点赞支持原创QVQ

输入一个整数,将其每位剥离,并记录在一个数组中,此时每位数即是逆序排列的。

#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",arr[i]);
printf("
");
}

int main(void) {
    int num,len,arr[ARRAY_LEN];
    
    printf("请输入一个正整数:
");
    scanf("%d",&num);
    printf ("======================================================

");

printf("每一位数字逆序输出:
");
numToDigit (num, arr);
len = digitCount (arr);
    printArr (arr, len);

    return 0;
}

执行结果




...由键盘输入10个整数存入数组a中,再任意输入一个整数k,然后在数组...
这样:include<stdio.h> define LEN 10 int main(void){ int a[LEN], i, k;int same = 0;puts("请输入10个整数:");for(i=0; i<LEN; i++)scanf("%d", &a[i]);while(getchar() != '\\n')continue;puts("再输入一个整数k");scanf("%d", &k);for(i=0; i<LEN; i++...

用C语言编写:从键盘输入任意一个正整数,求其各位数字立方和
本人也是学C语言的,以下的程序是按照你的要求编写的:#include <stdio.h> \/\/求输入数各位数的立方和 void main(){ int x,sum=0,j;printf("请输入一个正整数:");scanf("%d",&x); \/\/输入一个数 while(x!=0) \/\/判断X是否为零 { j=x%10; \/\/取个位数字 sum+=j*j*...

用c语言编程输入一个任意的正整数,这个正整数要求小于20。要求计算出...
void main(){ int i,j,num=0,n,flg;printf("输入任意小于20的正整数:\\n >>");scanf("%d",&i);while(i>=20||i<=0){ printf("Error!\\n请重新输入:\\n >>");scanf("%d",&i);} n=i*100;printf("\\n%d至%d之间的素数有:\\n",i,n);for(;i<n;i++){ if(i==1)cont...

用C语言编写程序,输入任意一个十进制的三位数,将它分别转化为五进制...
static char *FIFTNARY = "0123456789ABCDE";static char buff[10];char *toQuinary(int num);char *toOctonary(int num);char *toFifnary(int num);char *reverse(char *str);int main(void){ int flag = 1;int num = 0;int choice = 0;while(flag){ printf("请输入一个三位数:");...

求助:c语言程序设计 输入一个2-9之间任意一个数,然后利用循环嵌套,输出...
这个可以这样实现先读入一个数n,然后设计一个二重循环,外层循环从1一直到n,也就是一共输出有n行。然后内循环是从1开始,一直到本行的行数为止进行循环,每次执行内循环体就输出一个乘法等式,当内循环结束的时候进行换行。整个程序就实现了题目所规定的要求。main(){int i,j,n;scanf (“%d”,...

C语言。编写程序。输入任意一个字符串,删除指定位置的字符后输出该字符...
include <stdio.h>#include <string.h>char* DelCharFromString(char *str, int len, int pos);void main(){char str[100]; int pos; \/\/删除位置int len; \/\/字符串长度printf("请输入一个字符串:\\n");scanf("%s", str);len = strlen(str);printf("请输入要删除字符的位置:(0...

用c语言 输入一个任意位数,分离出最高位和最低位的数字
include <stdio.h>int main(void){ int num,i; printf("Enter a number:"); scanf("%d",&num); i=num; while(i\/10) i=i\/10; printf("最高位是:%d\\t最低位是:%d\\n",i,num%10); return 0;} ...

C语言,键盘输入一个2位以上的任意数,输出这个数的第m位开始,到第n位结...
该设计有两个思路,即对数据进行处理分离出各个位数,或将数据直接作为字符串读取进来对字符串进行分割。1、对数据进行处理 程序及运行结果如下:程序分析:该程序读取数据后通过除法运算分离出个位、十位?并依次存放在数组中,在通过循环将所需位数读取进来。程序基本满足要求,但计算量需要进行多次除法,...

C语言用递归法输入任意一个整数,在各位之间插入空格后输出。
void f(int n){ if(n>10)f(n\/10);printf(" %d",n%10);}

C语言编程序实现如下功能:输入任意一个日期的年、月、日的值,求出是...
简单,用蔡勒公式即可:include <stdio.h> int main (){ int y, m, d, c, w;printf ("输入年 月 日(空格间隔):");scanf ("%d %d %d", &y, &m, &d);if (m ==1 || m == 2) { \/\/判断月份是否为1或2 y--;m += 12;} c = y \/ 100;y = y - c * 100;w ...

阿拉尔市17137456694: C语言如何输入任意5位正整数然后让其按倒序输出 -
瞿平芩胆: #include<stdio.h> main() { int a[5],i; for(i=0;i<5;i++) scanf("%d",&a[i]); for(i=4;i>=0;i--) printf("%d ",a[i]); return 0; }

阿拉尔市17137456694: C语言任意输入一个有五位数字的正整数,逆序输出每一数位上的数字 如输入12345 输出5 4 3 2 1 -
瞿平芩胆: 思路:要想求一个整数的逆序,依次对其取余输出,再除10操作,直到该值等于0为止.参考代码: #include "stdio.h" int main() {int n;scanf("%d",&n);//键盘输入赋值while(n){//直达其为0为止printf("%d ",n%10);//对10取余n/=10;//除10操作}return 0; } /* 运行结果: 12345 5 4 3 2 1 */

阿拉尔市17137456694: C语言:输入一个五位数的正整数,按顺序输出组成该整数的各个数字. -
瞿平芩胆: 随便码了一个最简单的,有需求再追问#includeint main(){ int dat[5]; printf("Please Enter 5 Data\n"); scanf("%d,%d,%d,%d,%d",&dat[0],&dat[1],&dat[2],&dat[3],&dat[4]); printf("%d,%d,%d,%d,%d",dat[4],dat[3],dat[2],dat[1],dat[0]); getch(); return 0;}希望能帮助你.

阿拉尔市17137456694: C语言编程,任意输入一个五位正整数,逆序输出每一位上的数 如输入5432 -
瞿平芩胆: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15#include <stdio.h> main() {intabcde,s[5],i;intflag=1;scanf("%d",&abcde);s[0]=abcde/10000;s[1]=abcde%10000/1000;s[2]=abcde%1000/100;s[3]=abcde%100/10;s[4]=abcde%10;thinking.... }

阿拉尔市17137456694: 输入一个五位的正整数,求各位数字之和 怎么用C语言写 -
瞿平芩胆: #include<stdio.h> main() {int a,b,c,d,e,n;printf("请输入一个五位数:");scanf("%d",&n);a=n/10000;n=n%10000;b=n/1000;n=n%1000;c=n/100;n=n%100;d=n/10;n=n%10;e=n;printf("五个位数之和为:%d\n",a+b+c+d+e); } 这个答案够简单了吧,一目了然!!!

阿拉尔市17137456694: c语言问题求助 求思路输入一个不多于5位数的正整数,要求:①求出它是几位数?②分别打印出每一位上的数字;③按逆序打印出该数字;④能够处理负数... -
瞿平芩胆:[答案] #include "stdio.h" void main() { char str[100]; int i; gets(str); printf("长度为%d\n",strlen(str)); for(i=0;iprintf("%-2c",str[i]); printf("\n"); for(i=strlen(str)-1;i>=0;i--) printf("%c",str[i]); } 这个可以满足要求

阿拉尔市17137456694: 用c语言编写一个程序要求输入一个5位数的整数,然后空3格依次输出.比如输入43786输出4 3 7 8 6 -
瞿平芩胆: #include void main() { long num; int indiv,ten,hundred,thousand,ten_thousand,place; printf("请输入一个5位整数:"); scanf("%ld",&num); ten_thousand=(int)(num/10000); thousand=(int)(num%10000/1000); hundred =(int)(num%1000/100);...

阿拉尔市17137456694: C语言问题,题目:输入一个5位数以内的正整数,要求输出这是个几位数?每一位分别是多少?
瞿平芩胆:#include<stdio.h> void main() { int a=0,b=0,c=0,d=0,e=0; long int aa; scanf("%ld",&aa); while(aa>=100000) { printf("shu ru cuo \n"); printf("qing shu ru yig bu duo yu 5wei de shu\n"); scanf("%ld",&aa); } if(aa>=10000) { a=aa/10000; b=(aa-...

阿拉尔市17137456694: 任意输入一个有五位数字的十进制正整数,逆序输出,逆序后前面的0不显示 c语言 -
瞿平芩胆: #include void main() { int i,j,a[5]; for(i=0;iscanf("%1d",&a[i]); for(i=4;i>=0;i--) if(a[i]) break; for(j=i;j>=0;j--) printf("%d",a[j]); }

阿拉尔市17137456694: 用C语言写下面程序:输入一个不低于五位数的正数:1分别输出位数的可能性2输出每一位上的数
瞿平芩胆: #include &lt;stdio.h&gt; #include &lt;math.h&gt; int main() { int data; //该正数; int nTest; // 测试模是否为零; int bit = 10000; int num = 4; //位数 int i; int quot; //商 int res; //余数 printf("请输入一个不低于五位的正数\n"); scanf("%d",&...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网