c语言中,定义int a b c,怎么比较三个数大小,谢谢了,用c free那种?

c语言中,定义int a b c,怎么比较三个数大小,谢谢了,用c free那种?,第1张

程序分析:

我们想办法把最小的数放到a上,先将a与b进行比较,r如a>b则将a与b的值进行交换,然后再用a与c比较,如a>c则将a与c的值进行交换,这样a的值最小。

程序源代码如下

#include <stdioh>

main()

{

int a,b,c,t;

printf("Please input 3 numbers:");

scanf("%d%d%d",&a,&b,&c);

if (a>b)

{t=a;a=b;b=t;}    /交换a,b的值/

if (a>c)         

{t=c;c=a;a=t;}      //交换a,c的值

if (b>c)

{t=b;b=c;c=t;}      //交换b,c的值

printf("small to big:%d,%d,%d\n",a,b,c);

}

输出结果

写的比较简单:c语言
#include
void
main()
{
int
a,b,c,temp;
printf("请输入第1个数:");
scanf("%d",&a);
printf("请输入第2个数:");
scanf("%d",&b);
printf("请输入第3个数:");
scanf("%d",&c);
if(a>b)
{
temp=a;
a=b;
b=temp;
}
if(a>c)
{
temp=a;
a=c;
c=temp;
}
if(b>c)
{
temp=b;
b=c;
c=temp;
}
printf("比较结果:%d<%d<%d\n",a,b,c);
}

#include <stdioh>
int main()
{
int number[5] = {0};//存储五个数
int cur = 0;//当前要比较的数的下标,不能是float
float max = number[0];//当前最大的数值,初始为数组中第一个数
int index = 0;//当前最大数值在数组中的位置
printf("寻找最大值\n");
//获得五个数
while(index < 5)
{

printf("请输入第%d个数:", index+1);//这里
scanf("%d",&number[index]);
index++;/////////////////////////////////这里
}
// index=0;

while(cur < 5)
{
if (max < number[cur])//当这个数比前面数中最大的数还要大时就替换掉//////////////////////////////////////////
{
max = number[cur];//////////////////////////////cur 非index
index = cur;
}
cur++;
}
printf("最大值是数组中第%d个数,值为%06f\n", index + 1, max);
getch();
return 0;
}

浮点数如果比较是否相等的话,一般是通过(fabs(a-b)<1e-6)
但是比较大小的话,是分情况的:
如果是在精度范围内的,可以直接用a>b,a<b来比较,
如果是超过精度范围的,可以用数组存储后进行比较。

输出最大值:


#include <stdioh>
void main()
{
int a,b,c,Max;
scanf("%d %d %d",&a,&b,&c);
if (a <= b)
Max = b;
else
Max = a;
if (Max <= c)
printf("%d",c);
else
printf("%d",Max);
}


输入三个数(空格隔开),先比较前两个数大小,将较大的数赋值给Max,再比较Max与第三个数大小,输出较大的数
按降序输出:


#include <stdioh>
void main()
{
int a,b,c,max_ab,min_ab;
scanf("%d %d %d",&a,&b,&c);
if (a<=b)
{
max_ab = b;
min_ab = a;
}
else
{
max_ab = a;
min_ab = b;
}
if (max_ab <= c)
printf("%d %d %d",c,max_ab,min_ab);
else if (max_ab > c && c >min_ab)
printf("%d %d %d",max_ab,c,min_ab);
else if (max_ab > c && c <=min_ab)
printf("%d %d %d",max_ab,min_ab,c);
}


输入三个数,判断前两个数,将大的数赋值给max_ab,小的数赋值给min_ab,再将max_ab与c作比较。若c大于等于max_ab,则输出c,max_ab,min_ab若c小于max_ab且大于min_ab,则输出max_ab,c,min_ab若c小于min_ab,则输出max_ab,min_ab,c

知识延展:

C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的DMRitchie于1972年推出,1978年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。

它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发。

#include<stdioh>

//#include<windowsh>

voidmain()

{

intmax3(inta,intb,intc);

inta,b,c,result;

printf("Pleaseenterthreenumber:\n");

scanf("%d,%d,%d",&a,&b,&c);

result=max3(a,b,c);

printf("Themaxofthreenumberis%d:\n",result);

//system("pause");

}

intmax3(inta,intb,intc)

{

intx,z;

if(a>b)x=a;

elsex=b;

if(x>c)z=x;

elsez=c;

returnz;

}

扩展资料

C语言:三个数由小到大排序

#include<stdioh>

#include<stdlibh>

intmain()

{

inta,b,c,t;//定义4个基本整型变量a,b,c,t;

printf("Pleaseinputa,b,c:");

scanf("%d%d%d",&a,&b,&c);

//如果a大于b,借助中间变量t实现a、b值互换;

if(a>c)

{

t=a;

a=b;

b=t;

}

//如果a大于c,借助中间变量t实现a、c值互换;

if(a>c)

{

t=a;

a=c;

c=t;

}

//如果b大于c,借助中间变量t实现b、c值互换;

if(b>c)

{

t=b;

b=c;

c=t;

}

printf("theorderofthenumberis:\n");

printf("%d,%d,%d",a,b,c);//输出a,b,c的值顺序输出;

system("pause");

return0;

}

#include<stdioh>
int main(void)
{
float num1,num2;
printf("请输入数字1和数字2,并按回车结束!");
scanf("%f,%f",&num1,&num2);
if(num1>num2)
printf("数字1比数字2大,%f>%f",num1,num2);
else if(num1<num2)
printf("数字1比数字2小,%f<%f",num1,num2);
else
printf("两个数相等,%f=%f",num1,num2);
}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12847050.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-28
下一篇 2023-05-28

发表评论

登录后才能评论

评论列表(0条)

保存