Как использовать integer 2D на языке C?

#c #integer #2d

#c #целое #2d

Вопрос:

Я выполняю задание моего колледжа. Я написал так

 int debut[10][100];
char ngroup[10][100];

do
{
    printf("1. Group name [1..25] : ");
    gets (ngroup[0]);
}while (strlen(ngroup[0])< 1 || strlen(ngroup[0])>25);
do
{
    printf("2. Year debute [1900-2011] : ");
    scanf("%d",amp;debut[0]);
} while (debut[0] < 1900 || debut[0] > 2011);
  

Я имею в виду, я хочу сохранить много названий групп, которые могут быть добавлены пользователями, а также год дебюта. Но, когда я выполнил проверку дебютного года с 1900 по 2011 год, это не сработало. Кто-нибудь знает решение?

Ответ №1:

debut[0] это указатель на массив из 100 целых чисел, и вы пытаетесь сравнить его с целочисленным значением. Вам нужно что-то вроде этого:

 int debut[10];
...
    scanf("%d",amp;debut[0]);
} while (debut[0] < 1900 || debut[0] > 2011);
  

Комментарии:

1. но если бы я использовал 1 общий массив, мог бы я сохранить более 1 дебюта для других групп?