[bo][un]foxczh[/un] 在 2008-11-18 21:14 的发言:[/bo]
解释下行不……
PS:随便说一句。。。编译不通过……
解释下行不……
PS:随便说一句。。。编译不通过……
你确定编译不通过?
把错误信息贴上我看一下行吗?
2008-11-18 21:44
2008-11-18 22:14
2008-11-18 22:26
程序代码:#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
unsigned long n;
int a, i, j, carry = 0, sum;
char *p, *q;
printf("输入a n的值(注意a只能取0至9中的数字, n为自然数):\n");
scanf("%d %d", &a, &n);
/*如果a的值为0,结果肯定就是0*/
if(a == 0 || n == 0)
{
printf("sum = 0\n");
}
else
{
if((q = p = (char *)malloc(sizeof(char) * (n + 1))) == NULL)
{
printf("malloc error!\n");
return 0;
}
memset(p, 0, (n+1));
for(i = n; i > 0; i--)
{
sum = carry;
for(j = i; j > 0; j--)
{
sum += a;
}
*p++ = sum % 10 + 48;
carry = sum / 10;
}
*p++ = carry + 48;
printf("sum = ");
for(i = strlen(q) - 1; i >= 0; i--)
{
printf("%c", q[i]);
}
printf("\n");
free(q);
}
}
2008-11-18 22:39
2008-11-18 22:47
2008-11-18 22:57
2008-11-19 01:45
2008-11-19 08:18
2008-11-19 08:33
2008-11-19 16:45