免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2449 | 回复: 7
打印 上一主题 下一主题

数组问题求教!!! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-01-14 22:28 |只看该作者 |倒序浏览
我有一个程序如下,作用是将该数组倒序输出,但我看不明白它(函数)是如何工作的,请指教!!!
#include<iostream.h>;
void sf(int[],int);
int main()
{
  const int s=10;
  int a={32,27,64,18,95,14,90,70,60,37};
  cout << "the values is:" << endl;
  sf(a,s);
  cout << endl;
  return 0;
}
void sf(int b[],int size)
{
  if(size>;0)
  {
     sf(&amp;b[1],size-1);
     cout << b[0] << " ";
  }
}

论坛徽章:
0
2 [报告]
发表于 2003-01-14 23:50 |只看该作者

数组问题求教!!!

这是一个使用递归的方式实现的函数。
递归结束的条件是size,当size=0的时候递归结束。
否则就反序打印数组,就是sf()函数的第一个参数,每次递归调用一次,数组的长度减少一个,而且数组的首地址向后移一位。
不知道这样是否明白?不明白的话,只能推荐你去看书去了。嘿嘿

论坛徽章:
0
3 [报告]
发表于 2003-01-15 09:31 |只看该作者

数组问题求教!!!

楼上分析的很正确,建议楼主多看看书了!

论坛徽章:
0
4 [报告]
发表于 2003-01-15 10:37 |只看该作者

数组问题求教!!!

同意,这是最简单的调用了,看来搂住没怎么学习过C++
继续努力

论坛徽章:
0
5 [报告]
发表于 2003-01-15 11:01 |只看该作者

数组问题求教!!!

俺也没学过,但是linux上关于c++的书能不能介绍一下?
vc++的资料是铺天盖地啊!

论坛徽章:
0
6 [报告]
发表于 2003-01-15 11:12 |只看该作者

数组问题求教!!!

看看标准C++
VC只是教你写界面
标准C++在所有平台上都可以使用

论坛徽章:
0
7 [报告]
发表于 2003-01-15 18:04 |只看该作者

数组问题求教!!!

谢谢大家的帮助!!!,我当时没看明白为什么在函数的声明中的参数表中定义的是整形数组,可调用时却时&amp;b[1],再者说,当函数最后一次调用的时候b[0]中为数组的最后一个数,那b[1]呢?是不是不可确定的值?

论坛徽章:
0
8 [报告]
发表于 2003-01-15 18:35 |只看该作者

数组问题求教!!!

int b[]
与 int *b 一样
建议看看指针

最后一次调用时size=0
所以不会再递归
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP