2009-10-22 18:40:26來源不明

數字相加

在此提供遞迴版以及非遞迴版

/***************************************************/

#include<stdlib.h>
#include<stdio.h>
int temp=0,x;
void Scan(int now)
{
  if(now<=0) return;
  else
     {
     scanf("%d",&x),temp+=x,printf("%d ",x);
     if(now!=1)   putchar('+'),putchar(' ');
     Scan(now-1);
     }
}
main()
{
 int a,b,n,x;
 while(scanf("%d",&n)&&n)
     temp=0,Scan(n),printf("= %d\n",temp);
 return 0;
}

/*******************************************************/

#include<stdlib.h>
#include<stdio.h>
main()
{
 int a,b,n,x;
 while(scanf("%d",&n)&&n)
    {
     int temp=0;
     for(a=0;a<n;a++)
     {
      scanf("%d",&x);
      temp+=x;
      printf("%d ",x);
      if(a!=n-1)   printf("+ ");
     }
     printf("= %d\n",temp);
    }
 return 0;
}