C 言語で文字列を入力して文字数を数える方法
C言語では、文字(キャラ)配列を使用して文字列を格納および操作できます。文字列を入力するには scanf 関数を使用でき、文字列の長さ(つまり文字の数)は strlen 関数を使用してカウントできます。
以下にサンプルコードを示します。
#include <stdio.h>
#include <string.h>
int main() {
char str[100]; // 定义字符数组来存储字符串
printf("请输入一个字符串:");
scanf("%s", str); // 输入字符串
int count = strlen(str); // 统计字符串的长度(字符个数)
printf("字符串的长度为:%d\n", count);
return 0;
}
上のコードでは、まず文字配列strが100の大きさで定義され、入力された文字列を格納する。次にscanf関数で文字列の入力が行われ、%sは文字列として入力することを表す。続いてstrlen関数で文字列の長さ”が数えられ、それが変数countに格納される。最後にprintf関数で文字列の長さを表示する。
注意、strlen(ストラレン)関数は文字列の長さをカウントするのみで、文字列の終端に位置するヌル文字はカウントしません。文字列の数をカウントしたい場合、例えばヌル文字を含む、sizeof演算子を使用して文字配列の大きさなどを計算します。
int count = sizeof(str) - 1; // 统计字符的个数(包括空字符)