面向对象程序设计上机练习二(函数模板)

28 篇文章 1 订阅
17 篇文章 1 订阅

题目描述
利用数组和函数模板求5个数最大值(分别考虑整数、单精度、长整数的情况)。
输入
分别输入5个int型整数、5个float 型实数、5个long型正整数。
输出
分别输出5个int型整数的最大值、5个float 型实数的最大值、5个long型正整数的最大值。
示例输入
11 22 666 44 55
11.11 22.22 33.33 888.88 55.55
1234567 222222 333333 444444 555555

示例输出
666
888.88
1234567

 

#include <stdio.h>
int max1(int a[], int n);
long int max2(long int b[], int m);
float max3(float c[], int p);
void main()
{
	int x[5], i, j, k, a;
	long int y[5], c;
	float z[5],b;
	for(i = 0; i <= 4; i++)
		scanf("%d", &x[i]);
	for(k = 0; k <= 4; k++)
		scanf("%f", &z[k]);
	for(j = 0; j <= 4; j++)
		scanf("%ld", &y[j]);
	a = max1(x, 5);
	c = max2(y, 5);
	b = max3(z, 5);
	printf("%d\n%.2f\n%ld\n", a, b, c);
}
int max1(int a[], int n)
{
	int i, k, t;
	for(i = 0; i <= n - 2; i++)
	{
		for(k = 0; k <= n - i - 2; k++)
			if(a[i] > a[k])
			{t = a[i]; a[i] = a[k]; a[k] = t;}
	}
			return a[0];
}
long int max2(long int b[], int m)
{
	int i, k;
	long int t;
	for(i = 0; i <= m - 2; i++)
	for(k = 0; k <= m - i - 2; k++)
			if(b[i] > b[k])
			{t = b[i]; b[i] = b[k]; b[k] = t;}
	
			return b[0];
}
float max3(float c[], int p)
{
	int i, k;
	float t;
	for(i = 0; i <= p - 2; i++)
		for(k = 0; k <= p - i - 2; k++)
			if(c[i] > c[k])
			{t = c[i]; c[i] = c[k]; c[k] = t;}
	
			return c[0];
}


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值