卒 業 研 究 報 告.PDF

Similar documents
A/B (2018/10/19) Ver kurino/2018/soft/soft.html A/B

Original : Hello World! (0x0xbfab85e0) Copy : Hello World! (0x0x804a050) fgets mstrcpy malloc mstrcpy (main ) mstrcpy malloc free fgets stream 1 ( \n

mstrcpy char *mstrcpy(const char *src); mstrcpy malloc (main free ) stdio.h fgets char *fgets(char *s, int size, FILE *stream); s size ( )

1 C STL(1) C C C libc C C C++ STL(Standard Template Library ) libc libc C++ C STL libc STL iostream Algorithm libc STL string vector l

新版明解C言語 実践編

ファイル入出力

ファイル入出力

Microsoft Word - Cプログラミング演習(9)

Taro-ファイル処理(公開版).jtd

Microsoft Word - C.....u.K...doc

スライド タイトルなし

新・明解C言語 実践編

PowerPoint プレゼンテーション

tuat1.dvi

ohp08.dvi

+ +

PC Windows 95, Windows 98, Windows NT, Windows 2000, MS-DOS, UNIX CPU

ex14.dvi

: CR (0x0d) LF (0x0a) line separator CR Mac LF UNIX CR+LF MS-DOS WINDOWS Japan Advanced Institute of Science and Technology

r08.dvi

Microsoft PowerPoint - CproNt11.ppt [互換モード]

新・明解C言語 ポインタ完全攻略

1.ppt

‚æ4›ñ

:30 12:00 I. I VI II. III. IV. a d V. VI

PowerPoint Presentation

I. Backus-Naur BNF : N N 0 N N N N N N 0, 1 BNF N N 0 11 (parse tree) 11 (1) (2) (3) (4) II. 0(0 101)* (

£Ã¥×¥í¥°¥é¥ß¥ó¥°ÆþÌç (2018) - Â裵²ó ¨¡ À©¸æ¹½Â¤¡§¾ò·ïʬ´ô ¨¡

超初心者用

r07.dvi

ohp07.dvi

I. Backus-Naur BNF S + S S * S S x S +, *, x BNF S (parse tree) : * x + x x S * S x + S S S x x (1) * x x * x (2) * + x x x (3) + x * x + x x (4) * *

ディジタル信号処理

/* do-while */ #include <stdio.h> #include <math.h> int main(void) double val1, val2, arith_mean, geo_mean; printf( \n ); do printf( ); scanf( %lf, &v

ohp03.dvi

II ( ) prog8-1.c s1542h017%./prog8-1 1 => 35 Hiroshi 2 => 23 Koji 3 => 67 Satoshi 4 => 87 Junko 5 => 64 Ichiro 6 => 89 Mari 7 => 73 D

USB ID TA DUET 24:00 DUET XXX -YY.c ( ) XXX -YY.txt() XXX ID 3 YY ID 5 () #define StudentID 231

Microsoft PowerPoint - kougi9.ppt

gengo1-12

‚æ2›ñ C„¾„ê‡Ìš|

gengo1-12

1 1.1 C 2 1 double a[ ][ ]; 1 3x x3 ( ) malloc() 2 double *a[ ]; double 1 malloc() dou

数値計算

データ構造

Cプログラミング1(再) 第2回

lexex.dvi

C言語によるアルゴリズムとデータ構造

untitled

r03.dvi

計算機プログラミング

:30 12:00 I. I VI II. III. IV. a d V. VI

web07.dvi

Minimum C Minimum C Minimum C BNF T okenseq W hite Any D

I ASCII ( ) NUL 16 DLE SP P p 1 SOH 17 DC1! 1 A Q a q STX 2 18 DC2 " 2 B R b

18 C ( ) hello world.c 1 #include <stdio.h> 2 3 main() 4 { 5 printf("hello World\n"); 6 } [ ] [ ] #include <stdio.h> % cc hello_world.c %./a.o

program.dvi

slide4.pptx


1 1.1 C 2 1 double a[ ][ ]; 1 3x x3 ( ) malloc() malloc 2 #include <stdio.h> #include

ディジタル信号処理

joho07-1.ppt

Microsoft Word - 06

1. ファイルにアクセスするには ファイルにアクセスするには 1. ファイルを開く 2. アクセスする 3. ファイルを閉じるという手順を踏まなければなりません 1.1. ファイルを読み込む まずはファイルの内容を画面に表示させるプログラムを作りましょう 開始 FILE *fp char fname

C

Microsoft Word - Cプログラミング演習(10)

プログラミング基礎

1 return main() { main main C 1 戻り値の型 関数名 引数 関数ブロックをあらわす中括弧 main() 関数の定義 int main(void){ printf("hello World!!\n"); return 0; 戻り値 1: main() 2.2 C main

(K&R 2.9) ~, &,, >>, << 2. (K&R 5.7) 3. (K&R 5.9) 4. (K&R 5.10) (argc argv atoi(), atof() ) 5. (K&R 7.5) (K&R 7.6) - FILE, stdin, stdout, std

Microsoft Word - cpro_m_13.doc

02: 変数と標準入出力

gengo1-12

Java Java Java Java Java 4 p * *** ***** *** * Unix p a,b,c,d 100,200,250,500 a*b = a*b+c = a*b+c*d = (a+b)*(c+d) = 225

kiso2-06.key

目次

Microsoft PowerPoint - kougi4.ppt

演算増幅器

untitled

02: 変数と標準入出力

XMPによる並列化実装2

£Ã¥×¥í¥°¥é¥ß¥ó¥°(2018) - Âè11²ó – ½ÉÂꣲ¤Î²òÀ⡤±é½¬£² –

prog-text.dvi

II 3 yacc (2) 2005 : Yacc 0 ~nakai/ipp2 1 C main main 1 NULL NULL for 2 (a) Yacc 2 (b) 2 3 y

ex01.dvi

Java updated

数値計算

C言語入門

[ 1] 1 Hello World!! 1 #include <s t d i o. h> 2 3 int main ( ) { 4 5 p r i n t f ( H e l l o World!! \ n ) ; 6 7 return 0 ; 8 } 1:

untitled

橡Pro PDF

ex01.dvi

C¥×¥í¥°¥é¥ß¥ó¥° ÆþÌç

情報処理演習 B8クラス

Microsoft PowerPoint - C_Programming(3).pptx

PowerPoint Presentation

[1] #include<stdio.h> main() { printf("hello, world."); return 0; } (G1) int long int float ± ±

6 6.1 sound_wav_files flu00.wav.wav 44.1 khz 1/44100 spwave Text with Time spwave t T = N t N 44.1 khz t = 1 sec j t f j {f 0, f 1, f 2,, f N 1

memo

ex12.dvi

第7章 有限要素法のプログラミング

ゲームエンジンの構成要素

Transcription:

C 13 2 9

1 1-1. 1-2. 2 2-1. 2-2. 2-3. 2-4. 3 3-1. 3-2. 3-3. 3-4. 3-5. 3-5-1. 3-5-2. 3-6. 3-6-1. 3-6-2. 4 5 6 7-1 - 1

1 1-1. 1-2. ++ Lisp Pascal Java Purl HTML Windows - 2-2

2 2-1. 1972 D.M. (Dennis M Ritchie) PDP-11 UNIX UNIX UNIX ++ Java ++ Java OS Windows Windows 2-2. UNIX VI Emacs Windows WordPad (1) (2) (3) - 3-3

2-3. (variable) (function) 1 (statement) { } (type) (formal parameter) _ main( ) main( ) main( { } (library function) ANSI C (C Standard library) BASIC Pascal printf( ) printf( ) printf( ) - 4-4

printf( ) 2 (string) printf( ) printf( ) (argument).h #include (preprocessor directive) (preprocessor) #include stdio.h #include <stdio.h> stdio.h printf( ) #include #include [prog -1] [prog2-2] #include <stdio.h> int main( ) { printf( Hello!! n ); return 0; } Hello!! [prog 2-1] [prog 2- ] - 5-5

1 #include <stdio.h> printf( ) 2 int main( main( ) 3 6 { } 4 printf( ) printf( ) 5 return 0; main( ) ( ) a b 0 n t? [prog 2-3] #include <stdio.h> void main() { int a=2, b=1, c, d; printf( a=%d b=%d n,a,b); c= a + b; d= a - b; printf( =%d =%d n, c, d); } [prog 2-3] a=2 b= a b 2 c=a+b d=a-b a c d - 6-6

main( ) void int return void int a, b, c, d; int a,b,c,d (Integer) int a,b,c; printf() printf( a=%d b=%d n,a,b) % a,b %d % d 10 % f 10 % c % s (type) _ - 7-7

C char int long float int double float float double char 1 short 2 int long float double 2 8 int int int short int long - 8-8

2-4. double double sin( ) cos( ) tan( ) sin cos tan log( ) logn( ) exp( ) sqrt( x ) pow( x, y ) x x x y [prog 2-4] #include < stdio.h > #include < math.h > void main( ) { double x=3.1415 /4, y; y=sin(x); printf(" %f rad sin %f ", x, y); [prog 2-4] 2 #include <math.h> y = sqrt(x) y = sin(x) y = log(x) x y - 9-9

x [prog 2-5] [prog 2-4] #include < stdio.h > #include < math.h > #define PI 3.1415 void main( ) { double x, y; /* */ x = PI/4. ; /* */ y=sin(x); printf(" %f rad sin %f ", x, y); } [prog 2-4] 2 /* */ #define PI 3.1415 3.1415 3.1415-10 - 10

3 3-1. (1) (3) (1) (2) (3) 3-2. fopen( ) fopen( ) FILE *fopen( char *filename, char *mode); fopen( ) FILE ( stdio.h ) fopen( ) FILE fp fopen( ) - 11-11

fp = fopen( test, r ); r (NULL ) r+ + (NULL ) w w+ + a a+ + r w a r fopen r+ w+ a+ fclose( ) fclose( ) int fclose( FILE *fp ) ; fclose( ) fclose( ) 0-1 [prog 5-3] - 12-12

#include< stdio.h > #include< stdlib.h > void main( ) { char str[80] = n ; FILE *fp; char *p; } if(!(fp = fopen( test, w ))) // test {printf( n );exit(1);} p=str; // str while(*p) { } if(fputc(*p,fp)==-1) {printf( n );exit(1);} p++; fclose(fp); [prog 3-1] test test 3-3. 1 fopen [ ] FILE * fopen( char *,char * ); [ ] NULL - 13-13

fclose [ ] int fclose( FILE * ); [ ] fopen EOF(-1) [ ] fgets fclose( ) ; [ ] char *fgets( char *, int, FILE * ); [ ] 1 ' 0' -1 NULL(0) r fopen [ ] char str[80]; fgets( str,80,fp); fputs [ ] int fputs( char *,FILE * ); [ ] w a fopen [ ] fputs("abcdef",fp) ; fgetc [ ] int fgetc( FILE * ); [ ] EOF r fopen - 14-14

[ ] c = getc(fp); fputc [ ] int putc( int, FILE * ); [ ] w a fopen [ ] putc('a',fp); fscanf [ ] int fscanf( FILE *,char *, ); [ ] scanf scanf r fopen [ ] fscanf(fp,"%d",&dt); fprintf [ ] int( FILE *,char *, ) [ ] printf printf w a fopen [ ] fprintf(fp,"%8d n",dt); 3-4. (command-line argument) - 15-15

main( ) main( argc argv argc argc 1 argv argv char *argv[ ]; [ ] main( ) argv argv[0] argv[1] [prog 5-1] #include< stdio.h > int main( int argc, char *argv[ ] ) { for(int a=0;a<=3;a++) printf( %s,argv[a] ); return 0; } [prog 3-2] argv 4 com a, b, c, d, [prog 5-2] A>com a b c d com a b c [prog 3--3] d argv[0] - 16-16

3-5. 3-5-1. (1) (2) (3) (4) (5) (1) ( 100 ) (2) (3) - 17-17

(4) (5) ( 10 ) 3-5-2. main( ) stdio.h string.h strlib.h char names numbers int val 1: #include<string.h> //for strcmp,strstr 2: #include<stdlib.h> //for exit 3: #define MAX 100 //MAX100 4: char names[max][20]; // MAX100 20 5: char numbers[max][20]; // MAX100 20 6: int val; // 7: 8: int menu(); // 9: void enter(); // 10: void search(); // 11: void save(); // 12: void load(); // 13: void append(); // main( ) int choice menu( ) 19 32 switch do-while case 1 case 5 (1) (5) menu( ) case 6 main( ) 15: int main() 16: { 17: int choice; 18: 19: do 20: { - 18-18

21: choice = menu(); //menu() switch() 22: switch(choice) 23: { 24: case 1: enter();break; 25: case 2: save();break; 26: case 3: append();break; 27: case 4: load();break; 28: case 5: search();break; 29: case 6: 30: printf(" break; 31: } 32: } while(choice!=6); 33: return 0; 34: } ------ MENU --------- 1] 2] 3] 4] 5] 6] ------------------------------------- 1] 6] menu( ) int select 49 scanf( ) 40 48 50 51 1 6 1 6 menu( ) - 19-19

36: int menu() 37: { 38: int select; 39: 40: printf("-- MENU --------- n 41: printf("1] n 42: printf("2] n 43: printf("3] n 44: printf("4] n 45: printf("5] n 46: printf("6] n 47: printf("----------------------- n 48: printf(" 1] 6] 49: scanf("%d",&select); 50: if(!(select==1 select==2 select==3 select==4 select==5 select==6)) 51: {printf(" exit(1);} 52: return select; 53: } aaa ------ MENU --------- 1] 2] 3] 4] 5] 6] ------------------------------------- 1] 6] aaa enter( ) 57 68-20 - 20

