计算机应用 | 古代文学 | 市场营销 | 生命科学 | 交通物流 | 财务管理 | 历史学 | 毕业 | 哲学 | 政治 | 财税 | 经济 | 金融 | 审计 | 法学 | 护理学 | 国际经济与贸易
计算机软件 | 新闻传播 | 电子商务 | 土木工程 | 临床医学 | 旅游管理 | 建筑学 | 文学 | 化学 | 数学 | 物理 | 地理 | 理工 | 生命 | 文化 | 企业管理 | 电子信息工程
计算机网络 | 语言文学 | 信息安全 | 工程力学 | 工商管理 | 经济管理 | 计算机 | 机电 | 材料 | 医学 | 药学 | 会计 | 硕士 | 法律 | MBA
现当代文学 | 英美文学 | 通讯工程 | 网络工程 | 行政管理 | 公共管理 | 自动化 | 艺术 | 音乐 | 舞蹈 | 美术 | 本科 | 教育 | 英语 |

C语言程序设计 (一)毕业论文网(3)

2013-07-16 01:04
导读:t;string.h #define Max 1000 char sum[Max+1]; /*和*/ char a[Max],b[Max]; /*两个加数*/ int len1,len2; void Input(char a[],char b[]) { int i,len; void Init(char a[]); /*对Init()函数进行声明*/
t;string.h>
#define Max 1000
char sum[Max+1];   /*和*/       
char a[Max],b[Max];   /*两个加数*/    
int len1,len2;
void Input(char a[],char b[])
{
 int i,len;
 void Init(char a[]);   /*对Init()函数进行声明*/
 printf("Please enter two integer:\n");
 scanf("%s %s",a,b);
 len1=strlen(a);
 len2=strlen(b);
 Init(sum);
 len=strlen(a);
 for(i=len-1; i>=0; i--)
  sum[Max+i-len] = a[i];
}
void Init(char a[])
{
 int i;
 for(i=0; i<Max; i++)
 a[i] = '0';
return ;
}

void Long_Add(char sum[],char new[]) 
{
 int i,j;
 int len;
 int tempsum;
 int carry = 0;  /*进位*/            
 len = strlen(new);
/*从个位开始,按位相加,逢十进一*/
 for(i=Max-1,j=len-1; i>=0,j>=0; i--,j--)
 {
  tempsum = sum[i]-'0'+new [j]-'0'+carry;
  sum[i] = tempsum%10+'0';
  carry = tempsum/10;
 }
 while(carry > 0)  /*处理最后一个进位*/
 {
  tempsum = sum[i]-'0'+carry ;
  sum[i] = tempsum%10+'0';
  carry = tempsum/10;
  i--;
 }
 return;
}

void Output(char sum[])
{int i,n;
/*寻找和的最高非零位*/
 for(i=0;i<Max;i++)
  if(sum[i] != '0')
   break;
/*输出计算出来的和*/
 n=i;
 for(n;n<Max;n++)
  putchar(sum[n]);
 return ;
}
 int main()
{
 Input(a,b);
 Long_Add(sum,b);
 Output(sum);

(科教范文网 lw.nSeAc.com编辑发布)


 getch();
 return 0;

上一篇:机票预订系统(一)毕业论文网 下一篇:没有了