我不知道这个C程序错在哪里
main()
{
long s=0,a=0;
int n,i=1,k,m,j;
printf("请分别输入a和n的值:\n");
scanf("%d %d",&a,&n);
for(i=1,k=0;i<n+1;i++)
for(j=1;j<n+1;j++)
{printf("%d",a);
++k;
if(k==n)
{printf("=");break;}
if(k==j)
{printf("+");break;}}
}
本来是想输入 a+aa+aaa+aaaa........=
a的最大位数=n
输入 a=3,n=3
结果则是3+3=333
能帮我指出错误吗?(我估计与k有很大关系)
参考答案:不需要那么复杂。你看看我编写的:
main() {
int n, i, j;
char a;
printf("请分别输入a和n的值:\n");
scanf("%c %d", &a, &n);
for(i=1; i<=n; i++) {
for(j=1; j<=i; j++)
printf("%c", a);
if (i!=n)
printf("+");
else
printf("=");
}
getch();
}