C语言控制台小游戏,打砖块
这个问题是我在领扣上面看到的一道困难问题,原题是这样的:
#include "stdafx.h"
#include<stdio.h>
int a[10][10] = { { 0, 0, 1, 0, 0, 0, 0, 0, 1, 0 },
{ 0, 0, 1, 1, 1, 1, 0, 1, 1, 0 },
{ 0, 0, 0, 0, 1, 1, 0, 1, 1, 0 },
{ 0, 1, 1, 1, 1, 1, 0, 0, 1, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 1, 1, 0 },
{ 0, 0, 0, 0, 0, 0, 1, 1, 1, 1 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 } };//初始化二维数组,写成这个形状便于一目了然
void down(int a[10][10])//负责控制砖块下落的函数,使被赋值为3的砖块下落,下落到下界或值为1的方块之上
{
int i, j;
int m, n;
for (i = 9; i >=0; i--)
for (j = 0; j < 10; j++)
if (a[i][j] == 3)
{
m = i;
n = j;
while (a[m + 1][n] != 1&&m!=9)
{
a[