高度プログラミング演習 (09).

Slides:



Advertisements
Similar presentations
1 例題 ex3b ( 配列 ) 科学科プログラミング. 2 例題 : ex3b  以下の 3 つについて例題を進める ステップ 1 :配列 ステップ 2 :最小と最大 ステップ 3 :文字型の配列.
Advertisements

オブジェクト指向言語・ オブジェクト指向言語演習 中間試験回答例. Jan. 12, 2005 情報処理技術基礎演習 II 2 オブジェクト指向言語 中間試験解説 1  (1) 円柱の体積(円柱の体積 = 底面の円の面積 x 高さ) を求めるプログラムを作成しなさい。ただし、出力結果は、入 力した底面の円の半径.
情報処理演習 (9)グラフィックス システム科学領域 日浦 慎作.
復習 2次元配列 4列 j = 0 j = 1 j = 2 j = 3 i = 0 i = 1 i = 2 3行
復習 2次元配列 4列 j = 0 j = 1 j = 2 j = 3 i = 0 i = 1 i = 2 3行
15.1 文字列処理の基本 15.2 文字列処理用ライブラリ関数
情報処理演習C2 ファイル操作について (2).
情報基礎演習B 後半第5回 担当 岩村 TA 谷本君.
プログラミング入門2 第10回 動的な領域確保 情報工学科 篠埜 功.
プログラミング入門2 第10回 構造体 情報工学科 篠埜 功.
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
プログラミング言語Ⅰ(実習を含む。), 計算機言語Ⅰ・計算機言語演習Ⅰ, 情報処理言語Ⅰ(実習を含む。)
文字配列の課題1 解説 /* a */ #include <stdio.h> main( ) { int i;
C言語講座 第4回 ポインタ.
第8回 プログラミングⅡ 第8回
理由:文字数より要素数の多い配列を用いた時に,文字列の最後を示すため
理由:文字数より要素数の多い配列を用いた時に,文字列の最後を示すため
精密工学科プログラミング基礎 第9回資料 (12/11 実施)
ファイル操作と文字列の利用.
第10章 char 文字列; 文字列を入力させるよ!.
C言語講座 第3回 ポインタ、配列.
ちょっとした練習問題① 配列iroを['R', 'W', 'R', 'R', 'W' , 'W' , 'W']を宣言して、「W」のときの配列の番号をprintfで表示するようなプログラムを記述しなさい。
プログラミング論 II 2008年10月30日 文字列
プログラミング序論 2. n人のインディアン.
第10章 これはかなり大変な事項!! ~ポインタ~
プログラミング入門2 第8回 ポインタ 情報工学科 篠埜 功.
知能情報工学演習I 第9回( C言語第3回) 課題の回答
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
今までの練習問題の復習.
第13章 文字の取り扱い方 13.1 文字と文字型変数 13.2 文字列 13.3 文字型配列への文字列の代入
知能情報工学演習I 第9回(後半第3回) 課題の回答
第13章 文字の取り扱い方 13.1 文字と文字型関数 13.2 文字列 13.3 文字型配列への文字列の代入
プログラミング入門2 第11回 情報工学科 篠埜 功.
第7回 プログラミングⅡ 第7回
岩村雅一 知能情報工学演習I 第10回(後半第4回) 岩村雅一
高度プログラミング演習 (02).
高度プログラミング演習 (08).
地域情報学 C言語プログラミング 第5回 ポインタ、関数、ファイル入出力 2017年11月17日
P n ポインタの基礎 5 q m 5 7 int* p; int 型の変数を指すポインタ int* q; int 型の変数を指すポインタ int n=5, m=7; int 型の変数 int array[3]; int* pArray[3]; p = &n; ポインタにアドレスを代入しているのでOK.
09: ポインタ・文字列 C プログラミング入門 総機1 (月1) Linux にログインし、以下の講義ページ を開いておくこと
高度プログラミング演習 (05).
高度プログラミング演習 (05).
プログラミング基礎B 文字列の扱い.
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
精密工学科プログラミング基礎Ⅱ 第4回資料 今回の授業で習得してほしいこと: 文字列の扱い ファイル入出力の方法 コマンドライン引数の使い方
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
プログラミング入門2 第10回 構造体 情報工学科 篠埜 功.
オブジェクト指向言語論 第六回 知能情報学部 新田直也.
プログラミング言語論 第六回 理工学部 情報システム工学科 新田直也.
C言語 はじめに 2016年 吉田研究室.
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
15.1 文字列処理の基本 15.2 文字列処理用ライブラリ関数
プログラミング入門2 第9回 ポインタ 情報工学科 篠埜 功.
文字列へのポインタの配列 static char *lines[MAXLINES]; lines[0] NULL
第13章 文字の取り扱い方 13.1 文字と文字型変数 13.2 文字列 13.3 文字型配列への文字列の代入
地域情報学 C言語プログラミング 第4回 while文、do~while文、switch文、 2次元配列、ポインタ 2017年11月10日
高度プログラミング演習 (11).
地域情報学 C言語プログラミング 第3回 入力、if文、for文 2016年11月25日
プログラミング論 文字列
プログラミング 4 文字列.
高度プログラミング演習 (07).
プログラミング演習II 2004年11月 16日(第5回) 理学部数学科・木村巌.
15.1 文字列処理の基本 15.2 文字列処理用ライブラリ関数
第2章 数値の入力と変数 scanfと変数をやります.
知能情報工学演習I 第9回(後半第3回) 課題の回答
岩村雅一 知能情報工学演習I 第13回(後半第7回) 岩村雅一
プログラミング演習I 補講用課題
高度プログラミング演習 (10).
第13章 構造体 講習最後だよ!.
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
Presentation transcript:

