У меня возникла проблема с моим одним заданием. Я сделал одно имя функции chequingsaving
, и когда я вызываю эту функцию, он печатает некоторые данные, которые являются правильными, но когда я ввел символ, зависит от моего выбора учетной записи, он напрямую выходит из цикла. Если я введу правильное значение символа, то произойдет то же самое. Этот код функции приведен ниже. Помогите мне узнать мою ошибку. Дело в том, что я также использовал случай переключения, но все же он напрямую переходит к умолчанию. То же самое происходит с циклом if/else.switch case loop statement
void chequingsaving() /*Chequing and saving account function*/
{
char a;
double r, Initialamount = 0;
printf(" c) Chequing\n");
printf(" s) Savings\n");
printf("Which account would you like to use?\n");
scanf("% c", &a);
if (a == 'c' || a == 'C')
{
printf("Please enter the amount for deposit\n");
scanf("% lf", &r);
Initialamount = Initialamount + r;
printf("Your chequing account balance is=%lf", Initialamount);
}
else
if (a == 's' || a == 'S')
{
printf("Please enter the amount for deposit\n");
scanf("%lf", &r);
Initialamount = Initialamount + r;
printf("Your chequing account balance is=%lf", Initialamount);
}
else
printf("Invalid character\n");
}
Вы отлаживали значение a, когда оно вводит инструкции if/else? – lintmouse