100 63 Z enter( ) 67 68 100 enter( ) 55: void enter() 56: { 57: for(val=0;val<max;val++) 58: { 59: printf(" MAX=100 n 60: printf(" z n 61: printf(" 62: scanf("%s",names[val]); 63: if(strcmp(names[val],"z")==0 strcmp(names[val],"z")==0) break; 64: printf(" 65: scanf("%s",numbers[val]); 66: } 67: if(val>=max) 68: printf(" n 69: } enter( ) 1] 6] (MAX = 100 ) z yamada 0887-56-xxxx (MAX = 100 ) z save( ) FILE fp int i 98 99 100 101 enter( ) fprintf( 102-21 - 21

save( ) 93: void save() 94: { 95: FILE *fp; 96: int i; 97: 98: if(!(fp = fopen("p-file", "w"))) 99: {printf(" nexit(1);} 100: for(i=0; i<val; i++) 101: {fprintf(fp, "%-15s %5s n",names[i], numbers[i]);} 102: fclose(fp); 103: printf(" n 104: } save( ) 1] 6] append( ) save( ) 111 a append( ) 106: void append() 107: { 108: FILE *fp; 109: int i; 110: 111: if(!(fp = fopen("p-file", "a"))) 112: {printf(" nexit(1);} 113: for(i=0; i<val; i++) 114: {fprintf(fp, "%-15s %5s n",names[i], numbers[i]);} 115: fclose(fp); 116: printf(" n 117: } - 22-22

append( ) 1] 6] 3 load( ) FILE val fp 124 125 128 132 fscanf( ) 133 load( ) 119: void load() 120: { 121: FILE *fp; 122: val=0; 123: 124: if(!(fp = fopen("p-file", "r"))) 125: {printf(" nexit(1);} 126: printf(" n 127: printf("------------------------- n 128: while(fscanf(fp, "%s%s", names[val], numbers[val])!=-1) 129: { 130: printf("%-15s%5s n",names[val], numbers[val]); 131: val++; 132: } 133: fclose(fp); 134: } load( ) 1] 6] 4 ---------------------------------------------- yamada tanaka kimura 0887-56-xxxx 0887-53-yyyy 0887-58-zzzz - 23-23

search( ) FILE fp char word int i a 78 79 80 82 scanf( ) 83 87 while fscanf( ) while { } strstr( ) i 1 i 0 89 printf( ) 90 search( ) 71: void search() 72: { 73: FILE *fp; 74: char word[10]; 75: int i=0; 76: val=0; 77: 78: if(!(fp = fopen("p-file", "r"))) 79: {printf(" nexit(1);} 80: printf(" n 81: printf(" 10 82: scanf("%s",&word); 83: while(fscanf(fp, "%s%s", names[val], numbers[val])!=-1) 84: { 85: if(strstr(names[val],word) strstr(numbers[val],word)) 86: {printf("%-10s%5s n",names[val],numbers[val]);i=1;} 87: } 88: if(i==0) 89: printf(" n 90: fclose(fp); 91: } search( ) - 24-24

1] 6] 5 (10 ) yamada yamada 0887-56-xxxx 6 1] 6] 6 3-6. 3-6-1. - 25-25

(1) (2) (3) (4) (5) (6) (7) (8) (1) (2) (3) (4) (1 ) (5) (6) (7) (8) - 26-26

3-6-2. main( ) stdio.h strlib.h ctype.h conio,h CTRL_Z ASCII 26 1: #include<string.h> 2: #include<stdlib.h> // for exit 3: #include<ctype.h> 4: #include<conio.h> // for getche 5: #define CTRL_Z 26 // CTRL_Z ASCII 26 8 int select 10 47 if 49 69 else scanf( ) 68 340 switch scanf( ) case 1 case 8 (1) (8) case 9 338 default 1 9 6: int main(int ac,char *av[]) 7: { 8: int select; 9: /************** ( ) **************/ 10: if(ac==1) 11: { 12: printf(" 13: printf(" n 14: printf("---- 15: printf(" MENU 16: printf("-------------------------------------- 17: printf("------------------------- n 18: printf(" 19: printf("[ ] < >_< > n 20: printf(" n - 27-27

21: printf(" 22: printf("[ ] < >_< > n 23: printf(" n 24: printf(" 25: printf("[ ] < >_< > n 26: printf(" n 27: printf(" 28: printf("[ ] < >_< > n 29: printf(" 1 n 30: printf(" 31: printf("[ ] < >_< >_< > n 32: printf(" 33: printf(" n 34: printf(" 35: printf("[ ] < >_< >_< > n 36: printf(" 37: printf(" n 38: printf(" 39: printf("[ ] < >_< >_< 2> n 40: printf(" 41: printf(" n 42: printf(" 43: printf("[ ] < >_< > n 44: printf(" n 45: printf("--------------------------------------- 46: printf("---------------------------------------- n 47: } 48: /************** ( ) **************/ 49: else 50: { 51: printf("---- 52: printf(" MENU 53: printf("-------------------------------------- 54: printf("------------------------- n 55: printf("1) n 56: printf("2) n 57: printf("3) n - 28-28

58: printf("4) n 59: printf("5] n 60: printf("6] n 61: printf("7] n 62: printf("8] n 63: printf("9] n 64: printf("-------------------------------------- 65: printf("----------------------------------------- n 66: printf(" 1] 9] 67: scanf("%d",&select); 68: switch(select) 69: { (ac==1) ---- MENU -------------------------------------------------------------------------------------------- [ ] < >_< > [ ] < >_< > [ ] < >_< > [ ] < >_< > 1 [ ] < >_< >_< > [ ] < >_< >_< > [ ] < >_< >_< 2> [ ] < >_< > ----------------------------------------------------------------------------------------------------------------------- - 29-29

(!(ac==1)) ---- MENU ----------------------------------------------------- 1] 2] 3] 4] 5] 6] 7] 8] 9] ------------------------------------------------------------------------------- 1] 9] case 1 FILE fp1 char ch1 75 77 78 80 81 90 109 getchar( ) 110 116 117 119 case 1 70: /***************** case 1 ******************/ 71: case 1: 72: FILE *fp1; 73: char ch1; 74: 75: if(!(ac==2)) 76: {printf("error01 [ ] < >_< > 77: exit(1);} 78: if(!(fp1=fopen(av[1],"w"))) 79: {printf("error01 80: exit(1);} - 30-30

81: printf(" n 82: printf(" Ctrl + z n 83: getchar(); // 84: while((ch1=getche())!=ctrl_z) 85: { 86: fputc(ch1,fp1); 87: if(ferror(fp1)) 88: {printf("error01 nfclose(fp1); 89: exit(1);} 90: } 91: if(fclose(fp1)==-1) 92: {printf("error01 n 93: exit(1);} 94: printf(" n %s ",av[1]); 95: break; case 1 1] 9] CTRL + z Hello!! case 2 case 1 case 2 96: /****************** case 2 *****************/ 97: case 2: 98: FILE *fp2; 99: char ch2; 100: 101: if(!(ac==2)) 102: {printf("error02 [ ] < >_< > n 103: exit(1);} - 31-31

104: if(!(fp2=fopen(av[1],"a"))) 105: {printf("error02 n 106: exit(1);} 107: printf(" n 108: printf(" Ctrl + z n 109: getchar(); // 110: while((ch2=getche())!=ctrl_z) 111: { 112: fputc(ch2,fp2); 113: if(ferror(fp2)) 114: {printf("error02 nfclose(fp2); 115: exit(1);} 116: } 117: if(fclose(fp2)==-1) 118: {printf("error02 n 119: exit(1);} 120: printf(" n %s ",av[1]); 121: break; case 2 1] 9] 2 CTRL + z Everyone!! case 3 FILE fp3 char ch3 127 129 130 132 133 139 140 142 134 139 for { } fgetc(fp3) fp3 putchar(ch3) - 32-32

140 142 case 3 122: /******************* case 3 ********************/ 123: case 3: 124: FILE *fp3; 125: char ch3; 126: 127: if(!(ac==2)) 128: {printf("error03 [ ] < >_< > n 129: exit(1);} 130: if(!(fp3=fopen(av[1],"r"))) 131: {printf("error03 n 132: exit(1);} 133: printf(" %s n",av[1]); 134: for(;;) // 135: { 136: ch3=fgetc(fp3); 137: if(ch3==-1)break; 138: putchar(ch3); 139: } 140: if(fclose(fp3)==-1) 141: {printf("error03 142: exit(1);} 143: break; case 3 1] 9] 3 Hello!! Everyone!! case 4 FILE fp4 char ch4 149 151-33 - 33

152 154 155 161 155 161 while while ((ch4=fgetc(fp4))!=-1) fp4 ch4 av[2] ch4 av[2] 161 printf( ) case 4 144: /******************* case 4 ******************/ 145: case 4: 146: FILE *fp4; 147: char ch4; 148: 149: if(!(ac==3)) 150: {printf("error04 [ ] < >_< > 151: exit(1);} 152: if(!(fp4=fopen(av[1],"r"))) 153: {printf("error04 154: exit(1);} 155: while((ch4=fgetc(fp4))!=-1) // fp4 av[2] 156: { 157: if(ch4==*av[2]) 158: {printf(" %s ",av[1],av[2]); 159: exit(1);} 160: } 161: printf(" %s ",av[1],av[2]); 162: if(fclose(fp4)==-1) 163: {printf("error04 164: exit(1);} 165: break; e case 4 1] 9] 4 e - 34-34

case 5 FILE fp5a fp5b char ch5 171 173 174 179 180 feof( ) feof(fp5a) fp5a feof( ) while(!feof(fp5a)) ch5=fgetc(fp5a) feof ) 180 191 1 2 192 197 198 printf( ) case 5 166: /******************** case 5 *********************/ 167: case 5: 168: FILE *fp5a, *fp5b; 169: char ch5; 170: 171: if(!(ac==3)) 172: {printf("error05 [ ] < >_< >_< > 173: exit(1);} 174: if((fp5a=fopen(av[1],"r"))==0) 175: {printf("error05 176: exit(1);} 177: if((fp5b=fopen(av[2],"w"))==0) 178: {printf("error05 179: exit(1);} 180: while(!feof(fp5a)) // 181: { 182: ch5=fgetc(fp5a); 183: if(ferror(fp5a)) 184: {printf("error05 185: exit(1);} 186: if(!feof(fp5a)) 187: fputc(ch5,fp5b); 188: if(ferror(fp5b)) 189: {printf("error05-35 - 35

190: exit(1);} 191: } 192: if(fclose(fp5a)==-1) 193: {printf("error05 194: exit(1);} 195: if(fclose(fp5b)==-1) 196: {printf("error05 197: exit(1);} 198: printf(" %s %s ",av[1],av[2]); 199: break; A B case 5 1] 9] 5 A B case 6 FILE fp6a fp6b int bite char ch6 206 208 209 214 fseek( ) fseek(fp6a, 0, SEEK_END) fp6a ( ) 216 bite=ftell(fp6a) fp6a 217 bite 218 230 while bite ( ) 1 2 while{ } fseek( ) fseek(fp6a,bite, SEEK_SET) fp6a bite fgetc( ) fp6a fputc( ) fp6b 231 236 237 printf( ) case 6-36 - 36

200: /******************** case 6 *******************/ 201: case 6: 202: int bite; 203: char ch6; 204: FILE *fp6a, *fp6b; 205: 206: if(!(ac==3)) 207: {printf("error06 [ ] < >_< >_< > 208: exit(1);} 209: if(!(fp6a=fopen(av[1], "r"))) 210: {printf("error06 211: exit(1);} 212: if(!(fp6b=fopen(av[2], "w"))) 213: {printf("error06 214: exit(1);} 215: fseek(fp6a, 0, SEEK_END); //fp6a 216: bite=ftell(fp6a); 217: bite=bite-1; 218: while(bite>= 0) // fp6a fp6b 219: { 220: fseek(fp6a, bite, SEEK_SET); 221: ch6=fgetc(fp6a); 222: if(ferror(fp6a)) 223: {printf("error06 224: exit(1);} 225: fputc(ch6,fp6b); 226: if(ferror(fp6b)) 227: {printf("error06 228: exit(1);} 229: bite--; 230: } 231: if(fclose(fp6a)==-1) 232: {printf("error06 233: exit(1);} 234: if(fclose(fp6b)==-1) 235: {printf("error06-37 - 37

236: exit(1);} 237: printf(" %s ",av[1],av[2]); 238: break; A B case 6 1] 9] 6 A B case 7 FILE fp7a fp7b fp7temp char ch7 244 246 247 255 256 266 1 feof( ) fgetc( ) while(!feof(fp7a)) ch5=fgetc(fp7a) feof( ) fputc( ) if(!feof(fp7a))fputc(ch7,fp7temp) p7temp ferror( ) 2 2 316 printf( ) case 7 239: /********************* case 7 **********************/ 240: case 7: 241: FILE *fp7a, *fp7b, *fp7temp; 242: char ch7; 243: 244: if(!(ac==3)) 245: {printf("error07 [ ] < >_< 1>_< 2> 246: exit(1);} 247: if(!(fp7a=fopen(av[1], "r"))) 248: {printf("error07 1 249: exit(1);} - 38-38

250: if(!(fp7b=fopen(av[2],"r"))) 251: {printf("error07 2 252: exit(1);} 253: if(!(fp7temp=fopen("temp", "w"))) 254: {printf("error07 255: exit(1);} 256: while(!feof(fp7a)) // fp7a fp7temp 257: { 258: ch7=fgetc(fp7a); 259: if(ferror(fp7a)) 260: {printf("error07 261: exit(1);} 262: if(!feof(fp7a))fputc(ch7,fp7temp); 263: if(ferror(fp7temp)) 264: {printf("error07 265: exit(1);} 266: } 267: if(fclose(fp7a)==-1) 268: {printf("error07 269: exit(1);} 270: if(!(fp7a=fopen(av[1], "w"))) 271: {printf("error07 1 272: exit(1);} 273: while(!feof(fp7b)) // fp7b fp7a 274: { 275: ch7=fgetc(fp7b); 276: if(ferror(fp7b)) 277: {printf("error07 278: exit(1);} 279: if(!feof(fp7b)) fputc(ch7,fp7a); 280: if(ferror(fp7a)) 281: {printf("error07 282: exit(1);} 283: } 284: if(fclose(fp7b)==-1) 285: {printf("error07-39 - 39

286: exit(1);} 287: if(fclose(fp7temp)==-1) 288: {printf("error07 289: exit(1);} 290: if(!(fp7b=fopen(av[2], "w"))) 291: {printf("error07 2 292: exit(1);} 293: if(!(fp7temp=fopen("temp", "r"))) 294: {printf("error07 295: exit(1);} 296: while(!feof(fp7temp)) // fp7temp fp7b 297: { 298: ch7=fgetc(fp7temp); 299: if(ferror(fp7temp)) 300: {printf("error07 301: exit(1);} 302: if(!feof(fp7temp)) fputc(ch7, fp7b); 303: if(ferror(fp7b)) 304: {printf("error07 305: exit(1);} 306: } 307: if(fclose(fp7a)==-1) 308: {printf("error07 309: exit(1);} 310: if(fclose(fp7b)==-1) 311: {printf("error07 312: exit(1);} 313: if(fclose(fp7temp)==-1) 314: {printf("error07 315: exit(1);} 316: printf(" %s %s ",av[1],av[2]); 317: break; A B case 7-40 - 40

1] 9] 7 A B case 8 char x 321 323 324 332 scanf( ) Yes /No Yes 326 toupper( ) if(toupper(getchar( ))=='Y') Y y 328 remove( ) remove(av[1]) av[1] Yes /No Y case 8 318: /********************* case 8 ***********************/ 319: case 8: 320: char x; 321: if(!(ac==2)) 322: {printf("error08 [ ] < >_< > 323: exit(1);} 324: printf(" ( es Y/No Y ) 325: scanf("%c",&x); 326: if(toupper(getchar())=='y') 327: { 328: remove(av[1]); 329: printf(" %s ",av[1]); 330: } 331: else 332: printf(" 333: break; case 8-41 - 41

1] 9] 8 (Yes Y/No Y ) Y case 9 334: /*************************** case9 ****************************/ 335: case 9: 336: printf(" 337: break; 338: default: 339: printf(" 340: } 341: } 342: return 0; 343: } - 42-42

4 if (ac==1) else (!(ac==1)) 5 (1) (2) (1) (2) Ctrl C ++ Visual C++ Java - 43-43

6 7 [ ] C ( ) Herbert Schildt SE C ( ) Steve Oualline ( ) - 44-44