C语言中怎样用指针找出一维数组中的最大值和最小值并输出它们的下标

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言中怎样用指针找出一维数组中的最大值和最小值并输出它们的下标相关的知识,希望对你有一定的参考价值。

1、新建一个工程和.c文件,并且输入主函数和头文件。

2、定义全局变量。

3、定义变量类型。

4、用两个for语句给数组元素赋值。

5、调用求最小值的函数。

6、函数的总体流程如下图。

7、在主函数中输出结果,编译、运行,得到最后结果。

参考技术A

#include<stdio.h>

int main()

int a[10],n,max,min,maxxiabiao,minxiabiao;

for(n=0;n<=9;n++)

scanf("%d",&a[n]);

max=min=a[0];

maxxiabiao=minxiabiao=0;

for(n=0;n<=9;n++)

if(a[n]>max)

max=a[n];

maxxiabiao=n;

else if(a[n]<min)

min=a[n];

minxiabiao=n;

printf("max=%d,xiabiao=%d\\n",max,maxxiabiao);

printf("min=%d,xiabiao=%d\\n",min,minxiabiao);

return 0;

运行效果:

扩展资料:

return 0代表程序正常退出。return是C++预定义的语句,它提供了终止函数执行的一种方式。当return语句提供了一个值时,这个值就成为函数的返回值。

return语句用来结束循环,或返回一个函数的值。

1、return 0,说明程序正常退出,返回到主程序继续往下执行。

2、return 1,说明程序异常退出,返回主调函数来处理,继续往下执行。return 0或return 1对程序执行的顺序没有影响,只是大家习惯于使用return(0)退出子程序而已。

参考技术B 最大:
int s[N],i,j,a,*max;
max=s;
for(i=0,i<N-1,i++)
for(j=1,j<N,j++)
if(s[j]>s[i])
max=&s[j];
a=j;
最小稍微改下
参考技术C #include<stdio.h>
void main()
int a[100],i,j,max=-32000,min=32000;
int *p;

for(p=a;p<a+10;p++)
scanf("%d",p);
for(p=a;p<a+10;p++)
if(max<*p)
max=*p;
i=p-a;

for(p=a;p<a+10;p++)
if(min>*p)
min=*p;
j=p-a;

printf("%d max=%d\n%d min=%d\n",i,max,j,min);

C语言利用指针编写程序,求一维数组中的最大和最小值

#include<stdio.h>
//利用指针编写程序,求一维数组中的最大和最小值
int main()
 int a[10],i;
 for(i=0;i<10;i++)
  scanf("%d",&a[i]);
 int max,min,*p;
 p=a;
 max=min=a[0];
 for(;p<a+10;p++)
 
  if(*p>max)
   max=*p;
  if(*p<min)
   min=*p;
 
 printf("max=%d,min=%d",max,min);
 return 0; 

以上是关于C语言中怎样用指针找出一维数组中的最大值和最小值并输出它们的下标的主要内容,如果未能解决你的问题,请参考以下文章

C语言利用指针编写程序,求一维数组中的最大和最小值

C语言利用指针编写程序,求一维数组中的最大和最小值

怎样用numpy找出数组里最大与最小值

ios 快速获取数组中的最大值、最小值

用C#找出数组中的最大值和最小值

用C语言如何将一个一维数组中的元素随机排序