算法于效率
时间:2007-02-17 来源:PHP爱好者
/* 和以前一样,这里的代码也是从记事本中粘贴来的,代码无法缩进,sorry了 ^_^ */
现在我们要写的程序就是将文件内的数字读出来,将char转化为int。在C中,读入的char字符虽然为“12345”但是在int中则仍然为ASCII字符,想要将读入的char转化为int,我们可以写一段程序,采用最简单的方法,莫过于将程序中的数字装入数组,然后按位乘以10并相加,请看以下代码:
#include
#include
#include
void main()
{
char c, *ch; int j=0;
ch = new char[80];
ifstream i("test", ios::in | ios::binary);
if(!i) { cerr<<"open error.n"; exit(0); }
while(i.get(c))
{
if(c>=0x30 && c<=0x39) ch[j++]=c;
} ch[j]='';
int k=0; int tmp, ct=j-1, b;
for(int i=0; i<=j-1; i++)
{
ct--;
if(ch==0x30) tmp=0;
if(ch==0x31){ tmp=1;
for(b=0; b<=ct; b++)
tmp*=10; }
if(ch==0x32){ tmp=2;
for(b=0; b<=ct; b++)
tmp*=10; }
if(ch==0x33){ tmp=3;
for(b=0; b<=ct; b++)
tmp*=10; }
if(ch==0x34){ tmp=4;
for(b=0; b<=ct; b++)
tmp*=10; }
if(ch==0x35){ tmp=5;
for(b=0; b<=ct; b++)
tmp*=10; }
if(ch==0x36){ tmp=6;
for(b=0; b<=ct; b++)
tmp*=10; }
if(ch==0x37){ tmp=7;
for(b=0; b<=ct; b++)
tmp*=10; }
if(ch==0x38){ tmp=8;
for(b=0; b<=ct; b++)
tmp*=10; }
if(ch==0x39){ tmp=9;
for(b=0; b<=ct; b++)
tmp*=10; }
k+=tmp;
}
cout<
php爱好者 站 http://www.phpfans.net 网页制作|网站建设|数据采集.
现在我们要写的程序就是将文件内的数字读出来,将char转化为int。在C中,读入的char字符虽然为“12345”但是在int中则仍然为ASCII字符,想要将读入的char转化为int,我们可以写一段程序,采用最简单的方法,莫过于将程序中的数字装入数组,然后按位乘以10并相加,请看以下代码:
#include
#include
#include
void main()
{
char c, *ch; int j=0;
ch = new char[80];
ifstream i("test", ios::in | ios::binary);
if(!i) { cerr<<"open error.n"; exit(0); }
while(i.get(c))
{
if(c>=0x30 && c<=0x39) ch[j++]=c;
} ch[j]='';
int k=0; int tmp, ct=j-1, b;
for(int i=0; i<=j-1; i++)
{
ct--;
if(ch==0x30) tmp=0;
if(ch==0x31){ tmp=1;
for(b=0; b<=ct; b++)
tmp*=10; }
if(ch==0x32){ tmp=2;
for(b=0; b<=ct; b++)
tmp*=10; }
if(ch==0x33){ tmp=3;
for(b=0; b<=ct; b++)
tmp*=10; }
if(ch==0x34){ tmp=4;
for(b=0; b<=ct; b++)
tmp*=10; }
if(ch==0x35){ tmp=5;
for(b=0; b<=ct; b++)
tmp*=10; }
if(ch==0x36){ tmp=6;
for(b=0; b<=ct; b++)
tmp*=10; }
if(ch==0x37){ tmp=7;
for(b=0; b<=ct; b++)
tmp*=10; }
if(ch==0x38){ tmp=8;
for(b=0; b<=ct; b++)
tmp*=10; }
if(ch==0x39){ tmp=9;
for(b=0; b<=ct; b++)
tmp*=10; }
k+=tmp;
}
cout<
php爱好者 站 http://www.phpfans.net 网页制作|网站建设|数据采集.
相关阅读 更多 +