• 締切済み

関数について

学校のC言語の課題でユーザ定義関数を一つ以上つかえという指示があったのですが、後々気づいたのでmain関数のみで作りあげてしまいした。 そこで、 void write(int sum) {   printf("%d\n",sum); } このようなただ書く機能だけの関数を作って提出しようと思うのですが、これはユーザ定義関数となりますか? よろしくお願いします。

みんなの回答

回答No.6

#include<stdio.h> int main() { printf("%d\n",sum); retrun 0; } でないとプログラムが完成されません。 void write(int sum) { printf("%d\n",sum); } だとsumの値がおかしくなるはずです。

回答No.5

残念ながら,「ユーザー定義関数」はCの規格にある用語ではありません。 なので,授業でどのように習ったかが定義になります。 字句通り「ユーザーが定義した関数」,という意味でとらえるならば,mainもユーザー定義関数となります。 また,main以外に関数を一個作って使えというだけであっても,mainの中身をごっそり関数の中に入れ,mainはそれを呼び出すだけでも使っていることになります。 つまり, int real_main (void) {  /* ここに処理を全て書く */  return 0; } int main (void) {  return real_main(); } としても,要求字体は満たすことになります。

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.4

「main 関数は『ユーザ定義関数』です」と言い張ってみる. 間違ってはいないけど, きっと評価してくれないだろうなぁ....

nyandafull
質問者

補足

main関数以外に一つ以上って書いてありました。 文章が結構厳密なんでいいかもしれません。

回答No.3

 こんにちは、nyandafullさん。  課題の具体的な内容が分からないと何とも言えない部分はありますが、独自のユーザー関数(例えば四則演算をする関数等)を作成し、それをmain関数から呼び出すようにすれば良いのではないかと思います。

  • php504
  • ベストアンサー率42% (926/2160)
回答No.2

むしろmain( )関数の内容を別関数にして int main(void) { int sum; sum = function(); printf("%d\n",sum); return 0; } のほうがまだいいような気がします

  • koko_u_u
  • ベストアンサー率18% (216/1139)
回答No.1

>これはユーザ定義関数となりますか? なるけど、きっとそれでは評価してはもらえないと思う。