演習問題を終えていない学生のために、一部の演習問題について助言を提供します。
この演習課題は、簡単にいうと、キーボードから入力した文字を表示するプログラム、つまり「ABC」と入力したら「ABC」と表示するプログラムを作りなさい、というものです。
しかし、このようなプログラムを普通に作ると、入力された文字を表示するだけの、いつまでも終わらないプログラムが出来てしまいます。そこで、「CTRL」+「Z」を押すと止まるようにします。getchar 文を使っているなら、「CTRL」+「Z」は-1という値になっています。しかし、-1では判りにくいので、プログラムでは-1のかわりに「EOF」と書きましょう。(EOF は End Of File の略です。) コンピュータは、プログラムコードの中に「EOF」という表示を見つけた場合、-1とみなしてくれます。
このプログラムをいきなり作ることは難しいので、次の3段階で作ることを薦めます。
#include <stdio.h>
int main(int argc, char **argv)
{
int x;
x = 'A';
// 「A」を表示するプログラムをここに書く
getchar();
return 0;
}
プリントに載っている例は、if 文と goto 文を用いた例です。この演習で求められているプログラムは、この例のように if 文と goto 文を用いたものではなく、for 文を用いたプログラムです。例をそのまま入力しても、この演習課題を達成したことにはなりません。
演習の内容を理解していれば、次の質問に答えら得るはずです。
演習の内容を理解していれば、次の質問に答えら得るはずです。
演習の内容を理解していれば、次の質問に答えら得るはずです。
このプログラムは、次のように動作します。
| 何個のデータの平均を計算しますか? 3 1つめのデータを入力してください。 1 2つめのデータを入力してください。 3 3つめのデータを入力してください。 4 平均は 2.333333 です。 |
「double heikin(int n)」とは、次のような機能を持つ heikin という関数です。
main から例えば「4つ」という指示を受けたら、ユーザに4つの数を入力してもらい、その平均を計算して main に返す。

もし「Call to undefined function 'heikin'.」と表示された場合、その原因は heikin という関数が存在しないことです。heikin という関数は自分で作らなくてはなりません。関数の作り方は教科書のリスト 5.2 (p.139) 辺りを参考にするとよいでしょう。
演習の内容を理解していれば、次の質問に答えら得るはずです。
演習の内容を理解していれば、次の質問に答えられるはずです。
このプログラムでは、演習39と同様に swap という関数を自分で作らなくてはなりません。
func1 は
func1(buff);
という形で呼び出されています。main の最初で
char buff[80];
と宣言されているように、buff[0]〜buff[79] は char 型です。
関数 func1 はなぜ
void func1(char s)
ではなく
void func1(char *s)
と定義されているのですか。