(c/c++)实现逆序输出整数的几种方法

来源:互联网 发布:股票交易数据分析 编辑:程序博客网 时间:2024/05/20 07:36

第一种:

int  n;

printf("请输入一个 整数");

scanf("%d",&n);

while(n!=0) {

printf("%d",n%10);//输出各位数

n=n/10;//降阶

}

printf("\n");

第二种:

将第一种用for语句实现,本质上与第一种方法没有多大区别:

int  n;

printf("请输入一个 整数");

scanf("%d",&n);

for(n;n!=0;n/=10)

printf("%d",n%10);

printf("\n");

第三种:

上面的方法都存在多次调用printf函数的问题,而调用函数是需要额外的空间的时间的,这将会降低程序的运行速度。虽然在这里的调用次数并不多,但是这是应该考虑到的,

毕竟效率是评价程序的一个重要指标。

用一个变量来存储逆序后的数,只需调用一次printf函数。

int  n,m=0;//m为存储逆序整数的变量

printf("请输入一个 整数");

scanf("%d",&n);


while(n!=0) {
m=m*10+n%10;
n=n/10;
}
printf("%d\n",m);

显然第三种方法更优一些。

原创粉丝点击