我使用for循环来读取和打印值。如您所见,它只存储最后一个输入。有什么建议吗?
#include <stdio.h>
int main()
{
int i;
for(int a = 0; a < 5; a ++)
{
printf("Enter your age: ");
scanf("%d", &i);
}
for(int b = 0; b < 5; b ++)
{
printf("Hi I'm %d years old\n", i);
}
return 0;
}
这是输出。
Enter your age: 11
Enter your age: 22
Enter your age: 33
Enter your age: 44
Enter your age: 55
Hi I'm 55 years old
Hi I'm 55 years old
Hi I'm 55 years old
Hi I'm 55 years old
Hi I'm 55 years old
答案 0 :(得分:1)
您的问题是您只存储了收到的最后一个答案。我能给你的最简单的解决方案是使用数组:
#include <stdio.h>
int main()
{
int ages[5];
for(int i = 0; i < 5; i++)
{
printf("Enter your age: ");
scanf("%d", &ages[i]);
}
for(int i = 0; i < 5; i++)
{
printf("Hi I'm %d years old\n", ages[i]);
}
return 0;
}
但实际上,请选择其中一个推荐books并阅读更多内容