| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1088 人关注过本帖
标题:程序出现一个错误,不知道怎么改,请大侠指点!谢了
只看楼主 加入收藏
御坂美琴
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:魔術の禁書目錄
等 级:小飞侠
威 望:9
帖 子:952
专家分:2929
注 册:2010-8-18
收藏
得分:0 
*f=fun(s,l,n);
printf("the smallest data is %d",*f);
这里,*f=可以删掉,后面用*l代替就好了
御坂回答

永远为正义而奋斗,锄强扶弱的Level 5 超能力者
とある魔術の禁書目錄インデックス__御み坂さか美み琴こと
http://bbs.bccn.net/space.php?action=threads&uid=483997
2010-08-22 18:13
shutyourhead
Rank: 1
等 级:新手上路
帖 子:52
专家分:2
注 册:2010-8-22
收藏
得分:0 
以下是引用zyt39359在2010-8-22 18:12:00的发言:

1,2,3,4,5,6,7,8,9,10 我是这样横着写的
还有warning错误啊,不过我是横着还是竖着,结果都是-58。
2010-08-22 18:15
shutyourhead
Rank: 1
等 级:新手上路
帖 子:52
专家分:2
注 册:2010-8-22
收藏
得分:0 
以下是引用御坂美琴在2010-8-22 18:13:34的发言:

*f=fun(s,l,n);
printf("the smallest data is %d",*f);
这里,*f=可以删掉,后面用*l代替就好了
御坂回答
这样warning错误是没了,不过结果还是-58
2010-08-22 18:17
zyt39359
Rank: 1
等 级:新手上路
帖 子:26
专家分:2
注 册:2010-6-15
收藏
得分:0 
— —我错了 刚才第二遍数别的一组数 都是输出第一个数
2010-08-22 18:19
御坂美琴
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:魔術の禁書目錄
等 级:小飞侠
威 望:9
帖 子:952
专家分:2929
注 册:2010-8-18
收藏
得分:0 
程序代码:
#include<stdio.h>
void fun(int s[],int *k,int n)
{
    int i,j=0;
    for (i=0;i<n;i++)
        if (s[i]<s[j])
            j=i;
    *k=s[j];
}
int main()
{
    int n=10,s[10],i,l;
    printf("Input %d numbers:\n",n);
    for (i=0;i<n;i++)
        scanf("%d",s+i);
    fun(s,&l,n);
    printf("the smallest data is %d",l);
    return 0;
}
这样改吧,你自己对照一下,御坂回答

永远为正义而奋斗,锄强扶弱的Level 5 超能力者
とある魔術の禁書目錄インデックス__御み坂さか美み琴こと
http://bbs.bccn.net/space.php?action=threads&uid=483997
2010-08-22 18:21
shutyourhead
Rank: 1
等 级:新手上路
帖 子:52
专家分:2
注 册:2010-8-22
收藏
得分:0 
回复 15楼 御坂美琴
恩,对了。但我还是不知道为什么我的错了
2010-08-22 18:28
御坂美琴
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:魔術の禁書目錄
等 级:小飞侠
威 望:9
帖 子:952
专家分:2929
注 册:2010-8-18
收藏
得分:0 
最最关键的一点,你的scanf,永远只对s数组第一个元素输入,御坂回答道

永远为正义而奋斗,锄强扶弱的Level 5 超能力者
とある魔術の禁書目錄インデックス__御み坂さか美み琴こと
http://bbs.bccn.net/space.php?action=threads&uid=483997
2010-08-22 18:31
shutyourhead
Rank: 1
等 级:新手上路
帖 子:52
专家分:2
注 册:2010-8-22
收藏
得分:0 
回复 17楼 御坂美琴
恩,了解了。
2010-08-22 18:37
daijiarong
Rank: 1
等 级:新手上路
帖 子:19
专家分:1
注 册:2010-8-6
收藏
得分:0 
少了一个&,scanf("%d",&s);不知对不对
2010-08-22 18:46
xiayizhanzyf
Rank: 2
等 级:论坛游民
帖 子:80
专家分:78
注 册:2010-7-21
收藏
得分:0 
修改后的程序为:
#include<stdio.h>
int * fun(int s[],int *k,int n)
{
int i,j=0;
for(i=1;i<n;i++)
if(s[i]<s[j])
j=i;
*k=s[j];
return k;
}
void main()
{
int n=10,s[10],i,*l,*f;
printf("Input %d numbers:\n",n);
for(i=0;i<n;i++)
scanf("%d",&s[i]);
l=&s[0];
f=fun(s,l,n);
printf("the smallest data is %d\n",*f);
}
2010-08-22 19:32
快速回复:程序出现一个错误,不知道怎么改,请大侠指点!谢了
数据加载中...
 
   



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

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