こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

eclipse 3.4xで複数メソッドからなるCプログラムを作りたいのですが…

eclipse3.4xでCDTプラグインを導入しC言語でプログラミングをし実行したいと思っているのですが、
インターネットで調べ、いろいろ試行錯誤したところ、
mainメソッドのみのプログラムでは実行しコンソールに正しく表示されるようになりました。
しかし、ソース内に複数のメソッドを定義すると、コンパイルは成功するのですが、コンソールに何も表示されません。
具体的にメソッドを説明すると、最初に

2つの正整数を入力してください:

と表示させ、二つの数字をスペースで区切り入力→エンターキー
すると二つの変数に代入され、その変数を引数としてgcd(int,int)メソッドで最大公約数を返し、

最大公約数は~です

と表示させるプログラムです。
つまり本来なら最初に、2つの正整数を入力してください:
と表示されるはずが何も表示されないということです。
しかし、何も表示されていないコンソールに二つの数字をスペースで区切り入力→エンターキー
とし、コンソール右上の終了ボタンを押すと、すべてのコンソールが一気に表示されます。
このエラーはどうすれば回避できるでしょうか?
環境は、
OS:WindowsXP sp3
メモリ:2GB
CPU:intel Core2 Duo
eclipse:Eclipse SDK 3.4.1 Build id: M20080911-1700
plugin :CDT一式
コンパイラ:Cygwin,MinGW
ソフトウェアもプラグインも最新の物に更新済みです。

ちなみにプロジェクトは、
新規→Cプロジェクト→実行可能.空のプロジェクトでツールチェーン.Cygwin
で作成しプロパティで、自動でmakefileを作成 にチェックを入れます。

まだCを始めばかりなのでmakefile,ヘッダなどの難しい事はわかりません。
プログラムの内容も初歩の初歩のプログラムを大量に作って練習中です。
↑の方法以外では実行できなかったので↑の方法でプログラムを作っています。
エラーの対処方法と同時に、
eclipseでC言語をするためのわかりやすい日本語の解説サイトを知っている方がいたら
教えて下さい。
よろしくお願いします。

投稿日時 - 2008-10-25 23:33:57

QNo.4429833

困ってます

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

そもそもやっているのは
C?
C++?
どっち?
メソッドはそもそもオブジェクト指向言語の用語ですけど。

後、実際のソースは?
質問者の情報だけでわかるのは超能力者。

投稿日時 - 2008-10-26 01:18:21

補足

回答ありがとうございます。
言語はCです。
ソースは
#include <stdio.h>

int gcd(int, int);

main()
{
int x, y;
printf("最大公約数を求めます!\n");
while (1) {
do {
printf("\n2つの正整数を入力してください:");
scanf("%d %d", &x, &y);
} while (x <= 0 || y <= 0);

printf("%dと%dの最大公約数は%dです\n", x, y, gcd(x, y));
}
}

int gcd(int u, int v)
{
int t;
while (u > 0) {
if (u < v)
{ t = u; u = v; v = t; }
u = u - v;
}
return v;
}
です。コード自体には問題は無いと思いますが…
よろしくお願いします。

投稿日時 - 2008-10-28 12:32:01

あなたにオススメの質問