No retezec jsem naplnil uz pri deklaraci
char text[] = "cat dog hen duck goat pig horse sheep cow lion tiger wolf fox elephant hippo owl eagle sparrow swallow"
Příspěvky odeslané z IP adresy 93.91.49.–
No jestli to chápu srávně, tak na konci retezce je \0 a tudíž by při podmínce while (text[n]=='\0') měl vyklus probíhat dokud nenarazí na konec retezce.
Zdravim, dostal jsem za ukol z prideleneho retezce najit celkovy pocet slov a pak vypsat cetnosti slov podle poctu znaku + jako bombonek udelat velke prvni pismeno u kazdeho slova. V algoritmu chybu najít nemohu, ale z nejakeho kouzlneho duvodu mi cyklus s podminkou na konci probehne pouze 1x i když podmínk nemuže splnit. a také nesmímpoužívat knihovnu string.h, děkuju
#include "stdafx.h"
#include "stdio.h"
int main( void)
{
char text[] = "cat dog hen duck goat pig horse sheep cow lion tiger wolf fox elephant hippo owl eagle sparrow swallow",*u; // animal words separated by spaces
int words=1; // total number of words
int nchar[10]={0,0,0,0,0,0,0,0,0,0}; // array for counting of word with given number of characters
int m=0; // counter for number of characters in word
int n=0;
char c;
text[0] -=32;
do
{
if (text[n]==' ')
text[n+1] -=32;
if (text[n]!=' ')
{
printf("%c", text[n]);
n++;
m++;
}
else
{
nchar[m-1]++;
m=0;
printf("\n");
words++;
n++;
}
}
while (text[n]=='\0');
printf("\n\nPocet slov celkem: %d\n", words);
for(m=0; m<10; m++)
{
if(nchar[m]!=0)
printf("\nCetnost slov s %d pismeny je %d",m+1,nchar[m]);
}
scanf("%c",&c); // waiting for pressing key
return 0; // program returns 0
}