| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 473 人关注过本帖
标题:自定义数组函数请教
只看楼主 加入收藏
飘青
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2012-7-8
结帖率:70.59%
收藏
已结贴  问题点数:15 回复次数:6 
自定义数组函数请教
我看了很久也没有看出错误,但是不能执行成功。 我是一个刚自学c
#include"stdio.h"
void main()
{
int min11(int c[2]);
int c,i;
int src[2];
for(i=0,i<2,++i)
scanf("%d",&src[i]);
c=min11(src);
printf("%d\n",c);
}
int min11(int c[2])
{
int i;
int z;
for(i=0,i<2,++i)
{
 if(c[i]>c[i+1])
  {
   z=c[i];
   c[i]=c[i+1];
   c[i+1]=z;
  }
 else
   z=c[i+1];
}
return(z);
}
搜索更多相关主题的帖子: void 成功 include 
2012-07-23 00:56
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:2 
for循环里面要用分号

总有那身价贱的人给作业贴回复完整的代码
2012-07-23 08:28
qq872551969
Rank: 9Rank: 9Rank: 9
等 级:禁止访问
威 望:1
帖 子:241
专家分:1377
注 册:2012-7-13
收藏
得分:2 
for(i=0,i<2,++i)
for(i=0,i<2,++i)
后面都没有分号。

编程交流请加群:【234181324】,一起学习,一起进步,新建的群,主打C语言和JAVA等程序设计,等待高手们的入驻,无论你是高手也好,新手也好,在这里都是平等的,欢迎你们的加入~!【234181324】
2012-07-23 08:57
飘青
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2012-7-8
收藏
得分:0 
由于我的粗心没有看到这个错误。谢谢各位。    经过我重现改写。 下面的程序可以编译成功,但是我执行的时候输入 2 3 4 它输出的答案是错误的.
我程序的是要比较 2 3 4 这个三个值中最大的值输出.

include"stdio.h"
int main()
{
int min11(int c[3]);
int c,i;
int src[3];
for(i=0;i<=2;++i)
scanf("%d",&src[i]);
c=min11(src);
printf("%d\n",c);
}
int min11(int c[3])
{
int i,z;
for(i=0;i<=2;++i)
{
if(c[i]>c[i+1])
  {
   z=c[i];
   c[i]=c[i+1];
   c[i+1]=z;
  }
else
   z=c[i+1];
}
return(z);
}
2012-07-23 09:30
obstratiker
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:1
帖 子:198
专家分:758
注 册:2011-5-5
收藏
得分:4 
没问题,不过你最后的for循环访问越界了
改成for(i=0;i<2;i++)
2012-07-23 10:59
飘青
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2012-7-8
收藏
得分:0 
谢谢您

我还有一个问题想问下
c=min11(src); (实参) 向 int min11(int c[3]) (形参)传递数据的时候是按照数组的初始值从左到右 或者 从右到左的 顺序传递吗?

2012-07-23 13:07
obstratiker
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:1
帖 子:198
专家分:758
注 册:2011-5-5
收藏
得分:7 
以下是引用飘青在2012-7-23 13:07:19的发言:

谢谢您

我还有一个问题想问下
c=min11(src); (实参) 向 int min11(int c[3]) (形参)传递数据的时候是按照数组的初始值从左到右 或者 从右到左的 顺序传递吗?
数组的情况应该不能按“传递”来理解,min11在调用的时候,main只是把数组的首地址提供给min11,并没有传递整个数组
所以min11相当于“引用”了数组
如果其他函数比如 min12(int a,int b),这里a,b都不是数组,那么min12是从右到左传递(入栈)参数的
2012-07-23 13:25
快速回复:自定义数组函数请教
数据加载中...
 
   



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

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