| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 371 人关注过本帖
标题:这两个程序的区别是什么
只看楼主 加入收藏
yanghongyoyo
Rank: 1
等 级:禁止访问
帖 子:18
专家分:3
注 册:2013-10-26
结帖率:100%
收藏
已结贴  问题点数:17 回复次数:3 
这两个程序的区别是什么
/* Note:Your choice is C IDE */
#include "stdio.h"
void main()
{
    int sum(int x[],int y[]);
    int a[]={1,2,3};
    int b[]={4,5,6};
   
    int c;
    c=sum(a,b);
    printf("output:%d",c);
    return 0;
}
int sum(int x[],int y[])
{
    int z=0,i,j;
    int *p_x,*p_y;
    p_x=x;
    p_y=y;
    for(i=0;i<3;i++)
    z=z+x;
    for(j=0;j<3;j++)
    z=z+y;
    return z;
    }
另一个程序
/* Note:Your choice is C IDE */
#include "stdio.h"
void main()
{
    int sum(int x[],int y[]);
    int a[]={1,2,3};
    int b[]={4,5,6};
   
    int c;
    c=sum(a,b);
    printf("output:%d",c);
    return 0;
}
int sum(int x[],int y[])
{
    int z=0,i,j;
   
    for(i=0;i<3;i++)
    z=z+x[i];
    for(j=0;j<3;j++)
    z=z+y[j];
    return z;
    }
我觉得这两个程序的结果是相同的  但为什么不同
搜索更多相关主题的帖子: include return choice 
2013-10-29 22:19
逆风而前
Rank: 7Rank: 7Rank: 7
来 自:福建
等 级:黑侠
威 望:7
帖 子:193
专家分:567
注 册:2013-2-14
收藏
得分:7 
z=z+x[i]; 一个数组有下标,下标值i,j的值在变化,x[i]的值也在变化这样才会累加求和
2013-10-29 22:35
a592963144
Rank: 2
等 级:论坛游民
帖 子:41
专家分:95
注 册:2013-9-27
收藏
得分:10 
楼主的第一个程序里:  
    for(i=0;i<3;i++)
    z=z+x;(应该换为z=z+( *p_x+i);)
    for(j=0;j<3;j++)
    z=z+y;(应该改为z=z+(*p_y+j);)
(x[]是数组,不能用z=z+x;其中z是整型数)
2013-10-29 22:37
sunlang1234
Rank: 2
等 级:论坛游民
帖 子:47
专家分:77
注 册:2012-2-24
收藏
得分:0 
第一个程序中x,y是两个数组的地址,应该使用下标,或者使用*(p_x++).
2013-10-30 18:00
快速回复:这两个程序的区别是什么
数据加载中...
 
   



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

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