c - 你如何获得数组的索引号而不是元素?
问题描述
我编写了一个基本程序来查找数组中的最大数并打印它:
#include <stdio.h>
int main(void)
{
int numbers[] = {3, 5, 12, 1, 4};
int largest;
largest = numbers[0];
for (int i = 0; i < sizeof(numbers) / sizeof(numbers[0]); i++)
{
if (largest < numbers[i])
{
largest = numbers[i];
}
}
printf("The largest number in the array is %i\n", largest);
}
我需要做什么才能打印而不是The largest number in the array is 12
打印The largest number in the array is numbers[2]
?
解决方案
您将使用索引而不是使用该值:
#include <stdio.h>
int main(void)
{
int numbers[] = { 3, 5, 12, 1, 4 };
int largest;
largest = 0;
for (int i = 1; i < sizeof(numbers) / sizeof(numbers[0]); i++)
{
if (numbers[largest] < numbers[i])
{
largest = i;
}
}
printf("The largest number in the array is numbers[%d]\n", largest);
return 0;
}
推荐阅读
- java - Java 配置,需要返回函数7
- python - 在熊猫中对具有列表的列进行相互引用的排序
- python - 从两个列表创建字典?在取平均值的同时?
- python - 我们可以通过在 Pandas 中找到相关性来估算两列中的缺失值吗?
- javascript - 我正在尝试在 nodejs 中抓取一个维基百科页面
- git - 我正在尝试通过 git(命令行)将一个项目从我的 pc 拉到 github。但我无法从 github 获取链接
- angular - 为什么这个组件没有应用 css 规则?
- c# - 如果目标足够近,如何使炮塔面向目标旋转并使目标以随机高度和速度围绕炮塔旋转?
- git - 如何正确克隆并切换到现有的 fork 分支
- nlog - NLog 将条目保存到数据库(postgresql),