🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

Q&A

5回答

686閲覧

Scanfを使った出力方法について

Sinzaki

総合スコア4

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

0グッド

0クリップ

投稿2019/11/27 13:41

編集2019/11/27 13:56

例えばScanfで abcdと入力して
出力は
a
b
c
d
と一文字ずつ縦に出力するにはどうすればいいんでしょうかる
例としてプログラミングを書いてくださると助かります

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答5

0

プログラミング言語の指定が無かったのでRuby 2.7(現在preview版のみ、正式リリースはクリスマスの予定)で書きました。(2.6以下では動作しません)

Ruby

1require 'scanf' 2scanf('%s').first.each_char(&self.:puts)

実行例

投稿2019/11/27 14:27

raccy

総合スコア21737

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

1文字出力して、改行を出力して、
というのを、文字列の末尾まで繰り返します。

投稿2019/11/27 13:54

otn

総合スコア85893

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

入力した文字列を一文字づつ分解して順番に出力すればいいです

投稿2019/11/27 13:44

y_waiwai

総合スコア88038

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

「文字ずつ縦に出力する」には一文字ずつ改行コードを出力すればいいです。

C

1$ # ソースの表示 2$ cat main.c 3#include <stdio.h> 4int main(void){ 5 char str[]="abcd"; // scanf()で入力した結果の文字列。 6 7 /* 4文字を1文字ずつ改行付きで表示する 8 ( 文字列長を可変にする場合は1文字ずつループしてください。 ) */ 9 printf("%c\n%c\n%c\n%c\n",str[0] ,str[1] ,str[2] ,str[3]); 10 11 return 0; 12} 13 14$ # コンパイル 15$ gcc main.c 16$ 17$ # 実行 18$ ./a.out 19a 20b 21c 22d 23$

投稿2019/11/28 01:06

Y.H.

総合スコア7918

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

scanfでの入力先は1つのバッファになるので、あとはそこから1文字ずつ抽出して出力すればいいだけかる。
ループで回してもよいかるし、便利なメソッドや関数があるなら使ってもよいかる。
まずは言語を特定するところからやってみるかる。
.

投稿2019/11/28 00:30

編集2019/11/28 00:38
ttyp03

総合スコア17000

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問