ページ 11

C初心者ですw問題教えてもらえませんか?

Posted: 2009年11月19日(木) 03:17
by とりとり
はじめまして
最近 大学でC言語始めたばかりでとりあえずネットで似たような問題探してみたりもしたんですが
見つからなくてどうしようもないんで質問させていただきます。

問題
大きなHELLOを出力するプログラムを作成してください。
HELLOの1文字1文字の大きさは、縦が7文字分、横が5文字分とします。

Re:C初心者ですw問題教えてもらえませんか?

Posted: 2009年11月19日(木) 03:38
by kazuoni
横:縦=5:7の文字テーブルを用意して、それを上から順に出力すればよいのではないでしょうか?
int char_L[7][5] = 
{ 0,1,0,0,0,
  0,1,0,0,0,
  0,1,0,0,0,
  0,1,0,0,0,
  0,1,0,0,0,
  0,1,0,0,0,
  0,1,1,1,1, }}
みたいな感じで。0は空白、1は*みたいに出力すればよいかと。

Re:C初心者ですw問題教えてもらえませんか?

Posted: 2009年11月19日(木) 05:38
by array
kazuoniさんには申し訳ないですが、あきらかな丸投げなので実際にプログラム提示してみます。
問題の条件があいまいすぎて回答に困りますけど、適当に条件を補正して書いてみました。

#include<stdio.h>

int main() {
    int i = 0;

    const char *str[/url] = {
         "*   *  *****  *      *      *****"
        ,"*   *  *      *      *      *   *"
        ,"*   *  *      *      *      *   *"
        ,"*****  *****  *      *      *   *"
        ,"*   *  *      *      *      *   *"
        ,"*   *  *      *      *      *   *"
        ,"*   *  *****  *****  *****  *****"
    };

    for( i = 0; i < 7; ++i ) {
        printf("%s\n", str );
    }

    return 0;
}

無題

Posted: 2009年11月19日(木) 11:55
by とりとり
arrayさんありがとうございます。
すごく参考になりました。
まだforの関数など実習で進んでいない部分もあって全て理解できていないですが
そこはまた自分で調べて理解できるようにがんばります^^

条件などもまだ理解できていない段階であいまいすぎる質問ですみませんでした。

Re:無題

Posted: 2009年11月19日(木) 12:00
by non
Forもまだ習ってないなら、こうでしょう。
#include<stdio.h>

int main()
{
    printf("*   *  *****  *      *      *****\n");
    printf("*   *  *      *      *      *   *\n");
    printf("*   *  *      *      *      *   *\n");
    printf("*****  *****  *      *      *   *\n");
    printf("*   *  *      *      *      *   *\n");
    printf("*   *  *      *      *      *   *\n");
    printf("*   *  *****  *****  *****  *****\n");
    return 0;
}