云起782 2023-01-06 10:35 采纳率: 60%
浏览 70
已结题

关于#c语言#的问题:C语言计算斜率输出最简分数输入四个整数x1

C语言计算斜率输出最简分数
输入四个整数x1,y1,x2,y2,分别为两点坐标。输出这两点确定的直线斜率用最简分数表示,不存在则输出-1

  • 写回答

1条回答 默认 最新

  • 感谢地心引力 嵌入式领域优质创作者 2023-01-06 10:50
    关注
    
    #include <stdio.h>
    #include <stdlib.h>
    
    int gcd(int a, int b) {
      // 计算最大公约数
      if (b == 0) {
        return a;
      }
      return gcd(b, a % b);
    }
    
    int main() {
      int x1, y1, x2, y2;
      scanf("%d%d%d%d", &x1, &y1, &x2, &y2);
    
      if (x1 == x2) {
        // 如果两点横坐标相同,斜率不存在
        printf("-1\n");
      } else {
        // 计算斜率
        int k = abs(y2 - y1);
        int n = abs(x2 - x1);
        int g = gcd(k, n);
        k /= g;
        n /= g;
        printf("%d/%d\n", k, n);
      }
    
      return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 1月16日
  • 已采纳回答 1月8日
  • 创建了问题 1月6日

悬赏问题

  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助