Задать массив в case`ах - C (СИ)
Формулировка задачи:
Вот столкнулся с проблемой, хочу массив указать в switch`e:
да вот я понял что нельзя так делать, ругается компилятор
есть конечно другой вариант, делать три вида массивов и в каждом кейсе писать тот массив что нужен мне.
можно ли всё таки как-то в свиче задать массив - так экономней по написанию кода будет
cout<<"Тип массива\n(1) Целочисленный\n(2) Дробный\n(3) Текстовый\n"; cin>>type; const int N_A = 12, N_B=12, N_C=N_A+N_B; int C[N_C], A[N_A], B[N_B]; switch (type){ case 1: int C[N_C]={0}, A[N_A]={1,2,3,4,5,6,7,8,9,10,11,12}, B[N_B]={10,11,12,13,14,15,16,17,18,19,20,21};break; case 2: int C[N_C]={x}, A[N_A]={q,w,e,r,t,y,u,i,o,p,a,s}, B[N_B]={p,a,s,d,f,g,h,j,k,l,z,c};break; ...
Решение задачи: «Задать массив в case`ах»
textual
Листинг программы
cout<<"Тип массива\n(1) Целочисленный\n(2) Дробный\n(3) Текстовый\n"; cin>>type; const int N_A = 12, N_B=12, N_C=N_A+N_B; int C[N_C], A[N_A], B[N_B]; switch (type){ case 1: if(true) { int C[N_C]={0}, A[N_A]={1,2,3,4,5,6,7,8,9,10,11,12}, B[N_B]={10,11,12,13,14,15,16,17,18,19,20,21}; } break; case 2: if(true) { int C[N_C]={x}, A[N_A]={q,w,e,r,t,y,u,i,o,p,a,s}, B[N_B]={p,a,s,d,f,g,h,j,k,l,z,c}; } break;
Объяснение кода листинга программы
- Пользователю предлагается выбрать тип массива для создания.
- Затем пользователю предлагается ввести тип массива.
- Далее определены константы для размеров массивов A, B и C.
- Затем созданы массивы A, B и C.
- После этого происходит проверка введенного пользователем типа массива с помощью оператора switch.
- В случае если пользователь ввел 1, то создаются и заполняются массивы A, B и C определенным образом.
- В случае если пользователь ввел 2, то создаются и заполняются массивы A, B и C другим образом.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д