Как закончить цикл в C? - PullRequest
       1

Как закончить цикл в C?

0 голосов
/ 26 ноября 2018

Здесь я пытаюсь завершить цикл for и завершить программу, если для температуры введено значение n.Функция CaseCheck возвращает 1, если temp = 'Y' и 0, во всех остальных случаях эта функция проверена на корректную работу.

Прямо сейчас, когда more = 0, программа будет пытаться снова запустить цикл вто же значение c, а если more = 1, будет запущено следующее значение c.

    int main()
    {
        char grades[100];
        float v[100];
        float w[100];

        int more = 1;
        char temp;

        while (more = 1)
        {
            for (int c = 0; c < 100; c++)
            {   
                printf("\n\nThis is Assignment number %d\n\nPlease enter the available mark for this assignment\n", c+1);
                scanf("%f", &v[c]);
                printf("\nPlease enter the awarded mark for this assignment");
                scanf("%f", &w[c]);
                grades[c] = GradeFromRawMarks(v[c],w[c]);
                printf("Is there another assignment? Enter Y/N");
                scanf("%s", &temp);
                more = CaseCheck(temp,'Y');
            }
        }


        return 0;
    }

1 Ответ

0 голосов
/ 26 ноября 2018

Вы можете просто вернуть, если temp равен 'n'

if (temp == 'n')
    return (0);

Кроме того, вы не должны читать тип char с указателем формата "%s", который предназначен для строк.Но лучше прочитайте ваш char с %c.Подробнее см. man scanf.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...