讀入一個整數N,若N爲非負整數,則計算N到2N之間的整數和;若N爲一個負數,則求2N到N之間的整數和。
答:實現代碼如下:
#include <stdio.h>
n,s,t,i;
int main()
{
for(;~scanf("%d",&n);printf("%d\n",t*s))
for(t=n>0?:-1,i=n=t*n,s=0;i<=2*n;) s+=i++;
return 0;
}
程序分析:C語言的空程序默認情況下使用內存大小爲904kb,上述代碼佔用<200B內存,且完成了相應的任務,符合要求。
優化方案:
#include <stdlib.h>
main(n)
{
for(;~scanf("%d",&n);printf("%d\n",(abs(n)+1)*3*n/2));
}