[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
1.2つの正の整数u, vの最大公約数gcd(u, v)を求めるユークリッドのアルゴリズムについて,
繰り返し版のプログラムをつくりなさい。尚,ユークリッドの方法は,「uがvより大きいならば,
uとvの最大公約数がvとu-vの最大公約数に等しい」ことに基づく。
関数のプロトタイプ宣言は次のようにしなさい。
  int gcd(int, int);
▼出力例
最大公約数を求めます!
2つの正整数を入力してください:124 432↵
124と432の最大公約数は4です
2.キーボードから0〜9の数字dと,正の整数nを読み込み,n以下の整数xで,
xとxの2乗の10進数表示の両方にdを含むものをすべて出力するプログラムをつくりなさい。
ただし,次のプロトタイプ宣言で示すように,整数xとdを仮引数として,
xとxの2乗の10進数表示の両方にdを含む場合に1,
そうでない場合に0を返す関数hit_digitを作成しなさい。
 int hit_digit(int x, int d);
▼出力例
0〜9の数字dを入力して下さい:7↵
正の整数nを入力して下さい:100↵
該当するものは次の通り:
27 74 76 87
全部で4個ありました

[3] 環境
 [3.1] OS:windows (Windows/Linux/等々)
 [3.2] コンパイラ名とバージョン:borland (gcc 3.4 VC 6.0等)
 [3.3] 言語:C (C/C++/どちらでも可 のいずれか)
[4] 期限: 今週日曜日
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
2つありますがよろしくお願します。