", когда я называю один goto как name1 с, если еще это все значения gotos. Как все name1 name2 name3 name4. Help !!! "
Кажется, вы неправильно понимаете использование goto
. Метка goto
не задает определенную группу операторов (составной оператор / блок) или просто один оператор с ним, как если бы конкретное условие соответствовало цепочке if
/ elseif
или switch
/ case
оператор.
Оператор goto name1
просто позволяет перейти в положение метки name1
. Ни больше ни меньше.
Если вы хотите достичь того, что вы описали, используйте switch
, например:
#include<stdio.h>
int main(){
int num;
printf("Name number\n");
scanf("%d",&num);
switch(num) {
case 1:
printf("M");
break;
case 2:
printf("A");
break;
case 3:
printf("I");
break;
case 4:
printf("Y");
break;
default:
break;
}
return 0;
}
Обратите внимание, что использование goto
, как вы это сделали, обычно не рекомендуется.
Вы должны взглянуть на эти сообщения:
Всегда ли выгодно использовать 'goto' в языке, который поддерживает циклы и функции? Если так, то почему?
GOTO по-прежнему считается вредным?