谁能帮我看下程序,谢谢啦!!

来源:百度知道 编辑:UC知道 时间:2024/05/23 18:11:09
谁能帮我看下程序,谢谢啦!!
我在ACM网上写了个代码,不能通过,不知道是哪里出了问题了希望高手提示一下我错在哪里
谢谢啦

输入一个整数N(-10^100 <= N <= 10^100),输出N的标准式,即每3位用逗号分隔(除非该数字不足4位)。

输入格式:测试输入即给出一个整数N。

输出格式:在一行中输出N的标准式。
Copy code# include <stdio.h>
int main(void)
{
int a[101],i;
while((a[0]=getchar())!='\n'&&(a[0]>='0'&&a[0]<='9'||a[0]=='-')){
i=1;
while((a[i]=getchar())!='\n'&&(a[0]>='0'&&a[0]<='9'||a[0]=='-'))
i++;
a[i]='\0';
if(a[0]=='-')
for(i=0;a[i]!='\0';i++){
printf("%c",a[i]);
if((i%3==0)&&(i!=0)&&a[i+1]!='\0') printf(",");
}
else
for(i=0;a[i]!='\0';i++){
printf("%c",a[i]);

每3位用逗号分隔,英美数制是10^3一个单位,当然要从低位数起
题目理解错了吧:
12345
应该是:12,345
而不是123,45

奇怪我在VC++里为什么会通过,而且也实现输出N的标准式,即每3位用逗号分隔,楼主你很强啊!