青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

付翔的專欄
在鄙視中成長 記錄成長的點滴
posts - 106,  comments - 32,  trackbacks - 0
  

小數(shù)的精度的加法 很自然的和整數(shù)的加法連在一起 于是 就把小數(shù)點隔開,分成兩部分加 。。只是在小數(shù)部分加的時候 進位 細節(jié)處理不當(dāng)導(dǎo)致很多錯誤 也算是一次教訓(xùn)吧 。。。
因為 中途修改過很多 代碼看起來 有點亂 呵呵
 

#include
<stdio.h>
#include
<string.h>
#include
<stdlib.h>

void partition_string(char _a[],char _a1[],char _a2[])
{
    
char *str;
    
int i,j,len;
    str 
= strchr(_a,'.');// 
    if(str!=NULL)
    {
        len 
= strlen(_a);//len = strlen(str);//這是錯誤的源泉 對于 1.1234567  這個是得到 .1234567的長度 
        strncpy(_a1,_a,(str-_a)/sizeof(char));
        _a1[(str
-_a)/sizeof(char)] = '\0';
        
        
for(j = 0, i = (str-_a)/sizeof(char+ 1;i< len;i++,j++)
            _a2[j] 
= _a[i];
        _a2[j] 
= '\0';
    }
    
else 
    {
        strcpy(_a1,_a);
        strcpy(_a2,
"");
    }

}
void supply(char _a[],int len)//對于小數(shù)區(qū)不足的以0補足 
{
    
int count = strlen(_a),i;
    
for(i = count ; i < len;i++)//for(i = count ; count < len;i++) 單步調(diào)試 才測出這個錯誤
        _a[i] = '0';
    _a[i] 
= '\0';
}
int check(char _str[])//這里貌似沒有把0 去掉 而是換成了 空字符 for(k = i;k < len;k++) 
{    
    
/*12121213213124342545354545 13312312321312321321.02300000000000000000000000000
    這個測試數(shù)據(jù) 0.023 0000  后面的0 也會打印出來 因為for(k = i;k < len;k++) 這個我沒有加 str[i]!='\0'
*/
    
int i,len = strlen(_str);
    
for(i = len-1;i>=0;i--)
    {
        
if(_str[i] == '0') _str[i] = '\0';
        
else return i;
        
//if(_str[i] != '0' ) break;
    }
    
//_str[i+1] = '\0'; 
    
//if(i == 0) return 0;
    return -1;
}
void add(char a[],char b[],char back[])//大數(shù) 加
{
    
int i,j,k,up,x,y,z,l;
    
char *c;
    
if (strlen(a)>strlen(b)) l=strlen(a)+2else l=strlen(b)+2;
    c
=(char *) malloc(l*sizeof(char));
    i
=strlen(a)-1;
    j
=strlen(b)-1;
    k
=0;up=0;
    
while(i>=0||j>=0)
    {
        
if(i<0) x='0'else x=a[i];
        
if(j<0) y='0'else y=b[j];
        z
=x-'0'+y-'0';
        
if(up) z+=1;
        
if(z>9) {up=1;z%=10;} else up=0;
        c[k
++]=z+'0';
        i
--;j--;
    }
    
if(up) c[k++]='1';
    i
=0;
    c[k]
='\0';
    
for(k-=1;k>=0;k--)
        back[i
++]=c[k];
    back[i]
='\0';


int main()
{
    
//freopen("in.txt","r",stdin);
    char a[500],b[500],temp[10];
    
char sum1[500],sum2[500];
    
char a1[500],a2[500],b1[500],b2[500];
    
char *str,*str2;int len,lena,lenb,i,j,k,l,num;
    
while(scanf("%s%s",a,b)!=EOF)
    {
        memset(a1,NULL,
500);memset(a2,NULL,500);//這個其實可以去掉
        memset(b1,NULL,
500);memset(b2,NULL,500);
        partition_string(a,a1,a2);partition_string(b,b1,b2);
        lena 
= strlen(a2);lenb=strlen(b2);
        len 
= lena>lenb?lena:lenb;
        
if(lena < lenb)
            supply(a2,len);
        
else if(lena > lenb)
            supply(b2,len);
        add(a2,b2,sum2);
        add(a1,b1,sum1);

        i 
= 0;
        
if( len < strlen(sum2) )
            i 
= 1,num = sum2[0]-'0';
        
if(i == 1)
        {
            
/*k = sum1[strlen(sum1)-1] - '0';//這里的進位考慮不周到
            sum1[strlen(sum1)-1] = (k+num)%10 + '0';
            if(k + num > 9)
                sum1[strlen(sum1)-2]+=1;
*/
            
for(j = strlen(sum1)-1; j>=0 ;j--//考慮 xxx99999 進位的情況
            {
                k 
= sum1[j] - '0';
                
if(k + num > 9) {sum1[j] =  (k+num)%10 + '0'; num = 1;}
                
else {sum1[j] = k + num + '0';break;}
            }
            
if(j == -1)//如果 出現(xiàn) 整數(shù)是99999 然后進了一位 這樣的情況
                printf("1");
        }
        printf(
"%s",sum1);
        
if(check(sum2) > 0 ||(check(sum2) == 0 && i!=1))  printf(".");
        len 
= strlen(sum2);
        
for(k = i;k < len && sum2[k]!='\0';k++)
            printf(
"%c",sum2[k]);
        printf(
"\n");
        memset(a,NULL,
500);memset(b,NULL,500);

    }
    
return 0;
}


posted on 2010-04-24 13:35 付翔 閱讀(1498) 評論(0)  編輯 收藏 引用 所屬分類: ACM 數(shù)據(jù)結(jié)構(gòu)

<2010年5月>
2526272829301
2345678
9101112131415
16171819202122
23242526272829
303112345

常用鏈接

留言簿(2)

隨筆分類

隨筆檔案

文章分類

文章檔案

CSDN - 我的blog地址

博客

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产一区二区丝袜高跟鞋图片| 国产一区二区精品久久| 亚洲国产天堂久久国产91| 午夜精品一区二区三区在线视 | 亚洲一本大道在线| 在线一区亚洲| 亚洲欧美日韩中文在线制服| 亚洲永久免费av| 欧美一区视频在线| 久久午夜精品一区二区| 欧美激情一区二区| 欧美日韩精品在线| 国产精品日日做人人爱 | 亚洲大胆在线| 最近看过的日韩成人| 91久久久亚洲精品| 亚洲伦理在线| 久久成人精品无人区| 久久综合狠狠综合久久激情| 亚洲国产一区二区在线| 亚洲午夜国产一区99re久久| 欧美日韩国产小视频在线观看| 亚洲天堂成人| 久久精品99久久香蕉国产色戒| 嫩草伊人久久精品少妇av杨幂| 亚洲黄页一区| 亚洲中字黄色| 欧美不卡三区| 国产亚洲成精品久久| 99日韩精品| 乱人伦精品视频在线观看| 亚洲人成人一区二区三区| 亚欧美中日韩视频| 欧美精品一区二区在线播放| 国产日韩在线视频| 亚洲性图久久| 亚洲第一精品夜夜躁人人爽| 亚洲免费网站| 一区二区动漫| 亚洲曰本av电影| 亚洲电影免费观看高清完整版| 一本一本久久| 免费视频一区| 在线看欧美日韩| 性刺激综合网| 99精品热视频| 欧美喷水视频| 亚洲裸体在线观看| 麻豆91精品91久久久的内涵| 亚洲欧美国产日韩天堂区| 欧美高清不卡在线| 黄色亚洲免费| 久久精品30| 亚洲欧美国产视频| 欧美性大战久久久久| 久久国产精品黑丝| 99精品视频一区| 欧美福利视频在线| 久久噜噜亚洲综合| 亚洲国产精品久久久久久女王 | 久久精品五月| 性8sex亚洲区入口| 韩国三级在线一区| 久久久免费av| 久久综合网络一区二区| 136国产福利精品导航| 久久夜色精品国产噜噜av| 亚洲欧美日韩一区在线观看| 国产视频一区在线| 久久久久久日产精品| 久久av红桃一区二区小说| 国产原创一区二区| 欧美黑人一区二区三区| 欧美/亚洲一区| 亚洲新中文字幕| 午夜精品久久久久久久99水蜜桃| 国产精品网站一区| 久久久精品免费视频| 久久青草欧美一区二区三区| 亚洲国产精品va| 亚洲精品你懂的| 欧美伦理91i| 午夜精品国产更新| 午夜精品一区二区三区在线播放| 国产视频亚洲精品| 亚洲国产va精品久久久不卡综合| 欧美bbbxxxxx| 午夜精品剧场| 久久综合九色九九| 99国产成+人+综合+亚洲欧美| 欧美日本在线一区| 欧美大胆a视频| 亚洲一区图片| 久久精品亚洲精品| 中文欧美在线视频| 欧美一区二区视频网站| 亚洲国产免费| 久久久久国产精品一区三寸| 亚洲私人影院| 在线亚洲免费| 国语精品一区| 亚洲精品日本| 在线成人免费观看| 一区二区三区 在线观看视| 午夜精品视频在线观看| 亚洲第一精品在线| 亚洲一区二区黄| 亚洲片区在线| 欧美在线综合| 夜夜爽夜夜爽精品视频| 性色av一区二区三区红粉影视| 亚洲二区免费| 亚洲免费视频网站| 一区二区日韩| 免费精品视频| 久久综合久久美利坚合众国| 欧美天天视频| 欧美激情一区二区三区| 国产日韩亚洲欧美精品| 99精品国产在热久久| 在线观看中文字幕不卡| 欧美一级二级三级蜜桃| 亚洲一区欧美激情| 在线亚洲欧美| 夜夜嗨av一区二区三区四季av | 亚洲福利久久| 一区二区三区视频观看| 久久精品一区二区三区不卡| 欧美天堂亚洲电影院在线播放 | 欧美视频在线一区二区三区| 欧美不卡三区| 激情久久久久久久久久久久久久久久| 亚洲最新在线| 亚洲视频中文字幕| 欧美日韩免费高清| 亚洲另类在线一区| 中文在线不卡视频| 欧美午夜激情小视频| 一区二区三区视频免费在线观看| 一本色道久久综合亚洲二区三区| 两个人的视频www国产精品| 美日韩在线观看| 亚洲国产免费看| 欧美激情影音先锋| 一本色道久久加勒比精品| 亚洲欧美韩国| 国产亚洲一区二区三区在线观看| 亚洲欧美美女| 久久夜色精品国产亚洲aⅴ| 在线欧美电影| 欧美精品在线一区二区三区| 99v久久综合狠狠综合久久| 亚洲一区中文| 国产亚洲精品久久久久动| 久久经典综合| 亚洲电影天堂av| 一区二区冒白浆视频| 国产精品久久999| 欧美一级午夜免费电影| 免费成人性网站| 亚洲色无码播放| 亚洲精品久久久久久久久久久久| 欧美日韩在线一区二区| 亚洲一区二区三区免费视频| 久久久精品欧美丰满| 欧美日韩国产欧| 午夜精品理论片| 欧美激情bt| 午夜精品久久久99热福利| 国产一区在线看| 欧美成人性生活| 亚洲永久网站| 欧美国产欧美亚洲国产日韩mv天天看完整 | 国产美女高潮久久白浆| 亚洲性视频h| 欧美电影免费观看网站| 亚洲午夜av在线| 国产亚洲精品一区二555| 欧美激情精品久久久久久黑人 | 久久久久国产精品www| 亚洲黄色影片| 午夜精品视频在线| 亚洲精品免费一二三区| 欧美va亚洲va香蕉在线| 中文高清一区| 亚洲国产黄色| 亚洲欧美另类国产| 亚洲精品永久免费| 国产区精品视频| 蜜桃视频一区| 久久国产精品一区二区| 久久亚洲精品网站| 最新中文字幕亚洲| 国产在线精品一区二区中文| 免费观看日韩av| 久久成人在线| 亚洲激情国产精品| 国产欧美日韩不卡免费| 欧美视频亚洲视频| 久久女同互慰一区二区三区|