一年没写几句像样的代码了,拿个简单例子练练手

整数取反,题目很简单,完成函数reverse,要求实现把给定的一个整数取其相反数的功能,

举两个例子如下: x = 123, return 321 x = -123, return -321 

由于长时间写shell,以致好几个变量不声明就使用了,真是害人不浅。


#include <stdio.h>

const int base = 10;

int reverse(int n)
{
    int i, rs=0, quotient=0, remainder=0;
    int flag = 0;
    if (n < 0)
    {  
       flag = 1;
       n = -n;
    }
    if (n==0)
        return 0;
    quotient = n;
    for(i=0; quotient !=0 ;i++)
    {   
        remainder = quotient % base;
        quotient = quotient / base;
        rs = rs*base + remainder;
    }


    return (flag)? -rs:rs;
};

int main()
{   

    printf("%d\n", reverse(1234567));
    printf("%d\n", reverse(-1234567));
    printf("%d\n", reverse(0));
    printf("%d\n", reverse(-0));
    printf("%d\n", reverse(-000));

    return 0;
}

main:main.o
        gcc -o main main.o
main.o: main.c
        gcc -c main.c
clean:
        rm -rf main.o main

7654321
-7654321
0
0
0


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值