高度プログラミング演習 (09)

演習問題 格子の中で、点から点へは 任意の(x0,y0)から任意の(x1,y1)までの経路が何通りあるか計算するプログラムを作成せよ。 上または右にしか進めないとする。 任意の(x0,y0)から任意の(x1,y1)までの経路が何通りあるか計算するプログラムを作成せよ。 (x1,y1) (x0,y0)

#include<stdio.h> int cango(int x0,int y0,int x1,int y1) { int cnt=0; printf("(%2d %2d) ",x0,y0); if(x0==x1&&y0==y1){ printf("\n"); return 1; } if( x0 + 1 <= x1) cnt = cnt + cango(x0 +1,y0,x1,y1); if( y0 + 1 <= y1) cnt = cnt +cango(x0,y0 +1,x1,y1); return cnt; main() { int x0,y0,x1,y1; printf("始点を指定して下さい。(x, y): "); scanf("%d %d",&x0,&y0); printf("終点を指定して下さい。(x, y): "); scanf("%d %d",&x1,&y1); printf("%d\n",cango(x0,y0,x1,y1)); }

文字列の入力・出力 char ch[16]; scanf(“%s”,ch); printf(“%s\n”, ch);  文字列操作には文字配列が格納されているメモリ領域を指す文字ポインタが用いられる。

文字列の入力 scanf() だとスペースを含む文字列の 入力が困難。 gets(char *line)は入力された

文字列を扱う関数 strlen(char *s); strcmp(char *s1, char *s2); 等しければ0を返す strncmp(char *s1, char *s2, int n); strcpy(char *dst, char *src) 文字列 src を文字列 dst にコピーする

練習問題 適当な文字配列を宣言して さらに別の文字配列のプログラムを宣言して gets関数を用いて文字列の入力 printf 関数を用いて文字列の出力 を行うプログラムを作成せよ。 さらに別の文字配列のプログラムを宣言して strcpy 関数を用いて入力した文字列をコピーしてその内容を表示するプログラムを作成せよ。

固定的な文字列を指すポインタ char *name=“Kodo Programing”; printf(“%s\n”,name); name に scanf を用いて文字列を読み込ませたり、 name に strcpy を用いて文字列をコピーしたりできない。 name システム 領域

文字配列を指すポインタ char buf[128]; char *name; name = buf; scanf(“%s”,name); name に scanf を用いて文字列を読み込ませたり、 name に strcpy を用いて文字列をコピーしたりできる。 name buf

例題問題 主語、述語、目的語からなる簡単な英文で、主語、述語、目的語が与えられた文字列から適当に選ばれるプログラムを作成せよ。 Bob likes desks. Lee has cars. Ken likes cars. Bob sells dogs. Lee has desks. Ken has desks. Ken sells desks.

例題問題 ある文字列 s0 に文字列 s1 がいくつ含まれているか調べるプログラムを作成せよ。 例: This is a pen. に is がいくつ含まれているか?

練習問題 ある文字列 s0 にアルファベットの文字列 s1 がアルファベットの大文字・小文字に関わらずいくつ含まれているか調べるプログラムを作成せよ。 例: Ken likes cakes. に ke がいくつ含まれているか?

演習問題 文字列 s0 中に文字列 s1 があれば、それを s2 に置き換えるプログラムを作成せよ。 s0: Bill likes dogs and Bill has three dogs. s1: Bill s2: Ken