给出相对排名,输出总排名 C++

1.题意

给出相对排名,输出总排名。
比如现在有分数: int array[10] = {100,100,92,92,92,83,74,65,65,65}; 。现在你需要输出他们的总排名,即想得到的输出结果就是:1 1 3 3 3 6 7 8 8 8

2.分析

常用的实现需要记住的。

3.代码
#include <iostream>
using namespace std;

int main () {
	//现在就假设array 中存取的就是每个人的排名,现在让你输出他们的总排名 
	//想得到的结果就是:1 1 3 3 3 6 7 8 8 8
	int array[10] = {100,100,92,92,92,83,74,65,65,65};
	
	int rank = 1;	
	//输出第一名 
	cout<< rank<<":"<<array[0]<<"\n";	
	for(int i = 1;i< 10;i++){		
		if( i>=1 && array[i] == array[i-1]){//如果
			cout<< rank<<":"<<array[i]<<"\n";
		}else{
			rank = i+1;
			cout<< rank<<":"<<array[i]<<"\n";
		}
	} 
}

得到的执行结果就是如下的样子:
在这里插入图片描述

4.总结
  • 对数组首元素的处理
  • 对总排名的处理,就相当于是使用i更新了rank的值
Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