- ベストアンサー
C言語の文字列の長さを計算し表示する方法について。
#include <stdio.h> main( void ) { int i; char str[128]; printf("一行の英文を入力してください → "); scanf("%s",str); i = 0; while (str[i] != '\0'){ i++; } printf("あなたの入力した一行の英文は<%s>で、文字数は%dです。\n", str, i); } って方法で文字列の長さを計算しひょうじしてるのですが…。 これだと1単語しか数えられません。 どうしたら1行の長さを表示できるのでしょうか? nullや改行・空白についてがイマイチわかりません。 補足で質問もしようと思いますので付き合ってくれる方がいらっしゃいましたら連絡ください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (2)
- honiyon
- ベストアンサー率37% (331/872)
回答No.2
- yusuke5111
- ベストアンサー率16% (9/55)
回答No.1
関連するQ&A
このQ&Aのポイント
- Lucina AX-09のドライバーを探しています。現在使用中PCはmacOS 14.3.1です。
- Lucina AX-09のドライバーを探しています。使用中のPCはmacOS 14.3.1です。
- Lucina AX-09のドライバーを探しています。現在の環境はmacOS 14.3.1です。
補足
#include <stdio.h> main( void ) { int i, j, t, flg; char str[128]; printf("一行の英文を入力してください → "); gets(str); i = 0; flg=j=0; while (str[i] != '\0'){ if(str[i] != ' '){ if(flg==0){ j++; } flg=1; }else{ flg=0; } i++; } printf("あなたの入力した一行の英文は<%s>で、文字数は%dで単語数は%dです。\n", str, i, j); } ↑上記のような感じでできました。 ありがとうございまず。 みなさまのおかげで理解することが出来ました。 またわからないことがあればお世話になるかもしれませんが、その時はよろしくお願いします。