Программа C работает в Linux, но не в Windows?Linux

Ответить
Anonymous
 Программа C работает в Linux, но не в Windows?

Сообщение Anonymous »


Я новичок в C, но в последнее время посвятил больше времени его изучению из-за курса, в котором я учусь, но у меня возникла странная проблема с моей программой. Приведенный ниже код компилируется как в Linux, так и в Windows, но при запуске он работает корректно в Linux, но в Windows он просто переходит к «Концу выполнения программы».

#include пустая окружность (int a); // прототипы функций для окружности, площади и объема пустая область (int b); пустой объем (int c); int main (недействительный) { // инициализируем массив из трех указателей на функции, каждая из которых принимает аргумент int и возвращает void void (*f[3])(int) = {окружность, площадь, объём}; printf("%s", "Введите 0, чтобы вычислить длину окружности, 1, чтобы вычислить площадь, 2, чтобы вычислить объем, и 3, чтобы вычислить конец: "); // просит пользователя сделать выбор размер_t выбор; // переменная для хранения выбора пользователя scanf("%u", &choice); ставит(""); // цикл while, проверяющий выбор пользователя, завершающийся, если число 3 или больше while (выбор >= 0 && выбор < 3) { если (выбор == 0) { окружность (на выбор); } // конец, если если (выбор == 1) { район(на выбор); } // конец, если если (выбор == 2) { объем(выбор); } // конец, если ставит(""); printf("%s", "Введите 0, чтобы вычислить длину окружности, 1, чтобы вычислить площадь, 2, чтобы вычислить объем, и 3, чтобы вычислить конец: "); scanf("%u", &choice); ставит(""); } // заканчиваем, пока puts("Выполнение программы завершено."); // Уведомляет пользователя о завершении программы } // конец основного // функция для вычисления длины окружности с заданным пользователем радиусом пустая окружность (int a) { двойной радиус; // переменная для радиуса printf("Пожалуйста, введите радиус: "); // просит пользователя ввести радиус и сохраняет его scanf("%lf", &radius); ставит(""); двойная окружность = 2*3,14159*радиус; // вычисляет длину окружности по формуле 2πr printf("Вычислена длина окружности.\n"); printf(" Радиус: %lf Окружность: %lf", радиус, окружность); // печатаем радиус и окружность ставит(""); } // конечная окружность // функция для вычисления площади круга с заданным пользователем радиусом пустая область (int b) { двойной радиус; // переменная для радиуса printf("Пожалуйста, введите радиус: "); // просит пользователя ввести радиус и сохраняет его scanf("%lf", &radius); ставит(""); двойная площадь = 3,14159*(радиус*радиус); // вычисляет площадь по формуле πr^2 printf("Вычислена площадь круга.\n"); printf(" Радиус: %lf Площадь: %lf", радиус, площадь); // печатает радиус и площадь ставит(""); } // конечная область // функция для вычисления объема сферы с заданным пользователем радиусом пустой объем (int c) { двойной радиус; // переменная для радиуса printf("Пожалуйста, введите радиус: "); // просит пользователя ввести радиус и сохраняет его scanf("%lf", &radius); ставит(""); двойной объем = (4,0/3,0) * 3,14159 * (радиус * радиус * радиус); // вычисляет объем по формуле (4/3)πr^3 printf("Объем сферы рассчитан.\n"); printf(" Радиус: %lf Объем: %lf", радиус, объем); // печатает радиус и объем ставит(""); } // конец тома У меня никогда раньше не возникало такой проблемы, поэтому я немного озадачен, так как не думаю, что использовал что-то специфичное для системы. Любая помощь будет принята с благодарностью.
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Linux»