Ⅰ c语言编程,任意输入一个五位正整数,逆序输出每一位上的数 如输入54321 输出12345 要代码
#include<stdio.h>
intres[5]={};//外部变量,把每一位作为数组元素进行存储
int*p=res;
intmain(){
intnum=12345;
voidser(int);//分别输出每一位数字
ser(num);
printf(" ");
p=res+4;//指针置于数组末尾
for(inti=0;i<sizeof(res)/sizeof(res[0]);i++){//逆序输出
printf("%d",*p--);
}
return0;
}
voidser(intnumber){
if(number>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
Ⅱ 请输入一个五位的整数。然后倒序输出这个数。用c语言
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int s=0;
int a[5];
cout<<"输入一个5位数"<<endl;
cin>>s;
for(int i=0;i<=4;i++)
{
a[i]=s/pow(10,4-i);
s=s%(int)pow(10,4-i);
}
s=0;
for(int j=0;j<=4;j++)
{
s=s+a[j]*pow(10,4-j);
}
cout<<"反序后的数字为:"<<s<<endl;
return 0;
}
现场编的,调试过没有问题
Ⅲ 用C语言编程,输入一个五位整数将它反向输出,如输入54321 ,输出12345
#include<conio.h>
#include<stdio.h>
int main()
{
int n,num1,num2,num3,num4,num5,m;
printf("please input the number: ");
scanf("%d",&n);
num1=n/10000; //万位
num2=(n-num1*10000)/1000; //千位
num3=(n-num1*10000-num2*1000)/100; //百位
num4=(n-num1*10000-num2*1000-num3*100)/10; //十位
num5=n%10; //个位
m=num5*10000+num4*1000+num3*100+num2*10+num1;
printf("result is: %d",m);
getch();
return 1;
}
Ⅳ 用c语言,如何输入一个5位数让它倒序输出帮我改改我的代码!谢谢
#include<stdio.h>
void main()
{
int a,b;
printf("请输入一个五位数:\n");
scanf("%d",&a);
for(int i=0;i<5;i++)
{
b=a%10;
a=a/10;
printf("%d",b);
}
}
执行过了的 没问题的
你的意思是想输入一个五位数是这样输入 12345,而不是这样输入:1 2 3 4 5
所以用int数组的那个 不行,
而一楼的char数组 scanf("%s",&a);这句话 &a的& 明显是多余的 直接a就行了,因为a是数组名,代表了数组的首地址。
望采纳
Ⅳ c语言,输入一个五位数,把它倒置过来输出,有更简单的方法没啊,大神们!
#include <iostream>
#include <string>
using namespace std;
int main()
{
string s,z;
cout<<"输入一个数:";
cin>>s;
string::size_type index=s.size()-1;
for(;index!=0;--index)
z+=s[index];
z+=s[0];
cout<<"换过顺序后为:"<<z<<endl;
return 0;
}
试试这个,不仅数字能换,字符串也能换。。
Ⅵ c语言,任意输入一个五位正整数,逆序输出每一位上的数
#include<stdio.h>
voidmain()
{
inti,n,a[5];
scanf("%d",&n);
for(i=0;i<5;i++)
{a[i]=n%10;n=n/10;}
for(i=0;i<5;i++)
if(a[i])
{
for(;i<5;i++)
printf("%1d",a[i]);
break;
}
}
运行示例:
Ⅶ 如何将一个五位数反向输出,c语言
代码: #include<stdio.h>
void main()
{
long x,temp=0;
printf("请输入一个数:\n");
scanf("%ld",&x);
while(x!=0)
{
temp=temp*10+x%10;
x=x/10;
}
printf("这个数的方向输出的结果是:%ld\n",temp);
}