用scanf输入10个数存放在一个数组中、用函数实现求去该数组的最小值及其下标值,并显示结果。

必须用指针作为函数的实参和形参。。用C语言编写... 必须用指针作为函数的实参和形参。。用C语言编写 展开
 我来答
yanjinhaerbin
2013-01-07 · 超过15用户采纳过TA的回答
知道答主
回答量:55
采纳率:0%
帮助的人:49.9万
展开全部
#include<stdio.h>
void findmin(int *);
int main()
{
int arr[10];
int i;
printf("请输入10个整数:\n");
for(i=0;i<10;++i)
{
scanf("%d",&arr[i]);
}
findmin(arr);
return 0;
}
void findmin(int *arr)
{
int* ptr=arr;
int i=0;
int index=0;
int min=*ptr;
for(i=0;i<10;++i)
{
if(min>*(ptr+i))
{
min =*(ptr+i);
index=i;
}
}
printf("最小元素的下标是: %d\n",index);
printf("最小元素是: %d\n",min);
}
veket的小号
2013-01-07 · TA获得超过3371个赞
知道大有可为答主
回答量:3762
采纳率:0%
帮助的人:3988万
展开全部
标准答案
/////////////////////////////////////////
// C-Free 4.1
// MinGW 3.4.5
// veket的小号
/////////////////////////////////////////

#include <stdio.h>
void fun(int *p, int n, int *p_min, int *p_min_index);
int main()
{
int a[10];
int i;
int min;
int min_index;
for(i=0;i<10;i++)
{
scanf("%d", &a[i]);
}
fun(a, 10, &min, &min_index);
printf("min of array a is a[%d] = %d\n", min_index, min);
return 0;
}
void fun(int *p, int n, int *p_min, int *p_min_index)
{
int *a;
for(a=p+1,*p_min=*p,*p_min_index=0;a<p+n;a++)
{
if(*a<*p_min)
{
*p_min = *a;
*p_min_index = a - p;
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式