我有一个16个整数值的数组,其中每个值都是32位,如图所示。我可以如下找到数组的最大值。如何在C中找到数组中最大的位置C
#include <stdio.h>
#include <conio.h>
// main program
int main(void){
int i, max;
int array[16];
array[0]=0x1;
array[1]=0x6;
array[2]=0x8;
array[3]=0xC;
array[4]=0x7;
array[5]=0x9;
array[6]=0xB;
array[7]=0x0;
array[8]=0x3;
array[9]=0x6;
array[10]=0x7;
array[11]=0x6;
array[12]=0x15;
array[13]=0x1;
array[14]=0x9;
array[15]=0x3;
// calculate max
max=array[0];
for(int i=1;i<16;i++)
{
if(max<array[i])
{
max=array[i];
}
}
printf("The max is %lx ",max);
getch();
return 0;
我想查找数组中最大值的位置和最大值中最高有效二进制1的位置。可以看出,阵列中位置13处的最大值为0x15,并且条目中最重要的二进制1的位置为第5位。这怎么能在C中完成?
如果要查找最大值的位置,请将其保留为最大变量的整数。 – Winter
@ Neil N.不,它不是家庭作业的一部分。而是它是我工作的一个项目的一部分。 –
你写这个代码吗? – chux