Доброго времени суток! Программа ищет симметричные слова. Не могу написать Strtok. Нужна помощь!
| Код | #include <stdio.h>
int SimSlovo( char *Slovo);//prototip int strlen(char *s); char *strtk(char *s,char *fed);
int strlen(char *s) { int n=0; while (s[n]) n++; return n; }
char *strtk(char *s) {
while(*s) { if(*s!=' ') { return ; } } }
int SimSlovo( char* Slovo)//function { int i=0,j=0; j=strlen(Slovo)-1; //prisvoenie indeksa poslednei bukvi for (i=0;i<=j;i++,j--) //chitaem slovo s dvuh storon { //do vstrechi if (Slovo[i]!=Slovo[j]) return 1; //ne ravno znachit 0 } return 0;//ravno 1 }
int main() { char *input;//stroka sodergachaia simvoli char *deltel=" ,"; //simvol ogranichiteli char strok[1000]; char edel; int len; int pos; input=strok; gets(strok); len=strlen(input); //opredeliaem dlinu stroki (eto budet konec stroki) pos=0; //nachalo stroki
while(len>pos) { input = strtk(input);//nahodim simvol ' ,' v input pos=pos+strlen(input)+1; //i berem ukazatel na sleduiuschii simvol //pozicia zaverscheniia printf(input); if(*input ) //esli v stroke schtoto esti { if ( SimSlovo(input)==1) //poluchaem resultat function { printf(" "); printf(input); //vivodim naidenii } input+=strlen(input)+1; /*perehodim k sleduiuchemu slovu i zaverschaem proverku prediduchego */ } } return 0; }
|
|