该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include
int main(){
int m, n; //创建m和n坐标变量
printf("请输入二维平面大小:");
scanf("%d %d", &m, &n); //写入m和n分别是多少的数值
while(getchar()!='\n'); //清除键盘缓存的换行符
int pingmian[m][n]; //创建二维平面
printf("现在开始分配蚊子所在位置!\n");
int xunhuan_shuru_0, xunhuan_shuru_1; //创建2个循环使用的变量
char fenpei_wenzi_kong; //创建分配蚊子时要用的变量
for(xunhuan_shuru_0=0; xunhuan_shuru_0
for(xunhuan_shuru_1=0; xunhuan_shuru_1
fenpei_wenzi_kong =getchar(); //分配蚊子
if(fenpei_wenzi_kong=='0'){ //如果为空,那么当前格的生命值是-100
pingmian[xunhuan_shuru_0][xunhuan_shuru_1] =-100; //当前格的生命值为-100
}
else if(fenpei_wenzi_kong=='#'){ //如果有蚊子,当前格生命为100
pingmian[xunhuan_shuru_0][xunhuan_shuru_1] =100; //当前格生命为100
}
else{ //如果不是上述的两个那么重新开始输入
printf("分配出错,请重新输入!\n"); //输出语句
xunhuan_shuru_1 =-1; //第二循环值归零
}
}
while(getchar()!='\n'); //清除回车键
}
int k=1, x=999, y=999; //创建炸弹变量(默认1发炸弹), 还有待会他的x和y坐标的变量
printf("请输入炸弹的数量:");
scanf("%d", &k); //输入有几发炸弹
while(getchar()!='\n'); //清除回车键
int zhanji[k][1]; //记录战绩用的数组
int xunhuan_shuru_zhadan_zuobiao; //创建等下循环使用的变量:输入炸弹坐标的
for(xunhuan_shuru_zhadan_zuobiao=0; xunhuan_shuru_zhadan_zuobiao
printf("第%d发炸弹的坐标:", xunhuan_shuru_zhadan_zuobiao+1);
scanf("%d %d", &x, &y); //输入坐标
x -=1; //坐标修正
y -=1; //坐标修正
zhanji[xunhuan_shuru_zhadan_zuobiao][0] =0; //战绩初始化
if(x
if(pingmian[x][y]>98){ //验证当前格是否有蚊子
pingmian[x][y] -=2; //有蚊子,产生伤害
if(pingmian[x][y]<=98){ //如果蚊子被打死
zhanji[xunhuan_shuru_zhadan_zuobiao][0] +=1; //记录杀死一个蚊子
}
}
if(x+198){ //验证旁边格是否存在和是否存在蚊子
pingmian[x+1][y] -=1; //有蚊子,产生伤害
if(pingmian[x+1][y]<=98){ //如果蚊子被打死
zhanji[xunhuan_shuru_zhadan_zuobiao][0] +=1; //记录杀死一个蚊子
}
}
if(x-198){ //验证旁边格是否存在和是否存在蚊子
pingmian[x-1][y] -=1; //有蚊子,产生伤害
if(pingmian[x-1][y]<=98){ //如果蚊子被打死
zhanji[xunhuan_shuru_zhadan_zuobiao][0] +=1; //记录杀死一个蚊子
}
}
if(y+198){ //验证旁边格是否存在和是否存在蚊子
pingmian[x][y+1] -=1; //有蚊子,产生伤害
if(pingmian[x][y+1]<=98){ //如果蚊子被打死
zhanji[xunhuan_shuru_zhadan_zuobiao][0] +=1; //记录杀死一个蚊子
}
}
if(y-198){ //验证旁边格是否存在和是否存在蚊子
pingmian[x][y-1] -=1; //有蚊子,产生伤害
if(pingmian[x][y-1]<=98){ //如果蚊子被打死
zhanji[xunhuan_shuru_zhadan_zuobiao][0] +=1; //记录杀死一个蚊子
}
}
}
else{ //如果输入的坐标有误,那就重新输入
printf("输入的坐标有误,请重新输入!\n"); //输出语句
xunhuan_shuru_zhadan_zuobiao -=1; //当前循环次数撤销
}
}
int xunhuan_shuchu; //循环变量
for(xunhuan_shuchu=0; xunhuan_shuchu
printf("第%d发炸弹战绩:%d\n", xunhuan_shuchu+1, zhanji[xunhuan_shuchu][0]); //输出语句
}
return 0;
}
楼主,您复制到编辑器里,TAB缩进,应该都还在,您看一下,我的输出运行结果如下: