C语言三个数字比大小详细写法合集比细狗还细(12种方法还不够你用吗)

这篇具有很好参考价值的文章主要介绍了C语言三个数字比大小详细写法合集比细狗还细(12种方法还不够你用吗)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


大家好我是内向的代码。
使用软件devc++
以下都是小编我个人总结的一些常见以及不常见的 找最大值以及最小值希望各位读者不要吝啬自己的赞点击关注是小编坚持更新的动力!在此谢谢大家了。

简单版:

三个数找最大值简单版

#include<stdio.h>
int max(int a,int b)
{
	return a>b?a:b;//约等于if(a>b)  a=b;a就是b的值 
}
int main(){
	int a,b,c;
	while(scanf("%d%d%d",&a,&b,&c)==3)//死循环三次;
	{
		printf("%d",max(max(a,b),c));//先跟a以及b比较再跟c比较最后得出最大值
		//max对应上面函数的max儿括号里面的max也是对应上面的max才能进行比较最后与c比较。 
	 } 
	 return 0;
}

不好意思啊大家我一直没更新居然没有发现我之前有错误现已经更正还望各位同袍海涵。😘😘

三个数找最大值

先假定i是最大数。
(笨方法以此类推假定两个是最大值最后比较)

#include<stdio.h>//从三个人里面选出最大的那个 
int main(){
	int i,j,t,max=0;
	scanf("%d%d%d",&i,&j,&t);
	max=i;
	if(max<j){
	max=j;
}
    if(max<t)
    {
    	max=t;
	}
	printf("max=%d",max);
}

三个数字找最大值以及最小值。

#include<stdio.h>//从三个人里面选出最大的那个 
int main(){
	int i,j,t,max,min;
	scanf("%d%d%d",&i,&j,&t);
	if(i>j){
	max=i;
}
	else{
	max=j;	
}
	if(max<t) 
	{
	max=t;
}

	if(i<j)
	{
	min=i;
}
    else{
    min=j;
}
  if(min>t)
  {
  min=t;
}
	printf("max=%d min=%d",max,min);
}

大家是否觉得这样子太过于繁琐毕竟如果只是几个人还好如果是几百个人呢那么这里就需要我们的数组了也就不必要一个一个去定义这样也极大的节省了时间。

我相信读者们肯定可以看懂所以我们来拓展一下思路。

进阶版:

从三个数字找最大值与数组的搭配。

#include <stdio.h>
int main()
{
	int cd;
	int arr[20];
	int i, j;
	int max = arr[20];
	printf("请输入数组长度:\n");
	scanf("%d" , &cd);	
	printf("请输入数字记得空格:");  
	for (i = 0; i <cd;i++)//循环i<你所输入的数字。	

	{
	printf("请输入%d个数字",i+1);//或者++a都可以实现输入的加一。
    scanf("%d",&arr[i] );//开始输入几个数字 
	}
	for ( j = 0;j < cd;j++) //开始循环把上面的值带入然后进行比较。 
	{  
	if (max < arr[j])  //循环套条件。 
	{    
	max = arr[j];
	} 
	} 
	printf("最大值max=%d\n", max);
	return 0;
}

这样子就可以实现在多个的人中找到最大值了,当然如果你想要找一个最小值你只需要把小于变成大于就行了。

数组找最大值以及最小值。

#include<stdio.h>//写一个只要最大值的数组。 
int main(){
	int min=10000000,max=0,j;//min写这么大是因为不写的话条件不知道成不成立。
	int n;
	printf("您想输入几个数字:"); 
 	scanf("%d",&n);//给数组赋值你要从几个数字找最大值。	
    int a[n];//进去了		
	for(j=0;j<n;j++)//开始循环输入的值 
	{  
	printf("请输入第%d个数字",j+1);//给%d依次加一直到小于n的值才停下来。 
	scanf("%d",&a[j]);//输入值。 
if(max<a[j])//条件成立最大值就是max 
max=a[j];
if(min>a[j])//条件也成立因为赋值是0肯定也成立。 
min=a[j];
}//括号退出生命结束
//保存了输出的值再往下输出
//不能放进循环否则只能输出一次。且得不到正确答案。
printf("min=%dmax= %d",min,max);
return 0;
}

等等你不会以为数组就这样子结束了吧!
数组小知识。
数组一般是从0开始的也即是起始地址并且我们再调用数组的时候也就是相当于调用指针也就是解引用操作举一个例子你就知道了。
*p == *p 而**p ==p。
接下来再进阶

从三个数字找最大值指针版本(数组)。

#include<stdio.h>
#define n 3 
int main(){
	int i,max,min=100; 
	int a[n];
	printf("请输入三个数字");
	for(i=0;i<n;i++) 
	{
	scanf("%d",&a[i]);
	int *p=&a[i];//将数组的地址值放在指针p里面
	//利用指针进行条件判断。
	if(max<*p)
	max=*p;
	if(min>*p)
	min=*p;    
}
printf("max=%dmin=%d",max,min);
return 0;
}

指针三个数找最大值笨办法

#include<stdio.h>//最笨的方法。
int main(){
	int i,j,z,max,*pi,*pj,*pz,*pmax;
	pi=&i;
	pj=&j;
	pz=&z;
	pmax=&max;
	printf("请输入三个整数:");
	scanf("%d%d%d",&i,&j,&z);
	if(*pi>*pj){
	*pmax=*pi;
}
	else {
	*pmax=*pj;
}
    if(*pmax<*pz)
    {
    	*pmax=*pz;
	}
	printf("max=%d",*pmax);
} 

三目运算符号(简单版):

思路是:直接以a为最大值最后输出a就好了原理与下方代码一样。

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

直接以max为最大值(有三个数一个是最大值那么其他两个比较就行了)。

#include<stdio.h>
int main(){
	 int i=3,j=2,z=4,max=0;
	 max=(i>j) ? i:j;
	 max=(max>z)?max:z;
	 printf("%d",max);
	 return 0;
} 

因为我们知道找最大值肯定并不是只找两三个那么我们的三目运算符号也可以用来使用数组
详细请看下方代码。
三目运算符号(数组版本)

*#include<stdio.h>
#define n 3//这是常量无法被改变的量,放进了n里面也就是三个。
int main(){
    int i,j,z,max;
    int a[n];
    printf("请输入三个数字:");
    for(i=0;i<n;i++)
    {
    	scanf("%d,",&a[i]);
	}
	for(j=0;j<n;j++)
	{
		max=(max[j])?max:a[j];
	}
	
	printf("%d",max);
}

关于上方的代码我有一点要说如果你要自己输入几个数字去判定最大值那么就不要使用define
直接使用循环
。下方的代码就是你自己去输入你要从几个数字找最大值。

#include<stdio.h> 
int main(){
	int min=10000000,max=0,j;
	int n;
	printf("您想输入几个数字:"); 
 	scanf("%d",&n);	
    int a[n];		
	for(j=0;j<n;j++) 
	{  
	printf("请输入第%d个数字",j+1);
	scanf("%d",&a[j]);
max=(max>a[j])?max:a[j];
min=(min<a[j])?min:a[j];
}
printf("min=%dmax= %d",min,max);
return 0;
}

补充说明

我们在进行数组的比较时候我们计算机不是直接看的元素而是下标。 而下标又往往是从0开始的也就是首地址。 记住数组其实也是一个指针。
我们在传递数据的时候往往是从下标的第一个数据开始传输。 第二眼计算机才看得到你的元素。 所以我们在写数组的时候往往要写一些循环。

有疑问的小伙伴们可以直接在评论区留言哟我会看的😊😊😊😊😊
咱们下期再见。文章来源地址https://www.toymoban.com/news/detail-717308.html

到了这里,关于C语言三个数字比大小详细写法合集比细狗还细(12种方法还不够你用吗)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • c语言大小写字母转换的三种方法 到 思考指针(超详细)

    目录 前言 总结摆在前面 1.指针思考的拓展 2.浅提一下表达式求值  三种方法 1.利用ASCII相差32 1.1以表达式求值的思考方式 1.2以指针的方式 2.通过按位异或来求(我觉得太巧合了,不推荐) 3.通过库函数(这个看你积累) 3.1  tolower函数——转换字符位小写 定义 参数 返回值

    2024年02月19日
    浏览(158)
  • pyqt5设置标题栏三个按钮以及窗口大小

    组件也会受影响,范围0-1,0是全透明,1是不透明

    2024年02月13日
    浏览(49)
  • 数据在内存中的储存·大小端(文字+画图详解)(c语言·超详细入门必看)

    前言:Hello,大家好,我是心跳sy😘,本节我们介绍c语言的两种基本的内置数据类型:数值类型和字符类型在内存中的储存方法,并对大小端进行详细介绍(附两种大小端判断方法),文章每个例题和知识点都会有详细的解释,友友们放心食用,我们一起来看看吧~!! 👉我

    2024年02月10日
    浏览(38)
  • 【初始C语言2】详细认识分支语句和循环语句以及他们的易错点,应用(猜大小游戏)

    系列文章目录  第一章 “C“浒传——初识C语言(更适合初学者体质哦!)  第二章  【初始C语言2】详细认识分支语句和循环语句以及他们的易错点,应用(猜大小游戏) 目录 系列文章目录 前言:        一、什么是语句? 1.1 表达式语句 1.2 函数调用语句 1.3 控制语句

    2024年02月10日
    浏览(45)
  • 数字孪生应用案例剖析:三个成功落地的项目

    随着数字孪生技术的不断发展,越来越多的企业和组织开始尝试将其应用于实际项目中,以提高效率、降低成本、提升安全性等方面的目的。本文小编将带大家了解三个市面上成功应用的 数字孪生项目 。 北京大兴国际机场项目 北京大兴国际机场项目 是由中航工程设计咨询

    2024年02月09日
    浏览(40)
  • 华为孟晚舟:数字化转型三个核心洞见

    4 月 19 日,华为第 20 届全球分析师大会在深圳开幕。华为副董事长、轮值董事长、 CFO 孟晚舟在大会上发表了 “ 初心如磐,奋楫笃行,共赢数字化未来 ” 的主题演讲, 并分享了她对数字化转型的三个核心洞见 。 内容如下: 01 数字化是整个产业链的新蓝海, 跃升数字生产

    2024年02月11日
    浏览(45)
  • AI之LLM/MLM:Nvidia官网人工智能大模型工具合集(大语言模型/多模态模型,文本生成/图像生成/视频生成)的简介、使用方法、案例应用之详细攻略

    AI之LLM/MLM:Nvidia官网人工智能大模型工具合集(大语言模型/多模态模型,文本生成/图像生成/视频生成)的简介、使用方法、案例应用之详细攻略 目录 Nvidia官网人工智能大模型工具合集的简介 1、网站主要功能包括: Nvidia官网人工智能大模型工具合集的使用方法 1、SDXL-Turbo的使

    2024年04月28日
    浏览(79)
  • 智慧园区楼宇合集:数字孪生管控系统

    智慧园区是指将物联网、大数据、人工智能等技术应用于传统建筑和基础设施,以实现对园区的全面监控、管理和服务的一种建筑形态。通过将园区内设备、设施和系统联网,实现数据的传输、共享和响应,提高园区的管理效率和运营效益,为居住者和使用者提供更加智能化

    2024年02月15日
    浏览(57)
  • 数字1渲染和其他数字大小不一致

    一、场景 手机号都是11位,但是在小程序里面会体现出长度不一样,如下图: 经过仔细观察会发现,其他数字都是对齐的,只有数字1渲染和其他数字大小不一致 二、原因 系统默认使用的是非等宽的字体 三、方法 选用等宽字体即可。例如给对应的标签添加样式:

    2023年04月08日
    浏览(40)
  • 智慧园区楼宇合集 | 图扑数字孪生管控系统

    智慧园区是指将物联网、大数据、人工智能等技术应用于传统建筑和基础设施,以实现对园区的全面监控、管理和服务的一种建筑形态。通过将园区内设备、设施和系统联网,实现数据的传输、共享和响应,提高园区的管理效率和运营效益,为居住者和使用者提供更加智能化

    2024年02月16日
    浏览(84)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包