| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 281 人关注过本帖
标题:求助,大家帮忙看看。
只看楼主 加入收藏
prefect
Rank: 1
来 自:安徽
等 级:新手上路
帖 子:8
专家分:2
注 册:2010-11-29
收藏
 问题点数:0 回复次数:3 
求助,大家帮忙看看。
一、完善程序
    编写函数int  fun(int *s,int t,int *k),用来求出数组的最小元素在数组中的下标并存放在k所指的存储单元中。
    例如输入234,345,753,134,436,458,100,321,135,760,则结果是6,100
    部分程序如下:
    #include <stdio.h>
    int  fun(int  *s , int  t, int  *k)
     {
      
     }
    main()
     {
      clrscr();
      int a[10]=234,345,753,134,436,458,100,321,135,760},k;
    fun(a,10,&k);
    printf(“%d,%d\n”,k,a[k]);
    }
我写的是这样的但是运行结果和我想的不一样。
    #include <stdio.h>
    int  fun(int  *s , int  t, int  *k)
     {
     int i,min;
     min=0;
     *k=0;
    for(i=1;i<t;i++)
{    if(i<min)
     {
     min=i;
        *k=i;
     }
}
    return  *k;
 }
    main()
     {
    // clrscr();
      int a[10]={234,345,753,134,436,458,100,321,135,760},k;
    fun(a,10,&k);
    printf("%d,%d\n",k,a[k]);
    }
搜索更多相关主题的帖子: 元素 
2011-05-11 10:44
hjywyj
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:1114
专家分:2611
注 册:2010-4-14
收藏
得分:0 
int  fun(int  *s , int  t, int  *k)
     {int i,min=s[0];
     for(i=0;i<10;i++)
      {if(min>s[i])
{min=s[i];*k=i;}}
   
     }
2011-05-11 11:23
查明
Rank: 2
等 级:论坛游民
帖 子:31
专家分:24
注 册:2011-4-12
收藏
得分:0 
  #include <stdio.h>
    int  fun(int  *s , int  t, int  *k)
     {
     int i,min;
     min=0;//此处不能对最小值赋值为0,可以假设最小值为a[0] 即min = *s
     *k=0;
    for(i=1;i<t;i++)
{    if(i<min)//此处i不是数组元素 不能那来比较
     {
     min=i;
        *k=i;
     }
}
    return  *k;
}
    main()
     {
    // clrscr();
      int a[10]={234,345,753,134,436,458,100,321,135,760},k;
    fun(a,10,&k);
    printf("%d,%d\n",k,a[k]);


我写了个类似的版本 希望对楼主有帮助
#include <stdio.h>
int  fun(int  *s , int  t, int  *k)
{
   int i, min;
   min=*s;
   *k=0;
   for(i=1;i<t;i++)
   {   
     if(*(s+i)<min)
     {
       min=*(s+i);
       *k=i;
     }
   }
    return  *k;
}
main()
{
  // clrscr();
  int a[10]={234,345,753,134,436,458,100,321,135,760},k;
  fun(a,10,&k);
  printf("%d,%d\n",k,a[k]);
}

2011-05-11 11:27
zjl01223
Rank: 2
等 级:论坛游民
帖 子:42
专家分:90
注 册:2011-4-21
收藏
得分:0 
#include <stdio.h>
    int  fun(int  *s , int  t, int  *k)
     {
     int i,min;
     min=s[0];
     *k=s[0];
    for(i=1;i<t;i++)
{    if(s[i]<min)
     {
     min=s[i];
        *k=i;
     }
}
    return  *k;
}
    main()
     {
    // clrscr();
      int a[10]={234,345,753,134,436,458,100,321,135,760},k;
    fun(a,10,&k);
    printf("%d,%d\n",k,a[k]);
    }
2011-05-11 11:37
快速回复:求助,大家帮忙看看。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031357 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved