include stdio h include string h int main
- Slides: 42
例題2.文字列のコピー #include <stdio. h> #include <string. h> int main() { char s 1[80], s 2[80]; printf("s 1="); scanf("%s", s 1); strcpy(s 2, s 1); printf("s 1=%s, s 2=%sn", s 1, s 2); return 0; } 17
例題3.文字列の連結 #include <stdio. h> #include <string. h> int main() { char s 1[80], s 2[80]; printf("s 1="); scanf("%s", s 1); printf("s 2="); scanf("%s", s 2); strcat(s 1, s 2); printf("s 1=%s, s 2=%sn", s 1, s 2); return 0; } 20
#include <stdio. h> #include <string. h> int main() { char s 1[80], s 2[80]; int n; printf("s 1="); scanf("%s", s 1); printf("s 2="); scanf("%s", s 2); n = strcmp(s 1, s 2); if ( n < 0 ) { printf( "%s<%sn", s 1, s 2 ); } else if ( n == 0 ) { printf( "%s==%sn", s 1, s 2 ); } else if ( n > 0 ) { printf( "%s>%sn", s 1, s 2 ); } return 0; } 23
文字列の比較 実行結果の例(1) s 1=configure s 2=control configure<control 実行結果の例(2) s 1=happy s 2=angry happy>angry 実行結果の例(3) s 1=give s 2=give==give 24
文字列の検索 #include <stdio. h> #include <string. h> int main() NULLの意味 { strstr関数では,検索 char name[80], base[80]; 文字列が見つからない char *p, *search; ことを意味する printf("name="); scanf("%s", name); search = name; while( ( p = strstr(search, "\") ) != NULL ) { search = p + 1; } strcpy( base, search ); printf("name=%s, base=%sn", name, base); return 0; 26 }
文字列の検索 実行結果の例 name=a: testfile. txt, base=file. txt 27
#include <stdio. h> 「%p」はメモリアドレス #include <string. h> void printstring( char* sの表示 ) 「&」はメモリアドレス { の取得 int i; for (i=0; i<strlen(s); i++) { printf("address(%c) = %pn", s[i], &s[i]); } return; } 「s[i]」は i 番目の文字 int main() という意味 { char x[100]; printf("string="); 「%c」は1文字の表示 scanf("%s", x); printstring(x); return 0; } 30
関数呼び出しの流れ main 関数 int main() 関数呼び出し printstring(x); printstring 関数 void printstring( char* s ) 戻り return 31
文字列のメモリアドレス 実行結果の例 表示された メモリアドレス address(C) = ffbef 440 address(o) = ffbef 441 address(m) = ffbef 442 address(p) = ffbef 443 address(u) = ffbef 444 address(t) = ffbef 445 address(e) = ffbef 446 address(r) = ffbef 447 32
プログラムとデータ メモリ x[0] x[1] x[2] x[3] x[4] x[5] x[6] x[7] x[8] C o m p u t e r ffbef 441 ffbef 442 ffbef 443 ffbef 444 ffbef 445 ffbef 446 ffbef 447 「文字列の末尾」を 表す特別な文字 (scanf の実行で,自 動的にセットされる) 33
曜日の表示 #include <stdio. h> void print_youbi( int youbi ) { char x[7][4] = {"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" }; printf( "%sn", x[youbi]); return; } int main() { int n; printf("youbi="); scanf("%d", &n); print_youbi( n ); return 0; } 38
関数呼び出しの流れ main 関数 int main() 関数呼び出し print_youbi(n); print_youbi 関数 void print_youbi( int youbi ) 戻り return 40
プログラムとデータ メモリ printf( "%s", x[youbi]); S M T W T F S u o u e h r a n n e d u i t 41
- #include string.h
- #include stdio.h #include stdlib.h #include string.h
- Include stdlib h
- Fpos_t
- Int sum(int a int n) int sum=0 i
- 저장 유형 지정자
- 쉽게 풀어쓴 c언어 express
- #include stdio.h int main()
- #include stdio.h #include conio.h #include stdlib.h
- Public void drawsquare(int x, int y, int len)
- Interface calculator public int add(int a int b)
- Divideint
- Int max(int x int y)
- Const int size=18; string *tbl2 = new string[size];
- Http protocol description
- Include stdlib.h
- Mainint
- Int main int argc char argv
- Int main int num 4
- #include stdio.h void main()
- #include stdio.h void main()
- #include stdio.h void main()
- #include stdio.h void main()
- #include stdio.h void main()
- Namespace string
- C++ include iostream
- #include iostream #include string using namespace std
- #include iostream int main()
- 윤년 계산