版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
问题描述:
已知一个整数n,你要将它输出成“千分位”形式。即从个位数起,每3位之间加一个逗号。例如,将“7654321”写成“7,654,321”。
输入与输出要求:
输入一个整数n(0<=n<2000000000),输出这个整数的“千分位”输出形式,占一行。
程序运行效果:
Sample 1:
6324112↙
6,324,112↙
Sample 2:
45634523↙
45,634,523↙
#include<stdio.h>
#include<math.h>
int main()
{
int n;
int i,len,j,p=0;
scanf("%d",&n);
if(n==0) printf("%d",n);
for(len=1,j=n;j>0;p++){
j/=10;
len*=10;
}//printf("%d",i);
len/=10;
for(i=len,j=n;i>0;p--){
if(p%3==0&&i!=len){
printf(",");
}
printf("%d",j/i);
j%=i;
i/=10;
}
return 0;
}
Attention:
i!=len确保了三的倍数位数n不会在开头输出“,”