(c/c++)实现逆序输出整数的几种方法
2017-11-24 17:56
309 查看
第一种:
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);
显然第三种方法更优一些。
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);
显然第三种方法更优一些。
相关文章推荐
- 整数逆序输出 几种方法小结(Java实现)
- Java实现整数的逆序输出(三种方法)
- 4种方法实现字符串逆序输出
- C++中几种将整数转换成二进制输出的方法
- 单链表逆序输出的几种实现方式
- C语言:用递归实现将输入的整数按逆序输出。如输入12345,则输出54321。
- 利用指针实现将5个整数输入到数组a中,然后将a逆序复制到数组b中,并输出b中各单元的值。
- c语言:3种方法实现输出一个整数的每一位。
- Java实现字符串倒序输出的几种方法
- (用指针方法处理)有n个整数,使前面各数顺序向后移m个位置,最后m个数变成最前面m个数。编写一个函数实现上述功能,在主函数中输入n个整数,并输出调整后的n个数
- 两种方法实现单向链表的创建、遍历、删除、查找、逆序输出(循环法和递归法)
- c++大整数类的几种实现方法与解析
- 用递归实现输入一系列整数后逆序输出
- java 用递归实现:输入一个整数,用字符串逆序输出,例如输入123,输出321 ,不使用全局变量
- c语言:3种方法实现输出一个整数的每一位。
- 给定一个整数判断位数并实现分别输出每位,逆序输出。
- Java实现字符串倒序输出的几种方法
- 用不同的方法实现字符串的逆序输出(C语言实现)
- C++中几种将整数转换成二进制输出的方法
- C#-数字逆序输出的几种方法