当前位置: 代码迷 >> C语言 >> [求助]急求一道编程题(用千位分隔符分隔数字)
  详细解决方案

[求助]急求一道编程题(用千位分隔符分隔数字)

热度:199   发布时间:2006-10-25 22:24:17.0
[求助]急求一道编程题(用千位分隔符分隔数字)
如何用c语言实现用千位分隔符分隔(就是逗号)数字的程序。例如:234,345.55
要求一:对于小数点后的数字不能出现分隔符。
要求二:对于小数点前的数字长度如果正好是偶数,则在第一位数字前不能有分隔符,比 如:上面举例的数字2前面就不能出现分隔符。
谢谢赐教!不胜感激
搜索更多相关的解决方案: 数字  分隔  小数点  c语言  

----------------解决方案--------------------------------------------------------
可以用数组
----------------解决方案--------------------------------------------------------
具体怎么编
----------------解决方案--------------------------------------------------------
通过字符数组,然后判断(求一:对于小数点后的数字不能出现分隔符。
要求二:对于小数点前的数字长度如果正好是偶数,则在第一位数字前不能有分隔符,比 如:上面举例的数字2前面就不能出现分隔)这些关系就可以
----------------解决方案--------------------------------------------------------
取整 %1000
----------------解决方案--------------------------------------------------------
C语言学习者的是正解啊!通过字符数组和条件约束可以轻易做到

----------------解决方案--------------------------------------------------------

同意上楼


----------------解决方案--------------------------------------------------------
字符串处理是很好的方法.
以下是用数的方法.
不考虑小数部分(小数是一样的输出可以先用double y=num-(long)num)保存)
对整数部分则可以这样处理
i=0;j=3;
while(n)
{
a[i]=n%10+'0';
n/=10;
i++;
if(n!=0&&(i-j)%3==0)
{
a[i]=',';
i++;
j++;
}
}
while(i-->=0)
{
printf("%c",a[i]);
}
----------------解决方案--------------------------------------------------------
谢谢各位支持!尤其是nuciewth,不过在下是初学者,nuciewth可否把程序写完整,还有n是否就是指输入数字的宽度呢?急求,再次感谢各位!
----------------解决方案--------------------------------------------------------
如果用字符串处理来做,程序应该怎么写?
----------------解决方案--------------------------------------------------------
  相关解决方案