| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 371 人关注过本帖
标题:[求助]关于指针的一个问题
只看楼主 加入收藏
ljfljf2006
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2005-9-11
收藏
 问题点数:0 回复次数:2 
[求助]关于指针的一个问题
书上的一道习题,先随机产生15个在0-50之间的整数并输出,然后每隔三个进行求和,并将5个和数分别求出.(要用到数组和指针传递)
以下是我写代码,第一步正确输出,但在求和部分遇到困难,希望各位帮忙纠正一下.


#include "stdlib.h"
void p(int *a)
{ int i;
for(i=0;i<15;i++) printf("%4d",*(a+i));
}
void q(int *a,int*b)
{ int i,w;
for(i=0;i<5;i++)
for(w=0;w<3;w++) b[i]=b[i]+a[i*3+w];
for(i=0;i<5;i++) printf("%5d",b[i]);
}
main()
{ int a[15],b[5],i;
for(i=0;i<15;i++) a[i]=random(50);
p(a);
q(a,b);
}

我现在遇到一个困境,看书全部都懂,但自己动手却经常出错



搜索更多相关主题的帖子: 指针 
2007-06-20 11:37
风之舞鹤
Rank: 1
等 级:新手上路
帖 子:180
专家分:0
注 册:2007-6-2
收藏
得分:0 

#include "stdlib.h"
void p(int *r)
{ int i;
for(i=0;i<15;i++) printf("%4d",*(r+i));printf("\n");
}
void q(int *r,int *s)
{ int i,w;
for(i=0;i<5;i++)
for(w=0;w<3;w++) *(s+i)=*(s+i)+*(r+(i*3+w));
for(i=0;i<5;i++) printf("\t%d",*(s+i));
}
main()
{ int a[15],b[5]={0,0,0,0,0},i; int *r,*s;
r=a;s=b;
for(i=0;i<15;i++) a[i]=random(50);
p(r);
q(r,s);
}

我觉得这样比较习惯呵呵.
你的程序没什么大问题.就是b[]没有初始化;


2007-06-20 12:37
ljfljf2006
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2005-9-11
收藏
得分:0 

未对变量进行初始化,导致内存中原有数据产生干扰.
谢谢风之舞鹤


I will come back!
2007-06-20 15:09
快速回复:[求助]关于指针的一个问题
数据加载中...
 
   



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

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