わくワーク

2022年3月に早期退職し起業しました。仕事、趣味について発信する雑記ブログです。当ブログはGoogleアドセンス及びアフィリエイト広告を利用しています。

Aランクレベルアップメニュー「マップの判定・縦 C編」

お元気さまです。わくワークの義(ヨシ)です。

 

C言語のスキルアップを目指して、プログラミング学習を進めています。

問題は、次のリンクから確認できます。

paiza.jp

 

二次元配列の理解を試す問題と思います。

正解できました。

 

#include <stdio.h>
int main(void){
    char str[1000];
    char buf[25][25];
    int h,w,i,x,y;
    fgets(str, sizeof(str), stdin);
    sscanf(str,"%d %d",&h,&w);
    for(i=0;i<h;i++){
        fgets(str,sizeof(str),stdin);
        sscanf(str,"%s",buf[i]);
    }
    for(y=0;y<h;y++){
        for(x=0;x<w;x++){
            if( y==0 && buf[1][x]=='#'){
                printf("%d %d\n",y,x);
            }
            else if( y==h-1 && buf[y-1][x]=='#'){
                printf("%d %d\n",y,x);
            }
            else if( buf[y-1][x]=='#' && buf[y+1][x]=='#'){
                printf("%d %d\n",y,x);
            }
        }
    }
    return 0;
}

 

C言語でのAランク目指して、練習問題を進めたいと思います。

 

それでは、今日もワクワクな一日を!

チャオチャオ!