1 / 5

問題 1

問題 1. scanf() を用いて 2 つの文字列を読み込み、次の文字列操作を行うプログラム。. 1) str1, str2 の長さを表示。 2) str1 と str2 を連結した文字列を表示、その長さも表示。 3) str1 に str2 をコピーした結果を表示、その長さも表示。. 文字列操作の関数を使わないプログラムと、使うプログラムの 2 通りつくれ。. % ./a.out 第 1 文字列を入力: kako 第 2 文字列を入力: fujio 第 1 文字列 kako の長さは 4

Download Presentation

問題 1

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 問題 1 scanf() を用いて 2 つの文字列を読み込み、次の文字列操作を行うプログラム。 1) str1, str2 の長さを表示。 2) str1 と str2 を連結した文字列を表示、その長さも表示。 3) str1 に str2 をコピーした結果を表示、その長さも表示。 文字列操作の関数を使わないプログラムと、使うプログラムの 2 通りつくれ。 % ./a.out 第 1 文字列を入力:kako 第 2 文字列を入力:fujio 第 1 文字列 kako の長さは 4 第 2 文字列 fujio の長さは 5 連結した文字列は kakofujioで長さは9 コピーした結果は kakoで長さは4 % この色はプログラムによる出力。

  2. 問題 2 入力した文字列を逆順に出力するプログラム。 % ./a.out 文字列を入力:kako kakoを逆順にするとokakです。 % この色はプログラムによる出力。

  3. 問題 3 入力した文字列を一文字ずつ回転させて出力するプログラム。 文字の長さ+1に等しい回数回転させて出力する。 % ./a.out 文字列を入力:Hello Hello elloH lloHe loHel oHell Hello % 5文字なので、6行出力する。 この色はプログラムによる出力。

  4. 問題 4 自然数を 10 進数表記で入力し、これを 2 進数表記で出力するプログラム % ./a.out 自然数を 10 進数で入力: 25 2 進数表記は: 11001 % この色はプログラムによる出力。 二進数で表示するには、2で割って余りを求めていく。 例えば、25であれば、  25÷2= 12 余り 1  12÷2=  6 余り 0    6÷2=  3 余り 0    3÷2=  1 余り 1 1÷2=  0 余り 1 この結果を逆に並べて 11001 が25の2進標記になる。 最初に計算して得られた余りを最後に表示する必要が あるので、配列を用意して置いて、それに保存する。

  5. 問題 5 自然数を 10 進数表記で入力し、これを 16 進数表記で出力するプログラム。 一旦、文字列の配列に16進数標記した文字を代入しておき、それを出力する。 変換指定 %X を使ったものと比較すること。 % ./a.out 自然数を 10 進数で入力: 25 16 進数表記は: 19 % ./a.out 自然数を 10 進数で入力: 90 16 進数表記は: 5A この色はプログラムによる出力。 printf("%X\n", data); 整数値 data を16 進数で出力 25 = 1*16 + 9*1 だから 16 進数表記は 19 ヒント 90 = 5*16 + 10*1 だから 16 進数表記は 5A

More Related