| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 452 人关注过本帖
标题:杨辉三角 求解释 结果不对
只看楼主 加入收藏
hongshuai567
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2012-5-29
结帖率:50%
收藏
 问题点数:0 回复次数:3 
杨辉三角 求解释 结果不对
#include <stdio.h>
int main()
{
    int a[10][10],i,j;
    a[0][0]=a[1][0]=a[1][1]=1;
    printf("%d\n%d,%d\n",&a[0][0],&a[1][0],&a[1][1]);
    for(i=2;i<=10;i++)
    {
        a[i][0]=1;
        printf("%d,",&a[i][0]);
        for(j=1;j<i;j++)
            {
            a[i][j]=a[i-1][j-1]+a[i-1][j];
            printf("%d,",&a[i][j]);
            }
            a[i][j]=1;
            printf("%d,",&a[i][j]);
    printf("\n");
    }
   
}
搜索更多相关主题的帖子: 杨辉三角 include 
2012-05-30 11:50
Justinlong
Rank: 2
等 级:论坛游民
帖 子:19
专家分:13
注 册:2012-3-13
收藏
得分:0 
首先,基础知识严重缺乏,printf语句里的数不能加&,加了后就会变成地址
第二,数组里的十个数是由0开始,例如a[5]={1,2,3,4,5}
而a[0]=1,a[1]=2,到a[4]=5,没有a[5];
第三,输出到屏幕上不美观,如果你对客户不友好,人家怎么对你友好。
在你的基础上改正后:
#include <stdio.h>
int main()
{
    int a[10][10],i,j;
    a[0][0]=a[1][0]=a[1][1]=1;
    printf("%d\n%d,%d\n",a[0][0],a[1][0],a[1][1]);
    for(i=2;i<=9;i++)
    {
        a[i][0]=1;
        printf("%d,",a[i][0]);
        for(j=1;j<i;j++)
            {
            a[i][j]=a[i-1][j-1]+a[i-1][j];
            printf("%d,",a[i][j]);
            }
            a[i][j]=1;
            printf("%d,",a[i][j]);
    printf("\n");
    }
}
2012-05-30 14:33
雪狼MJ
Rank: 8Rank: 8
来 自:甘肃
等 级:蝙蝠侠
威 望:4
帖 子:267
专家分:853
注 册:2012-5-27
收藏
得分:0 
这是我的算法,希望对你有用:
#include <stdio.h>
int main(void)
{
    int n, i, j, k;
    int a[88], b[88];
   
    printf("请输入一个数{(x+1)的n次方}(n>=0):");
   
    scanf("%d", &n);
   
    n+=2;
   
    a[0]=1;
    a[1]=1;
   
    if(n==0){
        printf("1\n");
    }
   
    else if(n==1){
        printf("1 1\n");
    }
   
    else{
        for(i=1;i<n;i++){
            
            for(j=n-i;j>0;j--){
                printf("..");
            }
            
            b[0]=1;
            
            for(j=1,k=0;k<i-2;j++,k++){
                b[j]=a[k]+a[k+1];
            }
            
            b[i-1]=1;
            
            for(j=0;j<i;j++){  /*控制数组的输出*/
                printf("%4d", b[j]);
            }
            
            printf("\n");
            
            for(j=0;j<n;j++){
                a[j]=b[j];
            }
        }
    }
    return 0;
}

Edsger Dijkstra:算法+数据结构=程序
2012-05-30 20:22
t_omorrow
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-5-30
收藏
得分:0 
回复 2楼 Justinlong
这个写的真明确啊,嘿嘿,我也懂了~~~谢谢啦~~~
2012-05-30 20:59
快速回复:杨辉三角 求解释 结果不对
数据加载中...
 
   



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

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