流感问题。。c语言,程序不对。。求大神纠错

流感问题。。c语言,程序不对。。求大神纠错,第1张

    for(k=1k<mk++)

{

for(i=1i<n+1i++)

{

for(j=1j<n+1j++)

{

if(a[i][j]=='@') //这里及之后的几个if句出现问题

{

if(a[i+1][j]=='.')

{

a[i+1][j]='@'

}

if(a[i][j-1]=='.')

{

a[i][j-1]='@'

}

if(a[i][j+1]=='.')

{

a[i][j+1]='@'

}

if(a[i-1][j]=='.')

{

a[i-1][j]='@'

}

}

}

}    

    }

以上进行注释标记的部分的问题是,当扫描到一个房间是有流感标记的房间,如果没有空房间的话,那么许多房间都会错误的成为流感单元'@'

比如说. . . . .    

. @ . . .

       . . . . .

       . . . . .

.        . . . . .

经过一次循环会变成 . @ @ @ @

 @ @ @ @ @

@ @ @ @ @

 @ @ @ @ @

@ @ @ @ @

我想到的解决方法有两个:

      1、新建一个和输入数组一样大的数组,当扫描原数组当前单元为流感标记'@'的单元时,在新建数组内进行改变,扫描完成再把新建数组的值赋值给原数组

2、设置一个中间态,称作即将感染态'$',当扫描到流感标记'@'时,在其四周四个'.'单元中赋值'$',扫描完成后将所有'$'变成'@'

流感传播方式包括呼吸道直接传播和间接接触传播。所以,我们预防流感也可以从这两方面来着手。

直接传播:病毒通过患者咳嗽或者喷嚏溅出的飞沫传给他人。

预防方式:患者应戴口罩,防止飞沫四溅,生病时期不到集体场所;健康人群尽量少去人口密集场所,带上口罩防止吸入患者的飞沫。

间接接触传播:患者手部被飞沫污染后接触他人或物体间接传播。

预防方式:健康人群接触被患者飞沫污染的物体后,再接触口鼻导致间接传染;防止接触传播,请多用肥皂或洗手液流水洗手,不洁的手勿接触口鼻眼;即使是冬季,也要坚持室内每天对流通风2次,每次15分钟以上。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12138479.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存