第4次作业(条件)比较大小。

题目7-4 比较大小
1.实验代码

#include <stdio.h>
int main()
{
  int a,b,c,t;
  scanf("%d %d %d",&a,&b,&c);
  if(a>b){
    t=a;
    a=b;
    b=t;
  }
  if(a>c){
    t=a;
    a=c;
    c=t;
  }
  if(b>c){
    t=b;
    b=c;
    c=t;
  }
  printf("%d->%d->%d",a,b,c);
  return 0;
}

2.设计思路

通过if条件,将a变成输入的三个数中最大的那一个,b为第二大,c为最小。

3.本题调试过程碰到问题及解决办法

刚开始看到比较大小时的第一个想法是:C语言里应该有两个“函数”,一个来表示取这组数据中的最大值(Max),一个来表示去这组数据中的最小值(min)。但是经过查找资料,耗费了很长时间,到最后依然没有找到心中想象的那个“函数”,所以就想到一个一个的可能都写出来,毕竟只有三个输入的数据,各种可能加在一起也可以数的过来,但是在程序输到一半的时候我放弃了,因为感觉这样输入的代码太过繁琐,并且没有实际的作用,潜意识的认为这种情况就算是写对了,也没有达到这道题目想要自己学习的“点”,因此我放弃了一种一种可能全输上去的方法,开始寻找第三种,也就是If 赋值法,最开始我将题目完整的复制到百度搜索,看到了if条件赋值的方法,最开始我是不理解这种方法的实际应用的,因此我将网上找到的源代码完整的复制到了我的电脑中的“dev c++”中,自己进行编译输入了一些数据,并用口算跟着代码的编写去进行了一次计算,懂得了if赋值方法的应用,因此开始自己尝试编写代码来验证自己对代码的认识。刚开始的输入因为不理解"->"符号的意思而频繁出错。
事实证明不动脑思考动动手指问别人是不可靠而且没有用处的,经过仔细的查看题目,我发现了"2->4->8"的字样,因此知道了"->"不是自己认知上的">"而是"<",所以我将代码进行了修改,但是结果也不尽人意。
因此我开始调试程序,发现a和b先互换,b和c再互换,这时

猜你喜欢

转载自www.cnblogs.com/xiaofengqaq/p/9845665.html