从键盘上输入10个数据到一维数组中,然后找出数组中的最大值和该值所在的元素下标。要求除数组定义外,其它操作均用指针完成。
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
int a[10];
int i, max, min, max_ind, min_ind;
//输入10个数字存到数组里
for (i = 0; i < 10; i++)
scanf("%d", a + i);
//初始化
max = *a; //max=a[0](数组名是一个指针常量为a[0]的地址,*a表示提取该地址的值)
min = *a; //min=a[0] 存取最大最小值
max_ind = 0;
min_ind = 0; //存取索引值
for (i = 1; i < 10; i++)
if (*(a + i) > max) //(*a+i即a[i])
{
max = *(a + i);
max_ind = i;
}
else if (*(a + i) < min)
{
min = *(a + i);
min_ind = i;
}
printf("max index=%d, max=%d\n", max_ind, max);
printf("min index=%d, min=%d\n", min_ind, min);
return 0;
}
涉及到的知识点: