/*=========================================
* Copyright (c) 2020, 逐風(fēng)墨客
* All rights reserved.
*
* 文件名稱:study_accpn.c
* 運(yùn)行環(huán)境:Linux系統(tǒng)
* 功能描述:輸入一個(gè)大于0的任意整數(shù),
計(jì)算1-2+3-4+5-6+7......+n!
=========================================*/
#include <stdio.h>
#include <stdlib.h>
long get_acc(long n);
int main(void)
{
long lNum;
long lSum;
printf("\nPlease enter a number(1~n) to accumulate : n = ");
scanf("%ld", &lNum);
lSum = get_acc(lNum);
printf("1-2+3-4+5-6+7......+%ld = %ld", lNum, lSum);
return 0;
}
/******************************************
* 函數(shù)介紹:long get_acc(long n)
* 輸入?yún)?shù):n-最大范圍的累加數(shù)值
* 輸出參數(shù):無
* 返回值:1-2+3-4+5-6+7......+n 的累加值
******************************************/
long get_acc(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;
}
}
??程序運(yùn)行結(jié)果:

程序運(yùn)行結(jié)果