这个程序编译得很好,但是当我运行它时会返回一条消息"浮点异常".我看了其他线程,问题似乎是除以0,但我查看了程序,并且在整个程序中没有除零.我甚至使用绝对值函数以防万一.
顺便说一下,该程序旨在减少分数.
示例输入:6 12,表示6/12
预期输出的分数:1/2
#include <stdio.h>
/*declaring variables*/
int num1, num2, num1b, num2b, gcd, x;
int higher, lower, higher_2, lower_2;
/*declaring functions*/
int find_gcd(int num1, int num2);
void reduce(int numerator, int denominator, int *reduced_numerator, int *reduced_denominator);
int main(void)
{
do
{
printf("enter 2 numbers: ");
scanf("%d %d", &num1, &num2);
reduce(higher, lower, &higher_2, &lower_2);
printf("enter 0 to end program and any number continue: \n");
scanf("%d", &x);
} while(x != 0);
return 0;
}
void reduce(int numerator, …Run Code Online (Sandbox Code Playgroud)