不同类型数组对应输出

#include <iostream>

using namespace std;

template
int getArrayLen(T& array) //使用模板定义一个函数getArrayLen,该函数将返回数组array的长度
{
return (sizeof(array) / sizeof(array[0]));
}

int main()
{

// 声明用于存放运动员号码的数组
int h[] = { 1001,1002,1003,1004 };
// 声明用于存放运动员成绩的数组
float x[] = { 12.3,11.4,12.5,11.9 };
//声明用于存放运动姓名的字符型指针数组
const char *p[] = { "Wang hua","Zhang jian","Li wei","Hua ming" };
//i,j,it是用做循环控制变量和临时变量
int i, j, it;
//ft 用做暂存变量
float ft;
//pt为字符型指针变量用做暂存指针变量
const char *pt;
//用选择法对数组x进行排序,并相应调整数组h和p中的数据
for ( i = 0; i < getArrayLen(x); i++)
{
for ( j = i+1; j < (sizeof(x) / sizeof(x[0])); j++)
{
if (x[i]>x[j])
{
ft = x[i], x[i] = x[j], x[j] = ft;
it = h[i], h[i] = h[j], h[j] = it;
pt = p[i], p[i] = p[j], p[j] = pt;
}
}
}
//以下打印排序结果
for ( i = 0; i < (sizeof(x) / sizeof(x[0])); i++)
{
cout << h[i] << "," << p[i] << "," << x[i] << endl;
}
return 0;

}

posted @   江南王小帅  阅读(115)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示