小明会拿到一副副的牌,每副牌,以张数n为起始(若为0,则结束扑克游戏),之后是n个整数,表示牌张数字,从1到13不等、输出小明牌中最大点数的牌张数字。每副牌一个数字,占一行。C++
时间: 2023-09-06 20:04:44 浏览: 138
扑克牌游戏用C++实现
4星 · 用户满意度95%
### 回答1:
以下是 C++ 代码实现:
```cpp
#include <iostream>
using namespace std;
int main() {
int n, num;
while (cin >> n && n != 0) {
int max_num = 0;
for (int i = 0; i < n; i++) {
cin >> num;
if (num > max_num) {
max_num = num;
}
}
cout << max_num << endl;
}
return 0;
}
```
每次读入一个数字n,如果n为0,则退出循环,否则继续读入n个整数,找出其中最大的数字并输出即可。
### 回答2:
输入的牌的张数n是不确定的,如果n为0,则表示游戏结束,不需要输出任何结果。
如果n不为0,则表示小明拿到了一副牌,接下来的n个整数表示牌的数字。
我们只需要从这n个数字中找到最大的数字,并将其输出即可。
下面是一个示例代码:
```python
while True:
n = int(input()) # 输入牌的张数n
if n == 0:
break # 若n为0,结束游戏
cards = list(map(int, input().split())) # 输入牌的数字
max_card = max(cards) # 找出最大的牌张数字
print(max_card) # 输出最大的牌张数字
```
使用这个代码,你可以逐次输入小明拿到的每副牌,程序会自动找出最大的牌张数字进行输出。
### 回答3:
小明会拿到一副副的牌,每副牌以张数n为起始(若为0,则结束扑克游戏)。之后是n个整数,表示牌张数字,从1到13不等。现在需要输出小明牌中最大点数的牌张数字。每副牌一个数字,占一行。
假设输入为:
4 5 8 2 3
2 10 7
0
根据题意,第一副牌的张数n为4,紧接着的4个整数分别表示牌的点数为5、8、2和3;第二副牌的张数n为2,紧接着的2个整数分别表示牌的点数为10和7;第三副牌的张数n为0,表示游戏结束。
解题思路如下:
1. 初始化一个变量max_card,用于存储当前副牌中的最大点数,默认值为0。
2. 读取输入的第一个整数n,判断其是否为0,如果n为0,则结束游戏;否则,继续进行以下步骤。
3. 循环读取接下来n个整数,表示每副牌的具体点数。每读取一个整数,判断其是否比max_card大,若是,则更新max_card的值为该整数。
4. 输出max_card的值,表示当前副牌中的最大点数。
5. 重复步骤2~4,直至游戏结束。
根据以上解题思路,对输入进行处理,得到以下输出:
8
10
这表示第一副牌中最大点数是8,第二副牌中最大点数是10。
阅读全文