在线编程:整数取反

来源:互联网 发布:ubuntu设置jdk环境变量 编辑:程序博客网 时间:2024/05/04 17:17
题目很简单,完成函数reverse,要求实现把给定的一个整数取其相反数的功能,举两个例子如下:x = 123, return 321 x = -123, return -321
#include <stdio.h>#include <stdlib.h>int reverse(int x){    int i=0,num=0,count=0,tmp;    count=cal_N(abs(x));    tmp=count;    for(i=1;i<=count;i++)    {        num+=x%10*cal_ten_N(tmp--);        x/=10;    }    return num;}int cal_ten_N(int x){    int i=0,num=1;    if(x==0)        return 1;    for(i=1;i<x;i++)    {        num*=10;    }    return num;}int cal_N(int x){    int count=0;    while(x%10>=0&&x!=0)    {        count++;        x/=10;    }    return count;}main(){    printf("%d\n",reverse(-1000));}