`
jafisher
  • 浏览: 55541 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

逆序输出多位数或字符串

阅读更多
  很久以前,碰到过一道题,叫逆序输出一个多位数,记得当时是用了一个比较麻烦的方法才勉强做出来。最近无意中又碰到了这道题,于是稍微总结了以下三种自认为是很简单的方法来实现。

1.对一个多位数取余数,将其拆分成个位,十位,百位等等,然后按低位依次输出。
#include<stdio.h>
int main()
{
          int num;
          scanf("%d",&num);
          do
          {
            printf("%d",num%10);
            num/=10;
          }while(num);
          return 0;
}

这种方法仅适用于逆序输出数字,不能逆序输出字符串,以下两种则都适用。

2.将多位数或字符串存放在一个数组中,然后逆序输出数组。
#include<stdio.h>
#include<string.h>
int main()
{
          char str[100];
          int i,len;
          gets(str);
          len=strlen(str);
          for(i=1;i<=len;i++)
            printf("%c",str[len-i]);
          return 0;
}


3.利用递归逆序输出多位数或字符串。
#include<stdio.h>
#include<conio.h>
void change()
{
     char c;
     if((c=getchar())!='\n')
       change();
     putchar(c);
}
int main()
{
     change();
     return 0;
}


4.对于第一种逆序输出多位数的情况,只能一位一位逆序输出,还有一种方法可以先得到整个逆序数,再将逆序数输出。
#include<stdio.h>
int main()
{
    int n,t,sum=0;
    cin>>n;
    while(n)
    {
        t = n%10;
        sum = sum*10+t;
        n/=10;
    }
    cout<<sum<<endl;
    return 0;
}

分享到:
评论

相关推荐

    c程序设计习题参考(谭浩强三版)习题参考解答

    8.5写一函数,使输入的一个字符串按反序存放,在主函数中输入和输出字符串。 50 8.6写一函数,将两个字符串连接。 51 8.7写一函数,输入一个4位数字,要求输出这4个数字字符,但每两个数字之间有一个空格。如输入...

    上海电机学院C语言实训答案

    (5)编写一个程序实现如下功能:从键盘输入字符(最多为80个),遇到回车键输入结束,将输入的字符串按奇偶位置拆分,奇数位上的字符在前,偶数位上的字符在后,重新组成新的字符串输出,例如输入: ab12cd3456fg,...

    C语言经典例题100道

    1.数字排列 2.奖金分配问题 3.已知条件求解整数 4.输入日期判断第几天 5.输入整数进行排序 6.用*号显示字母C的图案 7.显示特殊图案 8....字符串转换成大写字母并输出保存 99.文件操作应用1 100.文件操作应用2

    C程序范例宝典(基础代码详解)

    实例068 将若干字符串按照字母顺序输出 85 2.3 指针与函数 86 实例069 用指向函数的指针比较大小 86 实例070 使用返回指针的函数查找最大值 88 实例071 使用指针函数求学生成绩 89 实例072 寻找指定元素...

    java经典编程题

    1.输出所有的“水仙花数”,水仙花数是指一个三位数,这个数的各位数字的立方和就是该数本身。 2.将一个正整数分解质因数,如:18=2*3*3; 3.输入两个正整数,求这两个数的最大公约数和最小公倍数; 4.输入一行字符...

    实现栈的存储结构及相关操作

    1.实现栈的存储结构及相关操作:进栈、出栈、取栈顶元素等 2.使用该栈完成一个字符串的逆序输出 3.使用该栈完成表达式的括号是否匹配? 4.对算术表达式求值(实现了小数,多位数,整数的相关计算)

    java 经典习题.doc

    题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 1.程序分析:利用for循环控制100-999个数,...

    世界500强面试题.pdf

    1.5.7. 输入一个表示整数的字符串,把该字符串转换成整数并输出.............. 118 1.5.8. 给出一个数列,找出其中最长的单调递减(或递增)子序列..............121 1.5.9. 四对括号可以有多少种匹配排列方式........

    C/C++面试题目及解答.doc

    因此,使用 memcpy 和 strcpy 拷贝字符串在性能上应该没有什么大的差别。 对于非字符串类型的数据的复制来说,strcpy 和 snprintf 一般就无能为力了,可是对 memcpy 却没有什么影响。但是,对于基本数据类型来说...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例074 将字符串的每个字符进行倒序输出 94 实例075 获取字符串中汉字的个数 94 实例076 批量替换某一类字符串 95 实例077 把异常与错误信息显示到窗体中 97 实例078 从字符串中分离文件路径、 文件名及扩展名 98 ...

    Java范例开发大全 (源程序)

     实例215 利用栈将字符串逆序输出 381  实例216 动态的数组链表 382  实例217 你能猜出鱼是谁的宠物吗? 387  实例218 使用Collections类对List的排序操作 393  实例219 LinkedList的添加删除操作 395  ...

    java范例开发大全(pdf&源码)

    实例215 利用栈将字符串逆序输出 381 实例216 动态的数组链表 382 实例217 你能猜出鱼是谁的宠物吗? 387 实例218 使用Collections类对List的排序操作 393 实例219 LinkedList的添加删除操作 395 实例220 运用Vector...

    java范例开发大全源代码

     实例42 字符串索引越界异常(StringIndexOutBounds) 60  实例43 操作错误(UnsupportedOperationException) 60  4.2 运行时异常 61  实例44 找不到指定类时发生的异常(ClassNotFoundException) 62 ...

    java范例开发大全

    实例215 利用栈将字符串逆序输出 381 实例216 动态的数组链表 382 实例217 你能猜出鱼是谁的宠物吗? 387 实例218 使用Collections类对List的排序操作 393 实例219 LinkedList的添加删除操作 395 实例220 运用Vector...

    Java范例开发大全(全书源程序)

    实例215 利用栈将字符串逆序输出 381 实例216 动态的数组链表 382 实例217 你能猜出鱼是谁的宠物吗? 387 实例218 使用Collections类对List的排序操作 393 实例219 LinkedList的添加删除操作 395 实例220 运用...

    LeeCode:算法代码

    利典 算法代码 ...给定一个字符串,请您发现其中不包含重复字符的长度子串的长度。 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 寻找两个正序矩阵的中

Global site tag (gtag.js) - Google Analytics