【C编程】计算当参数为n(n很大)时的值 1-2+3-4+5-6
2020-05-16 本文已影响0人
逐风墨客
/*=========================================
* Copyright (c) 2020, 逐风墨客
* All rights reserved.
* 功能描述:计算1-2+3-4+5-6+7......+n!
* 所用函数:long acc_add(long n)
* 返回值:累加值
=========================================*/
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
long acc_add(long n);
long lNum;
long lSum;
printf("\nPlease enter a number to accumulate : ");
scanf("%ld", &lNum);
lSum = acc_add(lNum);
printf("This sums is : %ld", lSum);
return 0;
}
long acc_add(long n)
{
if (n <= 0)
{
printf("error : n must > 0!\n");
exit(1);
}
if (0 == n%2)
{
return (n / 2) * (-1);
}
else
{
return (n / 2) * (-1) + n;
}
}