なお,表示においては先頭の行には自分の学生番号を,最後にはハイフンによるラインを出力すること.
My student number: s124099 10 C 6 = 210 ---------------------------- |
for 文を3つ使用して定義どおりに求めるのが一番簡単だと思います.扱える整数の上限 long を意識して作成する必要があります.
/* ************************************************** */ /* */ /* 情報科学演習 C6 C7 */ /* レポート課題 */ /* 2012.11.19 */ /* */ /* ************************************************** */ /* */ /* 学生番号: */ /* */ /* 氏名: */ /* */ /* ************************************************** */ /* */ /* この行以降に解答のプログラムを書くこと */ #include <stdio.h> #include <stdlib.h> #include <time.h> main() { srand((unsigned) time(NULL)); int m, n, i; long num=1, dom=1, c; m = rand() % 5 + 10; n = rand() % 6 + 5; printf("My student number: s124099\n\n"); for(i=m; i<m-n; i--) num *= i; for(i=1; i<=n; i++) dom *= i; c = num / dom; printf("%d C %d = %d\n", m, n, c); printf("\n----------------------------\n\n"); return(0); } |