C++打擂法求10个字符的最大值,输出ASCII码最大的字符及其下标
时间: 2024-04-29 13:25:45 浏览: 109
以下是一个C语言程序,使用打擂法求10个字符的最大值,并输出ASCII码最大的字符及其下标:
```
#include <stdio.h>
int main() {
char str[10] = {'a', 'B', 'c', 'D', 'e', 'F', 'g', 'H', 'i', 'J'};
int max_index = 0;
for (int i = 1; i < 10; i++) {
if (str[i] > str[max_index]) {
max_index = i;
}
}
printf("最大值字符为:%c,下标为:%d\n", str[max_index], max_index);
return 0;
}
```
输出结果为:
```
最大值字符为:i,下标为:8
```
解释:程序中定义了一个包含10个字符的数组 `str`,然后使用循环遍历数组,使用打擂法求得最大值的下标,最后输出最大值字符及其下标。在本例中,ASCII码最大的字符为大写字母 J,其下标为 8。
相关问题
C++打擂法求5个字符串{“zhang san”,"li si","wang wu","liu ming","zhao qiang"}的最大值,输出最大的字符串。
#include <stdio.h>
#include <string.h>
int main()
{
char str[5][20] = {"zhang san","li si","wang wu","liu ming","zhao qiang"};
char max_str[20];
int i;
// 假设第一个字符串最长
strcpy(max_str, str[0]);
// 依次比较,找出最长的字符串
for(i=1; i<5; i++)
{
if(strlen(max_str) < strlen(str[i]))
strcpy(max_str, str[i]);
}
printf("最长的字符串是:%s\n", max_str);
return 0;
}
打擂法求10个整型数据的最大值,输出最大值及其下标。
以下是Python实现:
```python
data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
max_val = data[0]
max_index = 0
for i in range(1, len(data)):
if data[i] > max_val:
max_val = data[i]
max_index = i
print("最大值为:", max_val)
print("最大值下标为:", max_index)
```
输出:
```
最大值为: 10
最大值下标为: 9
```
首先将第一个数字设为最大值,然后循环遍历整个列表,如果发现一个数字比当前最大值还要大,就更新最大值和最大值下标。最后输出最大值和最大值下标即可。
阅读全文