【C++】函数重载 不同类型数组的运算

  1 #include <iostream>
  2
  3 using namespace std;
  4
  5 void index(int n,int num1[]){
  6     for(int i=0;i<n;i++)
  7     {
  8         cout<<"index"<<i<<endl;
  9         cin>>num1[i];
 10     };
 11         }
 12
 13 void index(int n,float num2[]){
 14     for(int i=0;i<n;i++)
 15     {
 16         cout<<"index"<<i<<endl;
 17         cin>>num2[i];
 18     };
 19         }
 20
 21 void index(int n,double num3[]){
 22     for(int i=0;i<n;i++)
 23     {
 24         cout<<"index"<<i<<endl;
 25         cin>>num3[i];
 26     };
 27         }
 28 void print1(int n,int num1[]){
 29      for(int i=0;i<n;i++)
 30     {
 31         cout<<i<< " "<<num1[i]<<endl;
 32     };
 33         }
 34
 35 void print1(int n,float num2[]){
 36      for(int i=0;i<n;i++)
 37     {
 38         cout<<i<< " "<<num2[i]<<endl;
 39     };
 40         }
 41
 42 void print1(int n,double num3[]){
 43      for(int i=0;i<n;i++)
 44     {
 45         cout<<i<< " "<<num3[i]<<endl;
 46     };
 47         }
 48
 49 void print2(int n,int num1[]){
 50      for(int i=0;i<n;i++)
 51     {
 52         cout<<i<< " "<<num1[i]<<endl;
 53     };
 54         }
 55
 56 void print2(int n,float num2[]){
 57      for(int i=0;i<n;i++)
 58     {
 59         cout<<i<< " "<<num2[i]<<endl;
 60     };
 61         }
 62
 63 void print2(int n,double num3[]){
 64      for(int i=0;i<n;i++)
 65     {
 66         cout<<i<< " "<<num3[i]<<endl;
 67     };
 68         }
 69
 70 void rank(int n,int num1[]){
 71     int k;
 72     for (int i=0;i<n-1;i++)
 73     {
 74         for(int j=i+1;j<n;j++){
 75             if(num1[i]>num1[j])
 76             {
 77                 k=num1[i];
 78                 num1[i]=num1[j];
 79                 num1[j]=k;
 80
 81                 };
 82     }
 83                     };
 84     }
 85
 86 void rank(int n,float num2[]){
 87     float k;
 88     for (int i=0;i<n-1;i++)
 89     {
 90         for(int j=i+1;j<n;j++){
 91             if(num2[i]>num2[j])
 92             {
 93                 k=num2[i];
 94                 num2[i]=num2[j];
 95                 num2[j]=k;
 96
 97                 };
 98     }
 99                     };
100     }
101
102 void rank(int n,double num3[]){
103     double k;
104     for (int i=0;i<n-1;i++)
105     {
106         for(int j=i+1;j<n;j++){
107             if(num3[i]>num3[j])
108             {
109                 k=num3[i];
110                 num3[i]=num3[j];
111                 num3[j]=k;
112
113                 };
114     }
115                     };
116     }
117 int main()
118 {
119     cout << "Hello world!" << endl;
120     int n;
121     int num1[20];
122     float num2[20];
123     double num3[30];
124     cout<<"total arry"<<endl;
125     cin>>n;
126     index(n,num1);    print1(n,num1);    rank(n,num1);    cout<<endl;    print2(n,num1);
127     index(n,num2);    print1(n,num2);    rank(n,num2);    cout<<endl;    print2(n,num2);
128     index(n,num3);    print1(n,num3);    rank(n,num3);    cout<<endl;    print2(n,num3);
129     return 0;
130 }
时间: 2024-12-26 10:53:51

【C++】函数重载 不同类型数组的运算的相关文章

【C++】函数模板 不同类型数组的运算

1 #include <iostream> 2 3 using namespace std; 4 5 template<class T>void index(int n,T num1[]){ 6 for(int i=0;i<n;i++) 7 { 8 cout<<"index"<<i<<endl; 9 cin>>num1[i]; 10 }; 11 } 12 13 template <class T>

位运算+引用+const+new/delete+内联函数、函数重载、函数缺省参数

