您的位置:首页 > 编程语言 > C语言/C++

c++输入输出流读取文件

2015-01-29 11:26 375 查看
#include<stdio.h>

#include<string.h>

#include "fstream"

using namespace std;

ifstream fin("read.txt");

ofstream fout("result1.txt");

void zero(char *ch, int len)

{

int i;

for(i=0; i<len; ++i)

{

ch[i] -= '0';

}

}



int main()

{

char a[1000], b[1000];

char c[1002];

int alen, blen, i, j, k, T, m=1, yes;

//scanf("%d",&T);

fin>>T;

getchar();

while( T-- )

{

//scanf("%s", &a);

//scanf("%s", &b);

fin>>a>>b;

//printf("Case %d:\n", m++);

//printf("%s + %s = ", a, b);

fout<<"Case %d:"<<endl<<m++<<a<<" + "<<b<<" = ";

alen = strlen(a);

blen = strlen(b);


for(i=0; i<1002; ++i)

{

c[i] = 0;

}


zero(a, alen);

zero(b, blen);


k = yes = 0;

for(i=alen-1, j=blen-1;  (i>=0)&&(j>=0); ++k, --i, --j )

{

if(  (a[i]+b[j]+c[k]) >= 10 )

{

c[k+1] = 1;

}

c[k] = (a[i]+b[j]+c[k])%10 ;

}


for( ; i>=0; ++k, --i)

{

if( a[i]+c[k] >=10 )

{

c[k+1] = 1;

}

c[k] = (a[i]+c[k])%10;

}

for( ; j>=0; ++k, --j)

{

if( b[j]+c[k] >=10 )

{

c[k+1] = 1;

}

c[k] = (b[j]+c[k])%10;

}


if( c[k]==0 )

{

--k;

}



for(i=k; i>=0; --i)

{

if( c[i] !=0 )

{

yes = 1;

break;

}

}


if( yes!=0 )

{

for(; k>=0; --k)

{

//printf("%d", c[k]);

fout<<c[k];

}

}

else

{

//printf("0");

fout<<"0";

}


if( T!=0 )

{

//printf("\n\n");;

fout<<endl<<endl;

}

else

{

//printf("\n");

fout<<endl;

}

}

return 0;

}

[/code]

来自为知笔记(Wiz)

附件列表

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: