比较俩个数字的大小

简介: 比较俩个数字的大小

对于比较俩个数字的大小,不同人有着不同的见解!(暗指多种方法),在此,笔者仅仅领悟了俩种简单的写法,求各位斧正


法一:定义第三个变量类型,这个方法是最简单也是身为小白的我,最容易想象出来的;


话不多说,直接上代码!


允许定义新变量


#include <stdio.h>
int main()
{
    int x, y,a;
    printf("请输入俩个数字:  \n");
    scanf_s("%d,%d", &x, &y);
    a = x;
    x = y;
    y = a;
    printf("%d,%d", x, y);
    return 0;
}


0a2653c851af460fa595bd959398a8f1.png



在这里面a作为传说中的第三者出现,首先,通过=赋值运算符,将x的值赋值给a,然后在进行一系列的a,x,y之间的交换,将x与y之间的数字进行交换


运行结果如下图所示:


6de278e6d6694ce5bb08e7e842b7e74b.png


在这里的代码中:三者之间的变换顺序很重要!


第二种方法!笔者绞尽脑汁,参考众多资源,最终,在掉了一撮毛发的艰辛不易之下,终于思考出来了,从此,我也可以说,笔者也能用俩种方法进行俩个数字之间的交换了!


话不多说,代码直接上就是!


//给定俩个整型变量的值,将两个数字进行交换
//不允许定义新变量
#include <stdio.h>
int main()
{
    int x, y;
    scanf_s("%d,%d", &x, &y);
    x = x + y;
    y = x - y;
    x = x - y;
    printf("%d,%d", x, y);
    return 0;
}


0a2653c851af460fa595bd959398a8f1.png



在这里,注意代码间的逻辑顺序


x = x + y;

   y = x - y;

   x = x - y;


经过我的认真思考,最终想出代码精华部分,传授给各位大佬。


首先,将俩个数字的和,进行相加,即 x = x + y;部分,在之后的代码,都是在这个基础上进行的运算。    y = x - y; x = x - y;代码简单逻辑顺序,在看着这个代码时候感觉确实不是很难,但是对于无厘头的漫天去思考,确实为难!


最终的运行结果如下图所示:


6de278e6d6694ce5bb08e7e842b7e74b.png


结尾:


可能对于俩数字交换的方法有不同见解,但是笔者目前仅仅只能思考出来最为简单的俩种。求斧正


相关文章
|
存储 机器学习/深度学习 Java
数组的定义和使用(全是干货)
数组的定义和使用(全是干货)
129 0
|
6月前
|
存储 算法
每日一题 (不用加减乘除做加法,找到数组中消失的数字)
每日一题 (不用加减乘除做加法,找到数组中消失的数字)
32 0
|
C语言
乘法口诀标的打印及解释
打印乘法口诀表可以说是c语言中一个很经典的一个简单程序了。 打印乘法口诀表的第一反应可能会是很难,怎么打印出这么多相乘的数呢。但是仔细想分析和考虑的话,其实很简单。那么我来说一下打印乘法口诀表的思路。
72 0
题目:下列给定程序中函数fun的功能是:从p所指字符串中找出ASCII码值最大的字符,将其放在第一个位置上,并将该字符前的原字符向后顺序移动。
题目:下列给定程序中函数fun的功能是:从p所指字符串中找出ASCII码值最大的字符,将其放在第一个位置上,并将该字符前的原字符向后顺序移动。
顺序打印整型数字的每一位
顺序打印整型数字的每一位
49 0
剑指offer-2.不修改数组找出重复的数字
剑指offer-2.不修改数组找出重复的数字
46 0
剑指offer 02. 不修改数组找出重复的数字
剑指offer 02. 不修改数组找出重复的数字
63 0
|
存储 算法 JavaScript
寻找数组中的重复数字
寻找数组中的重复数字
寻找数组中的重复数字
|
C语言
用函数初步实现比较俩个数字的大小
用函数初步实现比较俩个数字的大小
96 0
用函数初步实现比较俩个数字的大小
|
C语言
接受一个整型值,按照顺序打印他的每一位(函数,递归方法)
接受一个整型值,按照顺序打印他的每一位(函数,递归方法)
188 0
接受一个整型值,按照顺序打印他的每一位(函数,递归方法)