#include<stdio.h>
#include<stdlib.h>
int main()
{
char str[10][50];
for(int i=0;i<10;i++)
fgets(str[i],50,stdin);//some runtime error occurs and execution stops completely
for(int i=0;i<10;i++)
printf("str[%d]=%sn",i,str[i]);
return 0;
}
我想以str[0]="hello world"
和str[1]="good answer"
的形式提供输入,直到str[9]
但我无法使用下面的for()
循环提供输入
好吧,您正在循环for()
c 程序中执行动态声明,这在 C 编程语言中是不允许的,但在C++中是允许的。
#include<stdio.h>
#include<stdlib.h>
int main()
{
char str[10][50];
int i;
for(i=0;i<10;i++)
fgets(str[i],50,stdin);
for(i=0;i<10;i++)
printf("str[%d]=%sn",i,str[i]);
system("pause");
return 0;
}
这个程序工作得很好。