ページ 11

for文を使って。。

Posted: 2008年10月05日(日) 11:53
by どんぐり
 質問があります。
 for文を使って下記のように表示したいのですが、うまく表示出来ません。
 「*」の段と段の間に空白が入ってしまします。
 どうしたら空白がでなくなるでしょうか>
どなたかご教授お願いします。
 *
**
***
****
*****

 -------------------------------------
#include <stdio.h>

int main(void)
{
int x,y;

/* 縦 */
for(x=0;x<6;x++)
{
/* 横 */
for(y=0;y<x;y++)
{
printf("*");
}
printf("\n");
}
}

Re:for文を使って。。

Posted: 2008年10月05日(日) 12:09
by Mist
xの初期値を0からはじめているためです。
最初x=0,y=0となるので、内側のループが実行されずに改行だけされます。
修正方法はいくつかありますが以下はその一例です。

for(x=1; x<= 5; x++)

Re:for文を使って。。

Posted: 2008年10月05日(日) 13:02
by どんぐり
 >mistさん
 
 すいません。
 for(x=1; x<= 5; x++) をやったのですが
 「*」の段と段の間に空白が入ってしまします。
 申し訳ないんですが全体のソースを載せていただけないでしょうか。

Re:for文を使って。。

Posted: 2008年10月05日(日) 13:13
by -
投稿者による削除

Re:for文を使って。。

Posted: 2008年10月05日(日) 13:26
by array
質問内容だけでは、意味がよく分からなかったので、実際に実行してみたのですが、特に問題は無いみたいですが、どういうことでしょうか

上記のどんぐりさんのプログラムそのままで
#########実行結果#########
*
**
***
****
*****


※実行環境
OS Vista
コンパイラ Visual Studio 2008 コマンド プロンプト

Re:for文を使って。。

Posted: 2008年10月05日(日) 13:37
by Mist
> 「*」の段と段の間に空白が入ってしまします。

段と段の間の空行なんてどんぐりさんが書いたプログラムからありませんよ。
*は他の字に比べて小さく上と下に隙間があるためその隙間が上下でつながると
間にもう一行あるように錯覚しているだけではないですか?
空いているという行をどうやって確認しましたか?

Re:for文を使って。。

Posted: 2008年10月05日(日) 14:15
by -
投稿者による削除

構造体についてのエラー

Posted: 2008年10月22日(水) 00:19
by yu
お初です

管理者様の龍神録をダウンロードさせていただきいろいろと自分で追加したりしているのですが
どうも構造体を自分で新しく追加するのができません・・・
他のファイルでその追加した構造体の変数を使おうとするとエラーがでてしまいます。
どこが間違っているのかもわからないのですが、
エラーの言っていることも分かりませんでした・・・
どなたかこんな無知な自分に教えてくだされば幸いです。

エラー内容

1>ini.obj : error LNK2001: 外部シンボル ""struct spell_t spell" (?spell@@3Uspell_t@@A)" は未解決です。
1>C:\Users\家\Desktop\test\50章\Debug\RyuJin.exe : fatal error LNK1120: 外部参照 1 が未解決です。


エラーが起きてしまうソース

----struct.h-----に追加

typedef struct{
	int flag,graph,cnt;
}spell_t;


-----GV_h-----に追加

GLOBAL spell_t spell;


-----ini.cpp-----のvoid ini に追加(ini.cpp以外のファイルでもエラーが出ます)

spell.flag=1;




結構最近C++をやり始めましたので簡単、初歩的なミスをしていましたらすみません;

Re:構造体についてのエラー

Posted: 2008年10月22日(水) 00:26
by 管理人
それであってるはずですよ。
もしかしたら変更した箇所が反映されていないのかもしれません。
ビルド>リビルド
してみて下さい。

Re:構造体についてのエラー

Posted: 2008年10月22日(水) 00:41
by yu
ありがとうございます!

リビルドしたところちゃんとできました。

反映されていなかったんですね・・・
1時間考えていたのですが、もっと早く聞けばよかったですw


管理者様ありがとうございました!
これからもサイトの更新頑張ってください!
かなり参考になっていますから!

Re:構造体についてのエラー

Posted: 2008年10月22日(水) 00:47
by 管理人
ありがとうございます。

.cppファイルは変更したら必ず反映されるのですが、
ヘッダファイルは反映されないことがあるので、
おかしいなと思った時はリビルドしてみるといいです。

加えて、VC++は何故かたま~におかしな挙動をすることがあるので、
リビルドしても動かず、どう考えてもおかしいときは、VC++を再起動してみるとうまくいく事あります。

後、実行ファイルが実行できないときは、前に実行した実行ファイルが動いている場合があるので、
タスクマネージャーを見てプロジェクトと同じ名前の実行ファイルが実行されていないか確認してみて下さい。
そのファイルを強制終了させると動くようになります。

VC++使用中に困る事はこれ位でしょうか。何か参考になればm(_ _)m