Я пытался просто составить множество строк с разными переменными для ввода курсов, затем курсы были назначены на кредиты и выведены на квитанцию.Но вместо 300+ линий переключателей я хотел создать функцию переключателя, которую мог бы вызывать.Я решил сделать цикл for для запуска функции switch в зависимости от количества выбранных курсов, но когда я запускаю его, код работает вечно, даже не возвращая 0, чтобы завершить программу.Какие-нибудь советы по вызову функции или если я делаю это плохо?
int studentId, var, i;
float first;
int course, course1, course2;
float second, amount;
float credit1, credit2, credit3, credit4, credit5, credit6, credit7, credit8;
float paymentA, paymentB, paymentC, paymentD, total;
float creditA, creditB;
char *a;
void courseInfo(int myCourse){
switch(myCourse)
{
case 4587:
credit1 = 4;
a = "MAT 236";
break;
case 4599:
credit1 = 3;
a = "COP 220";
break;
case 8997:
credit1 = 1;
a = "GOL 124";
break;
case 9696:
credit1 = 3;
a = "COP 100";
break;
case 4580:
credit1 = 3;
a = "MAT 230";
break;
case 4581:
credit1 = 4;
a = "MAT 231";
break;
case 4582:
credit1 = 2;
a = "MAT 232";
break;
case 4583:
credit1 = 2;
a = "MAT 233";
break;
case 3587:
credit1 = 4;
a = "MAT 256";
break;
case 4519:
credit1 = 3;
a = "COP 420";
break;
case 6997:
credit1 = 1;
a = "GOL 127";
break;
case 9494:
credit1 = 3;
a = "COP 101";
break;
default:
printf("Sorry invalid entry!\n\n");
}
printf("%.2d\t%.2c\t%.2f\t\t$ %.2f\n", course, a, credit1 , credit1*120.25);
}
int main()
{
/*taking in the variables amounts*/
printf("Please enter Student ID:\n");
scanf("%i", &studentId);
printf("Enter how may courses-up to 3:\n");
scanf("%f", &amount);
for(i = 1; i = amount; i++){
printf("Enter the %.2f course number(s)\n", amount);
scanf("%i %i %i", &course, &course1, &course2);
courseInfo(course);
courseInfo(course1);
courseInfo(course2);
}
Я просто хотел, чтобы на входе было сказано, например, 3 курса, вы бы ввели 3 курса CRN, которые вы хотели бы пройти, они встретились бызатем распечатайте цены и то, что вы брали, затем повторите цикл для следующих 3. Я подумал, что если ничего не было введено, как если бы кто-то выбрал 1 курс, переменным course1 и course2 не было бы присвоено значение, таким образом пропускаяпереключатель