Найдите ошибку в сетере. Использована неинициализированная локальная переменная - C (СИ)

Узнай цену своей работы

Формулировка задачи:

int set_a_coefficent(int your_coefficent)
{
    do {
        printf("Enter a coefficent(> 0): ");
        scanf("%d", &your_coefficent);
        if (your_coefficent <= 0) {
            printf("your coefficent is so small.Try again.\n");
        }
    } while (your_coefficent <= 0);
    return 1;
}
Пишет , что использована неинициализированная локальная переменная "your_coefficent". В функции main сетер стоит первее всех остальных вызовов your_coefficent.
void set_a_coefficent(int your_coefficent);
 
main()
{
    int your_coefficent;
    set_a_coefficent(your_coefficent);
    printf("%d", your_coefficent);
    return 0;
 
}
 
void set_a_coefficent(int your_coefficent)
{
    do {
        printf("Enter a coefficent(> 0): ");
        scanf("%d", &your_coefficent);
        if (your_coefficent <= 0) {
            printf("your coefficent is so small.Try again.\n");
        }
    } while (your_coefficent <= 0);
    
}

Решение задачи: «Найдите ошибку в сетере. Использована неинициализированная локальная переменная»

textual
Листинг программы
void set_a_coefficent(int *your_coefficent)
{
    do {
        printf("Enter a coefficent(> 0): ");
        scanf("%d", your_coefficent);
        if (*your_coefficent <= 0) {
            printf("your coefficent is so small.Try again.\n");
        }
    } while (*your_coefficent <= 0);
    
}

Объяснение кода листинга программы

  1. Введен адрес функции set_a_coefficent, которая принимает указатель на целочисленную переменную your_coefficent.
  2. В функции используется цикл do-while, который будет выполняться до тех пор, пока значение переменной your_coefficent не станет больше нуля.
  3. Внутри цикла выводится сообщение с приглашением ввести коэффициент.
  4. Используется функция scanf для считывания введенного значения и сохранения его в переменной your_coefficent.
  5. Если введенное значение меньше или равно нулю, выводится сообщение об ошибке и предложение повторить ввод.
  6. Цикл продолжается до тех пор, пока значение переменной your_coefficent не станет больше нуля.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.455 из 5
Похожие ответы