C++/PTA 函数重载(数据类型不同)

函数重载(数据类型不同)

题目要求

用同一个函数名对n(n<=10)个数据进行从小到大排序,数据类型可以是整数、浮点数,用函数重载实现。

输入格式:
输入n 例如 3
输入n个整数,例如 10 8 9
输入n个浮点数 例如 10.23 5.16 7.99

输出格式:
输出n个整数的升序排列:8 9 10
以空格间隔,并以空格结尾
换行,输出n个浮点数的升序排列:5.16 7.99 10.23
以空格间隔,并以空格结尾

输入样例:
3
10 8 9
10.23 5.16 7.89

输出样例:
8 9 10
5.16 7.89 10.23

解题思路

  1. 定义两个一维数组,一个数组存放整型数据,另一个数组存放浮点型数据。
  2. 使用for循环将数据输入到数组当中。
  3. 使用sort函数将数据进行升序排列。
  4. 循环遍历数组。

sort函数
语法:sort(start,end,cmp)
参数(1)start表示要排序数组的起始地址;(2)end表示数组结束地址的下一位;

代码

#include <iostream>
#include <algorithm>//sort函数的头文件
using namespace std;
int main()
{
	int n;
	cin>>n;
	int int_data[n]; //定义整型数组
	double double_data[n];//定义浮点型数组
	
	for(int i=0;i<n;i++)
	{
		cin>>int_data[i];
	}//数据输入
		
	for(int i=0;i<n;i++)
	{
		cin>>double_data[i];
	}//数据输入
	
	//排序
	sort(int_data,int_data+n);
	sort(double_data,double_data+n);
	
	
	//数据输出
	for(int i=0;i<n;i++)
	{
		cout<<int_data[i]<<' '; //以空格间隔
	}
	
	//换行
	cout<<endl;
	
	//数据输出
	for(int i=0;i<n;i++)
	{
		cout<<double_data[i]<<' ';//以空格间隔
	}
	
	//换行
	cout<<endl;
	return 0;
}

注意事项

sort函数的头文件不可忽略。

总结

该题考察函数重载的使用,C++中允许在同一作用域中用同一函数名定义多个不同功能的函数,这些函数的参数个数和参数类型不相同。
我是秋说,我们下次见。

posted @ 2023-04-26 16:02  秋说  阅读(137)  评论(0编辑  收藏  举报  来源