C语言之找最大数

本文介绍了一个C语言函数FindMaxAndcount,它接受一个整数数组,找出数组中的最大值并统计其出现次数。在main函数中给出了一个示例使用场景。
#include <stdio.h>
#include <stdlib.h>
void FindMaxAndcount(int* max, int* count, const int* array, int length)
{
	int i;
	*max = array[0];
	*count = 1;
	for (i = 1; i < length; i++)
	{
		if (array[i] > *max)
		{
			*max = array[i];
			*count = 1;
		}
		else if (array[i] == *max)
		{
			(*count)++;
		}
	}
}
int main(void)
{   
	{
		int a[] = {13,2,30,5,4,30};
		int Max;
		int Count;
		FindMaxAndcount(&Max,&Count,a,6);
		printf("Max=%d\n",Max);
		printf("Count=%d\n",Count);
		return 0;
	}
	return 0;
}
在C语言中,有多种方法可以实现出三个数中最大数的功能。以下是几种常见的实现方式: ### 方法一:使用三元运算符 ```c #include <stdio.h> // 求三个数字中最大的数字 int max(int a, int b, int c) { // 三元运算符 return a >= b ? (a >= c ? a : c) : (b >= c ? b : c); } int main() { int a, b, c; printf("输入三个数字\n"); scanf("%d%d%d", &a, &b, &c); printf("三个数字中最大的数字为:%d", max(a, b, c)); return 0; } ``` 此方法定义了一个`max`函数,利用三元运算符简洁地比较三个数的大小,返回最大值。在`main`函数中获取用户输入的三个整数,调用`max`函数并输出结果 [^1]。 ### 方法二:使用`if-else`语句 ```c #define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> int max(int x, int y, int z) { int n; if (x > y && x > z) n = x; else if (y > z && y > x) n = y; else n = z; return n; } int main() { int a, b, c, d; scanf("%d%d%d", &a, &b, &c); d = max(a, b, c); printf("%d", d); return 0; } ``` 该方法同样定义了`max`函数,通过`if-else`语句进行条件判断,出最大值并返回。在`main`函数中读取用户输入,调用`max`函数并输出结果 [^2]。 ### 方法三:使用多个`if`语句(支持浮点数) ```c #include <stdio.h> int main() { double n1, n2, n3; // 存储三个浮点数(支持小数,如3.14、5.6等) printf("输入3个数字:"); scanf("%lf %lf %lf", &n1, &n2, &n3); // 按空格分隔读取三个数 // 判断n1是否为最大值(大于等于n2和n3) if (n1 >= n2 && n1 >= n3) printf("%.2f是最大数\n", n1); // 判断n2是否为最大值 if (n2 >= n1 && n2 >= n3) printf("%.2f是最大数\n", n2); // 判断n3是否为最大值 if (n3 >= n1 && n3 >= n2) printf("%.2f是最大数\n", n3); return 0; } ``` 此方法使用`double`类型存储输入的数字,支持小数输入。在`main`函数中,通过多个`if`语句分别判断每个数是否为最大值,并输出结果 [^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值