永发信息网

c语言 数字反转

答案:2  悬赏:70  手机版
解决时间 2021-01-29 15:14
  • 提问者网友:留有余香
  • 2021-01-28 14:57
描述
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。
输入
输入共 1 行,一个整数N。

-1,000,000,000 ≤ N≤ 1,000,000,000。
输出
输出共 1 行,一个整数,表示反转后的新数。
最佳答案
  • 五星知识达人网友:琴狂剑也妄
  • 2021-01-28 15:14
#include 
int main()
{
    int a, na = 0, flag;
    scanf ("%d", &a);
    if (a<0){
        flag = -1;
        a = -a;
    }
    else {
        flag = 1;
    }
    while (a){
        na = na*10+a%10;
        a /= 10;
    }
    na *= flag;
    printf ("%d\n", na);
    return 0;
}
全部回答
  • 1楼网友:轻雾山林
  • 2021-01-28 16:06
c语言的问题字符串反转可以使用下列两种方法: 使用array.reverse方法 对于字符串反转,我们可以使用.net类库自带的array.reverse方法 public static string reversebyarray(string original) { char[] c = original.tochararray(); array.reverse(c); return new string(c); } 可以使用栈后进先出的特性来对数组进行反转。先将数组所有元素压入栈,然后再取出,顺序很自然地就与原先相反了。 public static string reversebystack(this string original) { stack stack = new stack(); foreach (char ch in original) { stack.push(ch); } char[] c = new char[original.length]; for (int i = 0; i < original.length; i++) { c[i] = stack.pop(); } return new string(c); }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