プログラミング入門 情報科学演習 宿題 2013.11.18

Back to text page


8桁の正の整数を乱数により1つ発生させて表示させます.その後で,各位の数の和を求めて表示するプログラムを作成しましょう.なお,このプログラムでは for 文のために使用する変数を i とし,それ以外には3つの int 型の変数を使用できるものとします.

My student number: s134099

49306067
4 9 3 0 6 0 6 7
Sum of above digits: 35

---------------------

複合演算子の使い方がポイントになります.

解答例

/* ************************************************** */
/*                                                    */
/*      プログラミング入門  情報科学演習C7                            */
/*      レポート課題                                  */
/*      2013.11.18                                    */
/*                                                    */
/* ************************************************** */
/*                                                    */
/*      学生番号:                                    */
/*                                                    */
/*      氏名:                                        */
/*                                                    */
/* ************************************************** */
/*                                                    */
/*      この行以降に解答のプログラムを書くこと        */

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

main()
{
	srand((unsigned) time(NULL));
	
	int i, num, sum = 0, div = 10000000;
	
	num = rand() % 90000000 + 10000000;
	
	printf("My student number: s134099\n\n");
	printf("%d\n", num);
	
	for(i=1; i<=8; i++){
		sum += num / div;
		
		printf("%d ", num / div);
		
		num %= div;
		div /= 10;
	}
	
	printf("\nSum of above digits: %d\n\n", sum);
	printf("---------------------\n\n");
	
	return(0);
}


Back to text page