
No.2ベストアンサー
- 回答日時:
ふつうに考えると
int n;
int ret;
int max;
/* nが0から100までのあいだループ */
fot( n = 0, max = 0; n <= 100; n++ ) {
/* 関数fにnを渡し、戻り値を取得する */
ret = f( n );
/* 今までの最大値と、戻り値を比較し、戻り値が大きかったら格納する */
if( max < ret ) {
max = ret;
}
}
でしょうかね?
この回答への補足
コメント付きで大変わかりやすいプログラミングで初心者の私にとっては大変ありがたい限りです。for文をこのように使うのかぁという感じです。まぁわかる人からすればあたりまえのことなんでしょうが。あと、もちろん関数f()はmain関数以前か以降で定義しておくのですよね?がんばって作ってみたいと思います。
補足日時:2002/06/07 10:39No.3
- 回答日時:
>あと、もちろん関数f()はmain関数以前か以降で定義しておくのですよね?
関数fは、どこにあってもいいですよ。
別のソースファイルでもかまいません。
ただし、
1.main()の前にf()を定義したときは特に制限なし。
2.main()の後にf()を定義したときは、main()の前にプロトタイプ宣言が必要。
3.別のソースファイルにf()を定義したときは、宣言しているヘッダファイルをincludeすることが必要(もしくはextern宣言と呼ばれる特殊な宣言が必要)。
となります。
1.の「main()の前にf()を定義したときは特に制限なし。」と書きましたが、プロトタイプ宣言をしても、ヘッダファイルをインクルードしてもかまいません。
同様に、2の場合でも、ヘッダファイルを使用してもかまいません。
大きなプログラムを書くようになると、必要に応じて理解しやすい単位にソースを分割していくことがほとんどです。
ぜひ、ヘッダファイルを作成していくことをお勧めします。
#説明のときでも変数名や関数名に全角文字を使うのはやめたほうがいいですよ。また、"While"と、Wを大文字にするのもNGです。
Cでプログラムを作っていくのであれば、ソースは半角で、キーワードは正しく書くよう常に心がけてください。
No.1
- 回答日時:
最大値を入れておく変数を用意して関数の返す値の方がそれよりも大きかったらその変数に代入するというのを繰り返せば出来ますよ。
例) f(0)~f(99) の返す値の最大値を n に入れる。
int i, n, m;
n = f(0);
for (i = 1; i < 100; i++) {
m = f(i);
if (m > n)
n = m;
}
printf("最大値 %d\n", n);
この回答への補足
どうもありがとうございました。わかる人からすればなんてことはないプログラミングなんですよね。我ながら実力のなさを痛感させられます。やはり慣れも実力のひとつなんでしょうか??たくさんのプログラミングを理解し作ることでその実力もつくのでしょうか?よかったらコメントして下さい。
補足日時:2002/06/07 10:36お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java Java 南京錠 2 2023/02/04 11:46
- Java Java配列の問題を教えてください。 乱数で20個出力し、最大、最小、合計、平均を求め、更に昇順にソ 3 2023/07/10 18:32
- 数学 x^2+y^2=1という条件のもとで6x^2+4√3xy+10y^2を最大化・最小化したいのですが、 3 2023/01/09 21:43
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- Visual Basic(VBA) vba 等間隔の列に対しての計算 6 2022/05/17 20:15
- PHP htmlで複数の個数入力欄を表示させるには 1 2022/09/20 03:11
- その他(プログラミング・Web制作) プログラミング pythonの問題について 2 2022/04/19 00:41
- その他(プログラミング・Web制作) Pythonでこのプログラミングを作りたいのですが 1 2022/10/24 18:56
- その他(プログラミング・Web制作) python質問 1 2023/08/14 11:54
- JavaScript javascriptで文字分割は、 split() などメソッド不要??? 4 2023/02/06 22:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語の<ctype.h>のisspace()に...
-
TCP/IPでのgetsockname()の使い...
-
typedef enumの使い方を教えて...
-
C言語のコンパイルエラー
-
OpenGLで登録したコールバック...
-
C言語で分割ファイル先の関数を...
-
構造体の要素すべてに対する四...
-
intとINTの違いは?
-
C++のfor文について
-
enumについて
-
プログラムの中で別のmainを呼...
-
2重定義って??
-
C++/CLIでネイティブの構造体を...
-
visualstudio C# テキストボッ...
-
「Aに対するBの割合」と「Aに対...
-
信頼区間の1.96や1.65ってどこ...
-
有効数字について 以前質問をし...
-
Fortran において変数の定義
-
memcpyについて
-
C++の課題が分かりません。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
DWORDの実際の型は何でしょうか
-
visualstudio C# テキストボッ...
-
long型の定数の末尾にLを付ける...
-
main.c:7:43: warning: implici...
-
2重定義って??
-
変数の型を定義しなかった場合...
-
C++でboolにintの値を代入する...
-
typedef enumの使い方を教えて...
-
C++のfor文について
-
intとINTの違いは?
-
【#define】 defineで定義した...
-
ハンドルされていない例外が発...
-
void func( void )について
-
C言語のコンパイルエラー
-
enumについて
-
関数の実体定義にヘッダファイ...
-
C言語 宣言した変数になにも代...
-
C++ クラスをメンバにもつクラ...
-
プログラムの中で別のmainを呼...
-
sshdログの意味
おすすめ情報