Powered by SmartDoc

ソフトウェア概論A (2012/04/20)
Ver. 1.2

2012年4月20日
栗野 俊一
kurino@math.cst.nihon-u.ac.jp
http://edu-gw2.math.cst.nihon-u.ac.jp/~kurino/2012/soft/soft.html
ソフトウェア概論 A2012年4月20日 の資料

目次

講義資料

当日の OHP 資料

当日のOHP資料です。

講義で利用するサンプルプログラム

sample-001

Download : sample-001.c ( SJIS 版 )

sample-001.c
/*
 * 2012/04/20 sample-001.c
 */

/*
 * 最初のプログラムは "Hello, World"
 */

#include <stdio.h>

int main ( void ) {

printf ( "Hello, World\n" );	/* "Hello, World" という文字列と改行 ( "\n" ) を表示する */

  return 0;
}
sample-001.c の実行結果
C:\usr\c\>sample-001
Hello, World
C:\usr\c\> 

sample-002

Download : sample-002.c ( SJIS 版 )

sample-002.c
/*
 * 2012/04/20 sample-002.c
 */

/*
 * エラーを含む例
 */

#include <stdio.h>

int main ( void ) {

  printf ( "Hello, World\n" )	/* セミコロンを付け忘れた */

  return 0;
}
sample-002.c の実行結果
C:\usr\c\>cc sample-002.c
sample-002.c: 関数 'main' 内:
sample-002.c:15:3: エラー: expected ';' before 'return'
C:\usr\c\>

sample-003

Download : sample-003.c ( SJIS 版 )

sample-003.c
/*
 * 2012/04/20 sample-003.c
 */

/*
 * printf を並べれば、沢山の文字列が表示される
 */

#include <stdio.h>

int main ( void ) {

  printf ( "おはよウナギ\n" );
  printf ( "こんにちワン\n" );
  printf ( "こんばんワニ\n" );

  return 0;
}
sample-003.c の実行結果
C:\usr\c\>sample-003
おはよウナギ
こんにちワン
こんばんワニ
C:\usr\c\> 

sample-004

Download : sample-004.c ( SJIS 版 )

sample-004.c
/*
 * 2012/04/20 sample-004.c
 */

/*
 * "\n" は改行を意味する。"\n" がなければ改行しない。
 */

#include <stdio.h>

int main ( void ) {

  printf ( "おはよ" );		/* \n がないので改行しない */
  printf ( "ウナギ\n" );
  printf ( "こんにちワン\nこんばんワニ\n" );	/* 途中に \n があるので改行する */

  return 0;
}
sample-004.c の実行結果
C:\usr\c\>sample-004
おはよウナギ
こんにちワン
こんばんワニ
C:\usr\c\> 

sample-005

Download : sample-005.c ( SJIS 版 )

sample-005.c
/*
 * 2012/04/20 sample-005.c
 */

/*
 * プログラムの一部に名前をつけて、呼び出す事ができる。
 */

#include <stdio.h>

int unagi() {	/* "ウナギ" の出力と改行を行う部分に "unagi" という名前をつける */
  printf ( "ウナギ\n" );
}

int main ( void ) {

  printf ( "おはよ" );		/* \n がないので改行しない */
  unagi();					/* printf の代わりに unagi を呼び出す */
  printf ( "こんにちワン\nこんばんワニ\n" );	/* 途中に \n があるので改行する */

  return 0;
}
sample-005.c の実行結果
C:\usr\c\>sample-005
おはよウナギ
こんにちワン
こんばんワニ
C:\usr\c\> 

本日の課題

[課題]「Hello,自分の名前」を100回以上出力するC言語のプログラム

課題プログラム内の「/*名前:ここ*/」の部分を書き換え「/*この部分を完成させなさい*/」の部分にプログラムを追加して、プログラムを完成させます。

課題 20120420-01

Download : 20120420-01.c ( SJIS 版 )

20120420-01.c
/*
 * 20120420-01-QQQQ.c
 *	「Hello, 自分の名前」を 100 回以上出力するプログラム
 */

#include <stdio.h>

/*
 * sub
 */

void print1() {
  printf ( /* q:ここ */ );
}

void print2() {
  print1();
  print1();
}

void print4() {
  print2();
  print2();
}


	/*
	**	 この部分を完成させなさい
	*/


void print128() {
  print64();
  print64();
}

/*
 * main
 */

int main ( void ) {

  print128();

  return 0;
}
20120420-01.c の実行結果
C:\usr\c\>20120420-01-QQQQ
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
Hello 栗野
C:\usr\c\>