c++,整型数,千位用逗号分隔?怎么分?~还有,看下我哪里错了?

#include<stdio.h>voidmian(){inta[20],i,n,base=10;printf("请输入一个整数:");scanf("%d",&n);i=... #include<stdio.h>
void mian()
{ int a[20],i,n,base=10;
printf("请输入一个整数:");
scanf("%d",&n);
i=0;
do
{
a[i++]=n%base;
n/=base;
}
while(n);
for(i--;i>=0;i--)
printf("%d%c",a[i],i?',':'\n');
}

这其实是题目,但是不知道我打错了哪里。。。运行的时候显示了这个:
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/zz.exe : fatal error LNK1120: 1 unresolved externals
执行 link.exe 时出错.
所以想问下我哪里错了?
然后,要在这个的基础上(这个输出的是1,2,3,4,5这样嘛~),改成12,345这样的千位分隔~~
如果能够解释下就太好了!!!!
我表示看不太懂!!
展开
 我来答
百度网友31f933e
2012-04-24 · TA获得超过223个赞
知道小有建树答主
回答量:148
采纳率:66%
帮助的人:115万
展开全部
#include<iostream>
using namespace std;

int main()
{
int a[20],i,n,base=10;
printf("请输入一个整数:");
cin>> n;
i=0;
int num=0;
do
{
a[i++]=n%base;//将该数的最后一位赋值给a【i++】
n/=base;//下一位的最后一位数
}
while(n);//当n为0时停止
num=i;
for(i;i>=0;i--) //按位输出这个那你所要求的数
{
if (i%3==0 && i!=num && i!=0) //每三位且不为0的条件下输出这个数
printf("%d,",a[i]);

}
printf("\n");//换行
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
天上亦0
2012-04-20 · TA获得超过220个赞
知道小有建树答主
回答量:110
采纳率:100%
帮助的人:64.1万
展开全部
关于出错的问题,我也不知道错在哪里了。显然不是代码的错误,具体的我在网上找了找,说是下面这样的,你试试好了。

Windows子系统设置错误, 提示:
libcmtd.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Windows项目要使用Windows子系统, 而不是Console, 可以这样设置:
[Project] --> [Settings] --> 选择"Link"属性页,
在Project Options中将/subsystem:console改成/subsystem:windows

改成千位分隔的话,要把那个for循环改掉,当i能被3整除时才有逗号,否则不要逗号。改成如下代码:
for(i--;i>=0;i--)
if(0==(i%3))
printf("%d%c",a[i],',');
else
printf("%d",a[i]);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
_HappyEnding
2012-04-20 · TA获得超过830个赞
知道小有建树答主
回答量:633
采纳率:0%
帮助的人:284万
展开全部
void mian(),你打快了吧,啊哈哈,我也这样干过main不是mian
你在循环中添加一个计数变量,记到3就输出逗号。
追问
噗。。。
我错了。。。。倒地。。。。
那个那个,添加计数变量这个我也知道。。。可是不会。。。。?在哪里添,添什么呀?
追答
#include
void main()
{
int a[20],i,n,base=10;
printf("请输入一个整数:");
scanf("%d",&n);
i=0;
int num=0;
do
{
a[i++]=n%base;
n/=base;
}
while(n);
num=i;
for(i--;i>=0;i--) //第一个不要i--,i就可以了。实际上i--是取i的值再减
{
//printf("%d%c",a[i],i?',':'\n');
if (i%3==0 && i!=num && i!=0)
{
printf("%d,",a[i]);
}
else printf("%d",a[i]);
}
printf("\n");
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式