
关于c++程序编写,急急急!!求高人帮帮忙,不胜感激
将1到九这九个数字填入到九个空格中,每一横行的三个数字,使第二行的三位数是第一行的2倍,第三行的三位数是第一行的3倍,应怎样填数?(用C++语言编写)如图:...
将1到九这九个数字填入到九个空格中,每一横行的三个数字,使第二行的三位数是第一行的2倍,第三行的三位数是第一行的3倍,应怎样填数?(用C++语言编写)如图:
展开
2个回答
展开全部
#include<stdio.h>
void main(void)
{
int num[3][3] = {0};
for(int i = 123;i<=987;i++)
{
if(3*i>=1000)break;
num[0][0] = i/100;
num[0][1] = (i%100)/10;
num[0][2] = i%10;
num[1][0] = (2*i)/100;
num[1][1] = ((2*i)%100)/10;
num[1][2] = (2*i)%10;
num[2][0] = (3*i)/100;
num[2][1] = ((3*i)%100)/10;
num[2][2] = (3*i)%10;
int temp = 0;
for(int x = 0;x<3;x++)
{
for(int y = 0;y<3;y++)
{
if( (num[x][y] != num[0][0]) || (x == 0 && y ==0))
if( (num[x][y] != num[0][1]) || (x == 0 && y ==1))
if( (num[x][y] != num[0][2]) || (x == 0 && y ==2))
if( (num[x][y] != num[1][0]) || (x == 1 && y ==0))
if( (num[x][y] != num[1][1]) || (x == 1 && y ==1))
if( (num[x][y] != num[1][2]) || (x == 1 && y ==2))
if( (num[x][y] != num[2][0]) || (x == 2 && y ==0))
if( (num[x][y] != num[2][1]) || (x == 2 && y ==1))
if( (num[x][y] != num[2][2]) || (x == 2 && y ==2))
temp++;
}
}
if(temp == 9)
{
printf("%d %d %d\n%d %d %d\n%d %d %d\n\n",
num[0][0],num[0][1],num[0][2],
num[1][0],num[1][1],num[1][2],
num[2][0],num[2][1],num[2][2]);
}
}
}
void main(void)
{
int num[3][3] = {0};
for(int i = 123;i<=987;i++)
{
if(3*i>=1000)break;
num[0][0] = i/100;
num[0][1] = (i%100)/10;
num[0][2] = i%10;
num[1][0] = (2*i)/100;
num[1][1] = ((2*i)%100)/10;
num[1][2] = (2*i)%10;
num[2][0] = (3*i)/100;
num[2][1] = ((3*i)%100)/10;
num[2][2] = (3*i)%10;
int temp = 0;
for(int x = 0;x<3;x++)
{
for(int y = 0;y<3;y++)
{
if( (num[x][y] != num[0][0]) || (x == 0 && y ==0))
if( (num[x][y] != num[0][1]) || (x == 0 && y ==1))
if( (num[x][y] != num[0][2]) || (x == 0 && y ==2))
if( (num[x][y] != num[1][0]) || (x == 1 && y ==0))
if( (num[x][y] != num[1][1]) || (x == 1 && y ==1))
if( (num[x][y] != num[1][2]) || (x == 1 && y ==2))
if( (num[x][y] != num[2][0]) || (x == 2 && y ==0))
if( (num[x][y] != num[2][1]) || (x == 2 && y ==1))
if( (num[x][y] != num[2][2]) || (x == 2 && y ==2))
temp++;
}
}
if(temp == 9)
{
printf("%d %d %d\n%d %d %d\n%d %d %d\n\n",
num[0][0],num[0][1],num[0][2],
num[1][0],num[1][1],num[1][2],
num[2][0],num[2][1],num[2][2]);
}
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询