首页 > 站务管理 > 站点内务 > 只能输出一组正确值,WHY?
2007
08-24

只能输出一组正确值,WHY?




#include<stdio.h>
main()
{
    int i,j,x[3][3];
    for(i=1;i<7;i++)
        for(j=1;j<7;j++)
            if((7-2*i)>0&&(7-2*j)>0&&(7-i-j)>0&&(2*i+2*j-7)>0){
//这其中有两组满足条件的i和j值,但结果只能输出一组正确值,请问通过什么改变可以达到输出两组值的
//目的?
                x[0][0]=i;
                x[0][1]=7-2*i;
                x[0][2]=i;
                x[1][0]=j;
                x[1][1]=7-2*j;
                x[1][2]=j;
                x[2][0]=7-i-j;
                x[2][1]=2*i+2*j-7;
                x[2][2]=7-i-j;
            
                for(i=0;i<3;i++){
                    for(j=0;j<3;j++)
                        printf(“%d “,x[i][j]);
                    printf(“\n”);
                }


            }
}


只能输出一组正确值,WHY?》有 2 条评论

  1. 5iluo 说:

       for(i=0;i<3;i++)

         {
                        for(j=0;j<3;j++)
                            printf(“%d “,x[i][j]);
                        printf(“\n”);
                    }

    ij的值变了,你重新定义两个变量应该就可以了

  2. rayio 说:

    如果像楼上的那位那样做的话确实能得到两组值.

    但不知为什么结果中的行进行了交换,使结果变成了6组值?

留下一个回复