重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
C语言程序如下:
超过10年行业经验,技术领先,服务至上的经营模式,全靠网络和口碑获得客户,为自己降低成本,也就是为客户降低成本。到目前业务范围包括了:成都网站设计、成都网站制作、外贸网站建设,成都网站推广,成都网站优化,整体网络托管,小程序定制开发,微信开发,App定制开发,同时也可以让客户的网站和网络营销和我们一样获得订单和生意!
#include stdio.h
void fun(int a[],int n,int *k)
{
int i,maxxr,j;
maxxr=a[0];
for(i=0;in;i++)
{
if(maxxra[i])
{
maxxr=a[i];
}
}
for(i=0;in;i++)
{
if(maxxr==a[i]){
j=i;
break;
}
}
*k=j;
}
int main(void)
{
int a[10]={ 876,675,896,101,301,401,980,431,451,777},k;
fun(a, 10, k);
printf("%d,%d", k, a[k]);
}
扩展资料:
思路:
1、先定义数组(其数组长度取最大值,题目要求为10),然后通过for循环给数组一个个赋值,即可得到一个数组;
2、找数组的最大值,这一步是最关键的一步,由于所输入的值不确定那个是最大值,故可以先设置另一个一个变量(index)来存储最大值变量的下标。
3、紧接着继续在数组里for循环,逐一跟下标为index的值相比较,如果比下标为index的值大,这时候就将两者中数值大的下标赋值给index。
4、按要求输出。
#include "stdio.h"
int main()
{
int x[100],max,min,i,n;
printf("输入整数个数:");
scanf("%d",n);
printf("输入一组正整数:");
scanf("%d",x[0]);
max=0;min=0;
for(i=1;in;i++)
{
scanf("%d",x[i]);
if(x[max]x[i]) max=i;
if(x[min]x[i]) min=i;
}
printf("最大值是%d,下标(从0开始)%d\n最小值是%d,下标(从0开始)%d\n",x[max],max,x[min],min);
}
求数组中的最大值和最小值,一般使用假设法,即假设数组的第1个元素为最大值,同时也是最小值,然后遍历数组,找到最大值和最小值。示例如下:
#includestdio.h
int main()
{
int a[] = {1,2,3,4,5,6,7,8,9,10};
int max, min;
max = min = a[0]; //假设第1个元素即是最大值也是最小值。
int max_pos = 0, min_pos = 0;
//遍历数组,找出数组a中的最大数和最小数
for (int inx=0; inx!=sizeof(a) / sizeof(int); ++inx) {
if (a[inx] max) max = a[inx], max_pos=inx;
else if (a[inx] min) min = a[inx], min_pos=inx;
}
printf("最大数:%d\t最小数:%d\n", max ,min );
return 0;
}