LeaflLit 发表于 2021-10-18 22:50:53

s1e21 指针 动动手的第0题

本帖最后由 LeaflLit 于 2021-10-18 22:52 编辑

能帮忙修改一下吗 看不出来问题{:10_250:}

jackz007 发表于 2021-10-18 23:12:23

本帖最后由 jackz007 于 2021-10-18 23:28 编辑

      【代码-1】:
#include <stdio.h>

int main(void)
{
      int a , b , c , * d , * e , * f                           ;
      printf("请输入三个数:")                                  ;
      scanf("%d%d%d" , & a , & b , & c)                         ;
      d = (a < b && a < c) ? & a : (b < a && b < c) ? & b : & c ; // 指针 d 指向 a、b、c 中最小的那一个;
      e = (b < a && a < c) ? & a : (b > a && b < c) ? & b : & c ; // 指针 e 指向 a、b、c 中数值第二大的那一个;
      f = (a > b && a > c) ? & a : (b > a && b > c) ? & b : & c ; // 指针 f 指向 a、b、c 中最大的那一个;
      printf("%d < %d < %d\n" , * d , * e , * f)                ;
}
      【代码-2】:
#include <stdio.h>

void swap(int * a , int * b)
{
      int t                                 ;
      t = * a                               ;
      * a = * b                           ;
      * b = t                               ;
}

int main(void)
{
      int a , b , c , d                     ;
      printf("请输入三个数:")            ;
      scanf("%d%d%d" , & a , & b , & c)   ;
      if(a > b) swap(& a , & b)             ; // 确保 a 最小(1)
      if(a > c) swap(& a , & c)             ; // 确保 a 最小(2)
      if(b > c) swap(& b , & c)             ; // 确保 b 比 c 小
      printf("%d < %d < %d\n" , a , b , c);
}

hujiamiao1990 发表于 2021-10-19 15:10:48

#include<stdio.h>

int main(void) {
        int a, b, c;
        int* d, * e, * f, * g;
        printf("请输入三个数:");
        scanf_s("%d%d%d", &a, &b, &c);
        d = &a;
        e = &b;
        f = &c;
       
        if (a > b)
        {
                g = d;
                d = e;
                e = g;
        }
        if (a > c)
        {
                g = d;
                d = f;
                f = g;
        }

        if (b > c)
        {
                g = e;
                e = f;
                f = g;
        }
        printf("d(%d) <= e(%d) <= f(%d)",
                                          *d, *e, *f);

        return 0;
}
页: [1]
查看完整版本: s1e21 指针 动动手的第0题