pta算法:使用函数输出一个整数的逆序数

要求:
本题要求实现一个求整数的逆序数的简单函数。

int reverse( int number );//这个函数实现

1.判断一个整数是多少位数:

number=number/10;(通过循环这个来判断,执行一次,位数就减一,减的是最右边的数字)

#include<stdio.h>




int reverse(int number){
	
	int mode;
	int sum;
	int shu=0; 

		
	
		

		while(number!=0){   //if只有一次,while才能循环 
			
			

	    number=number/10;//输入一个整数,它的长度怎么判断 
	    
		shu++;	
		printf("执行一次\n");
			
		}
		
		printf("这个数是%d位",shu);
		 

	
}


int main(){
	int n;
	scanf("%d",&n);
	
	 reverse(n);
	
	
	
	
	
	return 0;
}

效果:

在这里插入图片描述

2.使用函数输出一个整数的逆序数:

原理:就是利用折分数值的每一位数,每一位数乘以10的对应的次方,再相加。就组和新数值。

mode=(temp%10)*pow(10,shu-1); //取数值最右的一个数字,进行乘方//
sum=sum+mode;
shu–;
temp=temp/10;//减去最右边的位数。

#include<stdio.h>
#include<math.h>



int reverse(int number){

	
	int mode;
	int sum=0;
	int shu=0; 
int i;
		int temp;
	
		temp=number;
		

		while(number!=0){   //if只有一次,while才能循环 
			
			

	    number=number/10;//输入一个整数,它的长度怎么判断 
	    
		shu++;	
		//printf("执行一次\n");
			
		}
		
		printf("这个数是%d位\n",shu);
		 

	
	
	
	

  while(temp!=0){
  
//	printf("执行一次\n");
	         
			mode=(temp%10)*pow(10,shu-1);  //取数值最右的一个数字,进行乘方, 
		//shu-1是10的几次方。 
		sum=sum+mode;
		shu--;
		temp=temp/10;
}
printf("这个数的倒序是%d",sum);



}







int main(){
	int n;
	scanf("%d",&n);
	
	 reverse(n);
	
	
	
	
	
	return 0;
}

效果:

在这里插入图片描述

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

半浮名

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值