VC问题!高手指点~
#include<stdio.h>
int num[99], i = 0;
char = 'y';
void js()
{
do
{
printf("请输入第%d个数字:",i+1);
scanf("%d",&num[i]);
i++;
if(i >= 5)
{
printf("是否继续输入数字?(y / n)");
fflush(stdin);
ans = getchar();
if (ans == 'n')
break;
}
}while(ans == 'y' || ans == 'Y');
printf("\n");
}
void main()
{
int j, z = 0;
int *ptr;
js();
ptr = num;
printf("输入的数字如下:\n");
for(j = 0;j < i;j++)
{
printf("%d ",*(ptr+j));
}
printf("\n\n");
printf("是否把它们相加?(y / n)");
fflush(stdin);
ans = getchar();
if(ans == 'y' || ans == 'Y')
{
printf("\n输入数字相加后:");
for(j = 0;j < i;j++)
{
z = z + (*(ptr+j));
printf("%d",z);
}
printf("\n");
}
}
最后的输出结果是数组里面全部的输入的数字相加,为什么算出来的结果不对啊?希望高手指点一下~
参考答案:把最后的printf("%d",z);放到for循环外
变成
for(j = 0;j < i;j++)
{
z = z + (*(ptr+j));
}
printf("%d",z);