數字分隔(二)

2021-07-02 02:09:03 字數 1253 閱讀 5571

時間限制:1000 ms  |  記憶體限制:65535 kb

難度:3

描述在乙個遙遠的國家,銀行為了更快更好的處理使用者的訂單,決定將一整串的數字按照一定的規則分隔開來,分隔規則如下:

1、實數的整數部分按照每三個數字用逗號分隔開(整數部分的高位有多餘的0時,需先將多餘的0過濾後,再進行數字分隔,如:0001234567 輸出結果為1,234,567.00)

2、小數部分保留兩位小數(四捨五入)

3、如果該數是負的,則在輸出時需用括號將分隔後的數字括起來,例如:-10005.1645的輸出結果為(10,005.16)  

輸入多組測試資料,每行輸入乙個實數n(n的位數小於100)

輸出輸出分隔後的結果

樣例輸入

00012345670.0000-10005.1645

樣例輸出

1,234,567.000.00(10,005.16)

#include#includeint main(void)

while(str[i]=='0'&&str[i+1]!='\0'&&str[i+1]!='.')

i++;

while(str[i]!='\0')

result[count]='\0';

strcpy(str,result);

len=strlen(str);

count=0;

for(i=0;str[i]!='\0';i++)

if(str[i]=='.')

if(point!=-1)

else

carry=0;

result[count++]=t+'0';}}

else if(point+2point;i--)

result[count++]=str[i];

}else

result[count++]='.';

for(i=point-1;i>=0&&str[i]!='-';i--)

else

carry=0;

if((point-1-i)%3==0&&i!=point-1)

result[count++]=',';

result[count++]=t+'0';

}if(carry!=0)

} else

}if(str[0]=='-')

result[count++]='(';

for(i=0,j=count-1;i

數字分隔(二)

時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 在乙個遙遠的國家,銀行為了更快更好的處理使用者的訂單,決定將一整串的數字按照一定的規則分隔開來,分隔規則如下 1 實數的整數部分按照每三個數字用逗號分隔開 整數部分的高位有多餘的0時,需先將多餘的0過濾後,再進行數字分隔,如 0...

NYOJ 數字分隔(二)

時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述在乙個遙遠的國家,銀行為了更快更好的處理使用者的訂單,決定將一整串的數字按照一定的規則分隔開來,分隔規則如下 1 實數的整數部分按照每三個數字用逗號分隔開 整數部分的高位有多餘的0時,需先將多餘的0過濾後,再進行數字分隔,如 00...

NYOJ1092數字分隔(二)(水水)

參照了別人的思路。include include const int maxn 120 char s maxn int main if point strchr s,else pt len printf len pt d n len pt if len pt 3 處理進製 如果小數字大於等於3位 i...