私は、文字、単語、行をCの段落を標準入力から数えようとしています。文字、単語、行Cの段落を集める
何かが動作していないと私はなぜわからない。
#include <stdio.h>
int main(int argc, char const *argv[])
{
int pCount=0, parCount=0, cCount=0, lCount=0;
double prom=0;
char c;
int newln_cnt=0;
while ((c=getchar())!=EOF){
cCount++;
switch (c)
{
case '\n':
newln_cnt++;
lCount++;
if (newln_cnt == 2)
{
parCount++;
newln_cnt = 0;
}
break;
case ' ':
pCount++;
break;
}
}
prom = (cCount/pCount);
printf("Total caracteres: %d \n", cCount);
printf("Cantidad palabras: %d \n", pCount);
printf("Cantidad líneas: %d \n", lCount);
printf("Cantidad párrafos: %d \n", parCount);
printf("Promedio longitud palabra: %f \n", prom);
return 0;
}
これは、文字(あまり表示されません)とちょっと違います。残りはすべて悪いです。
入力:
Oid, mortales, el grito sagrado: "Libertad, libertad, libertad!" Oid el ruido de rotas cadenas, ved en trono a la noble igualdad. Ya su trono dignisimo abrieron las Provincias Unidas del Sud y los libres del mundo responden: "Al gran pueblo argentino, salud! Al gran pueblo argentino, salud!" Y los libres del mundo responden: "Al gran pueblo argentino, salud!" Sean eternos los laureles que supimos conseguir, que supimos conseguir. Coronados de gloria vivamos... o juremos con gloria morir!, o juremos con gloria morir!, o juremos con gloria morir!
期待出力リレー:
Total caracteres: 558
Cantidad palabras: 87
Cantidad líneas: 25
Cantidad párrafos: 8
Promedio longitud palabra: 4.966
私の出力に含ま:プログラムは、文字、単語、行や段落の数をカウント
Total caracteres: 557
Cantidad palabras: 69
Cantidad líneas: 24
Cantidad párrafos: 12
Promedio longitud palabra: 8.000
(2人の共同nsecutive '\ n')。平均単語長。
を 'char型のC;' 'int型のCでなければなりません;'。 –
あなたは 'cCount'をインクリメントしません。 'pCount'は実際には単語の数と全く同じではないスペースの数です。スペースを入れずに3行を入力すると、 'pcount'はどうなるでしょうか? –
あなたの質問にはいくつかの進歩がありますが、入力サンプルはデバッグには余りにも長すぎます。 –