一.位运算 应用: 1.判断某一位是否为1 2.只改变其中某一位,而保持其它位都不变 位运算操作: 1.& 按位与(双目): 将某变量中的某些位清0(与0位与)且同时保留其它位不变(与1位与):获取某变量中某一位(与其位与后判断是否为该数) 2.|  按位或(双目): 将某变量中的某些位置1(与1位或)且保留其它位不变 3.^  按位异或(双目): 将某变量中的某些位取反(与1异或)且保留其它位不变 异或运算特点: 如果 a^b=c,那么就有 c^b = a以及c^a=b.(穷举法可证---用于

Java 方法重载与引用数组类型

1.方法重载 1)方法的签名 方法的签名包含方法名和参数列表 一个类中,不可以有两个方法的签名完全相同,即一个类中不能有两个方法的方法名和参数列表都一样. public class Test{ public void print(int x){...}; public void print(int x){...}; //编译错误,方法签名不能一样 } public class Test{ public void print(int x){...}; public boolean print(in

函数重载,数组,一些算法

函数: 函数的作用: 将一个功能代码封装起来,已达到功能代码被复用. 函数 的定义格式: 修饰符 返回值类型 函数名(形参列表){ 函数体; } 函数的特点和注意的细节: 1. 函数就是将一个功能代码封装起来,已达到功能代码可以被复用起来的效果. 2. 如果一个函数没有返回值,那么函数 的返回值类型要使用void表示, 3. 函数定义好之后,需要被调用才会执行. main函数是由jvm调用,不需要我们手动调用的. 4. 一个 函数可以被重复调用多次. 5. 如果一个函数的返回值类型是void,那

byte数组转float实现与byte转换其它类型时进行&amp;运算原理

下面是将byte数组转换为float的实现 public static float getFloat(byte[] b) { int accum = 0; accum = accum|(b[0] & 0xff) << 0; accum = accum|(b[1] & 0xff) << 8; accum = accum|(b[2] & 0xff) << 16; accum = accum|(b[3] & 0xff) << 24;

结构体类型快速驱魔运算及运算符的重载

下面得到这段代码可以用在很多地方:只需要自己修改下接Ok. 1 struct Matrix 2 { 3 long long mat[N][N]; 4 Matrix operator*(const Matrix m)const//定义矩阵乘法的运算符* 5 { 6 Matrix tmp; 7 for(int i = 0;i < n;i++) 8 { 9 for(int j = 0;j < n;j++) 10 { 11 tmp.mat[i][j] = 0; 12 for(int k = 0;k &

名字查找先于类型检查:函数重载与作用域

作用域屏蔽名字:内层作用域中声明的名字将隐藏外层作用域中声明的同名实体. 同名??C++有关同名的除了变量之外,也就是函数重载了!! [作用域对于函数重载的限制] 1. 在不同的作用域中无法重载函数名 2. 函数匹配时,编译器首先寻找对该函数名的声明,一旦在当前作用域中找到了所需的名字,编译器就会忽略掉外层作用域中的同名实体,剩下的工作就是检查函数调用是否有效了 #include <iostream> using namespace std; void print(double); void

JS的数据类型判断函数、数组对象结构处理、日期转换函数,浏览器类型判断函数合集

工具地址:https://github.com/BothEyes1993/bes-jstools bes-jstools 100多个基础常用JS函数和各种数据转换处理集合大全,此工具包是在 outils 的基础上,加上个人平时收集的代码片段进行的二次整合 Browser Support 7+ ? Latest ? Latest ? Latest ? Latest ? 6.1+ ? Installing npm install bes-jstools --save Using nodejs con

函数高级、类型名别名、if-else 的使用、包的使用、for循环、swich的使用、数组的使用

一.函数高级: 1.闭包函数:定义在函数内部,对外部作用有引用 2.go中函数内部定义的函数是不能有名的,需要定义匿名函数:没有名字 //函数高级 package main import "fmt" //闭包函数:定义在函数内部,对外部作用有引用 //内层函数:定义在函数内部的函数 //go中函数内部定义的函数是不能有名的,需要定义匿名函数:没有名字 //func test(a int) { // func() { // fmt.Println("我是内层函数")