У меня есть эта программа. Я хочу вводить многословные строки в двухмерном массиве. Но вместо ввода цельной строки в первом массиве 2-D массива эта программа вводит первые три слова моей строки в первые три массива каждый (поскольку я определил число строк в моем двумерном массиве). Здесь пока программа:Как ввести многословную строку в C
int main()
{
char title[50];
int track;
int question_no;
printf("\nHow many questions?\t");
scanf("%d",&question_no);
track=0;
char question[question_no][100];
while(track<=question_no)
{
printf("Question no %d is:",track+1);
scanf("%s",question[track]);
printf("Q %d.%s",track,question[track]);
track++;
}
}
Здесь «question_no» это не строк, я хочу, чтобы ввести в моем 2-D array- «вопрос». Но когда я ввожу первую строку, первые три слова строки вводятся в три массива 2-мерного массива. Он даже не просит меня вводить 2-ю или 3-ю строки.
Решение этой проблемы, как я считаю, должно быть трехмерным массивом. Потому что в этом случае 2-D массивы внутри самого внешнего массива будут печатать целую многословную строку (но и я тоже связан с длиной каждой строки). Если эта концепция 3-мерного массива может решить проблему, то есть ли и эффективный метод? Это лучше, быстрее и менее трудоемко, чем метод трехмерных массивов.
Я новичок, поэтому я не могу понять. Но я сохранил его в .pdf для будущего обучения. :) –
Спасибо @paxdiablo Ты настоящий профессионал. Я сейчас учу вас от вас. –