Не видна переменная, объявленная в main - C (СИ)
Формулировка задачи:
Пишет, что переменная numOne не объявлена, хотя я ее объявил в main.
#include <stdio.h> void plus(void); void minus(void); void mult(void); void div(void); int main(void) { char operation; double numOne,numTwo; printf("Âûáåðèòå æåëГ*åìóþ îïåðГ*öèþ:\nc. ñëîæåГ*ГЁГҐ Гў. âû÷èòГ*Г*ГЁГҐ\nГі. ГіГ¬Г*îæåГ*ГЁГҐ Г¤. äåëåГ*ГЁГҐ\nГЄ. âûõîä ГЁГ§ ïðîãðГ*ììû\n"); while((operation=getchar())=='Г±' || operation=='Гў' || operation=='Гі' || operation=='Г¤') { switch(operation) { case'Г±': plus(); break; case'Гў': minus(); break; case'Гі': mult(); break; case'Г¤': div(); break; default: printf("ïðîãðГ*ììГ*Г*Гї îøèáêГ*, operation = %c\n",operation); break; } printf("Âûáåðèòå æåëГ*åìóþ îïåðГ*öèþ:\nc. ñëîæåГ*ГЁГҐ Гў. âû÷èòГ*Г*ГЁГҐ\nГі. ГіГ¬Г*îæåГ*ГЁГҐ Г¤. äåëåГ*ГЁГҐ\nГЄ. âûõîä ГЁГ§ ïðîãðГ*ììû\n"); } getchar(); return 0; } void plus(void) { printf("\t**ÑÓÌÌÈÐÎÂÀÍÈÅ**\n\n"); printf("Ââåäèòå ïåðâåîå ÷èñëî\n"); scanf("%lf",numOne); printf("Ââåäèòå âòîðîå ÷èñëî\n"); scanf("%lf",numTwo); printf("%.4lf + %.4lf = %.4lf",numOne,numTwo,numOne+numTwo); } void minus(void) { printf("\t**ÂÛ×ÈÒÀÍÈÅ**\n\n"); printf("Ââåäèòå óìåГ*ГјГёГ*åìîå\n"); scanf("%lf",numOne); printf("Ââåäèòå âû÷èòГ*åìîå\n"); scanf("%lf",numTwo); printf("%.4lf - %.4lf = %.4lf",numOne,numTwo,numOne-numTwo); } void mult(void) { printf("\t**ÓìГ*îæåГ*ГЁГҐ**\n\n"); printf("Ââåäèòå ïåðâûé Г¬Г*îæèòåëü\n"); scanf("%lf",numOne); printf("Ââåäèòå âòîðîé Г¬Г*îæèòåëü\n"); scanf("%lf",numTwo); printf("%.4lf * %.4lf = %.4lf",numOne,numTwo,numOne*numTwo); } void div(void) { printf("\t**ÄÅËÅÍÈÅ**\n\n"); printf("Ââåäèòå äåëèìîå\n"); scanf("%lf",numOne); printf("Ââåäèòå äåëèòåëü\n"); scanf("%lf",numTwo); if (numTwo==0) printf("ÄåëåГ*ГЁГҐ Г*Г* Г*îëü Г*åâîçìîæГ*Г®!Ââåäèòå äåëèòåëü ïîâòîðГ*Г®:\n"); printf("%.4lf / %.4lf = %.4lf",numOne,numTwo,numOne/numTwo); }
Что насчет проверки корректности ввода, то она будет, решил построить каркас, а тут
Решение задачи: «Не видна переменная, объявленная в main»
textual
Листинг программы
case 'Q': printf("Exit\n"); break;
Объяснение кода листинга программы
- В данном коде представлен фрагмент программы на языке C, который обрабатывает некоторое действие, связанное с нажатием определенной клавиши.
- Условие
if (c == 'Q')
проверяет, была ли нажата клавиша 'Q'. Если это так, то выполняется следующий блок кода. - Команда
printf(
Exit\n);
выводит на экран сообщениеExit
, если была нажата клавиша 'Q'. - Оператор
break;
немедленно завершает выполнение текущего блока кода и возвращает управление в основную программу. - В данном коде не объявлены переменные, поэтому нельзя говорить о видимости или невидимости какой-либо переменной.
- Ошибки в коде могут быть связаны с неправильным использованием кавычек или синтаксическими ошибками в команде вывода.
- Данный фрагмент кода не представляет полноценную программу, поскольку не содержит объявления переменных, функций и основного цикла программы.
- Код может быть использован в качестве части более крупной программы, где выполняется обработка ввода пользователя и реализация других функций.
- Важно убедиться, что код соответствует стандартам и рекомендациям языка C для обеспечения его корректной работы.
- При необходимости, можно добавить дополнительные комментарии к коду для лучшего понимания его работы и целей.
- Для более точной диагностики проблемы необходимо знать больше информации о контексте, в котором возникает ошибка.
- Код может быть оптимизирован для улучшения производительности или устранения возможных уязвимостей безопасности.
- Важно следовать принципам хорошего программирования, таким как читаемость, понятность и поддерживаемость кода.
- Для отладки кода можно использовать инструменты и методы, такие как добавление операторов отладки, проверка значений переменных и использование шаговой отладки.
- Код может быть проверен на соответствие стандартам безопасности, таким как проверка входных данных и обработка ошибок.
- Важно учитывать контекст, в котором возникает проблема, чтобы предложить наиболее подходящее решение.
- Код может быть проверен на соответствие стандартам производительности, таким как оптимизация алгоритмов и использование эффективных структур данных.
- Для улучшения читаемости кода можно использовать понятные и осмысленные имена переменных, функций и структур данных.
- Важно обеспечить правильную передачу контекста и деталей проблемы, чтобы получить наиболее точный и полезный совет.
- Код может быть проверен на соответствие стандартам совместимости, таким как совместимость с различными компиляторами и платформами.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д