Войти

Показать полную графическую версию : Функция


pashazt
22-12-2012, 23:58
Вот функция которая выводит на экран слова, которые имеют непарное количество согласных букв.

void print2(const char *b, const char *e)
{
int cnt=0;
for( const char* p = b; p != e; p++ )
if (!(( *p=='a' || *p=='o' || *p=='e' || *p=='u' || *p=='y' || *p=='i')||
( *p=='A' || *p=='O' || *p=='E' || *p=='U' || *p=='Y' || *p=='I')))
cnt++;

if(cnt%2==1)
{

for( const char* p = b; p != e; p++ )
putch( *p );
printf("\n");

}
}

Допишите ее так, что бы она удаляла эти слова из файла.

ferget
23-12-2012, 00:33
Очень странная функция
Как ее вызывать?

pashazt
23-12-2012, 00:50
та неважно как ее вызывать, помоги с удалением.

ferget
23-12-2012, 01:35
что-то вроде этого

#include <stdio.h>
#include <stdlib.h>

bool print2(const char *b, const char *e)
{
int cnt=0;
for( const char* p = b; p != e; p++ )
if (!(( *p=='a' || *p=='o' || *p=='e' || *p=='u' || *p=='y' || *p=='i')||
( *p=='A' || *p=='O' || *p=='E' || *p=='U' || *p=='Y' || *p=='I')))
cnt++;

if(cnt%2==1)
return false;
else
return true;
}


int main()
{

char s[80];
FILE *file;

file = fopen("input.txt","r");
if(!file)
{
printf("File don't open\n");
exit(-1);
}

file2 = fopen("output.txt","w");
if(!file2)
{
printf("File don't open\n");
exit(-1);
}

while(!feof(file))
{
fscanf(file,"%s", &s);

if(print2(что тут писать не понятно))
{
fprintf(file2, "%s ", s);
}
else
{
fprintf(file2, "%s ", " ");
}
}

fclose(file);
fclose(file2);
return 0;
}




© OSzone.net 2001-2012