得分最高的击球手名字 - C++ [关闭]

Posted

技术标签:

【中文标题】得分最高的击球手名字 - C++ [关闭]【英文标题】:Top Scoring Batsman Name - C++ [closed] 【发布时间】:2020-04-21 15:24:08 【问题描述】:

得分最高的击球手姓名 - C++

板球队的 N 名击球手得分作为输入传递给程序。程序必须打印得分最高的击球手的名字。 (你可以假设没有两个击球手会是最佳射手)

#include <bits/stdc++.h>

using namespace std;

int main(int argc, char** argv)

//Defines no of batsmen
int n;
cin>>n;
//Define names of batsmen and their runs
string s[100];
int r[100];
//Getting inputs
for(int i=0;i<n;i++)
scanf("%s,%d",&s[i],&r[i]);

// //Assign a value to int max variable
int max=r[0];
int location=0;
//find max value
for(int i=1;i<n;i++)
if(r[i] > max)
    max = r[i];
    location = i;


cout<<s[location];

输入格式:第一行表示 N 的值。接下来的 N 行将包含击球手的姓名和得分(均以逗号分隔)。

输出格式:第一行包含得分最高的击球手的名字。

示例输入/输出 1:

Input: 
5 
BatsmanA,45 
BatsmanB,52 
BatsmanC,12 
BatsmanD,9 
BatsmanE,78  

Output: BatsmanE

【问题讨论】:

您好,所以不会完成作业,但我们可以回答您可能对编程提出的具体问题。请编辑此内容,以便您询问一个概念。 推荐阅读: Why should I not #include <bits/stdc++.h>? 我还可以推荐一个good C++ book吗?因此,您可以学习如何编写正确的 C++,而不是这种奇怪的 C 函数和样式混合。 【参考方案1】:

您无法使用scanf 读取std::string,因为scanf 是一个C 函数并且对std::string 这是一个C++ 类一无所知。

string s[100];

scanf("%s,%d",&s[i],&r[i]);

改用 C++ I/O

char comma;
cin >> s[i] >> comma >> r[i];

改为。

【讨论】:

以上是关于得分最高的击球手名字 - C++ [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

前 10 名最大得分手的 PFQuery [关闭]

找出在每门 sem 和每门课程中得分最高的学生的名字?

PhoneGap 在线游戏[关闭]

C++ 文件 - 写入、读取、数组; [关闭]

高质量图像缩放库[关闭]

C++小工具.关闭进程