V
vellasha
Здравствуйте, код С++. Нужно в каждой строке текстового файла удалить самое короткое слово. Помогите пожалуйста, не знаю, как это построчно сделать, да и найти это короткое слово не получается. Вот, набросала только неправильно:
C++:
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void DeleteSl(char *A)
{
int kb=0; int minkb=2999; int p=0;
for(int i=0;i<strlen(A);i++)
{ if (A[i]==' ')
{ if (minkb>kb) { minkb=kb; p=i; }
int kb=0;
while (A[i+2]!=' ')
{ kb=kb+1;
i++;
}
}
}
for(int j=p;j!=' ';j++)
A[j]=' ';
}
void txtfile(char *A)
{
FILE *f;
int i=0;
f=fopen("text.txt", "r");
fgets(A, 3000, f);
fclose(f);
}
void txtprint(char *A)
{for(int i=0;i<strlen(A);i++)
{
printf("%c", A[i]);
}
printf("\n");
}
int main()
{
char A[3000];
txtfile(A);
printf("Original text:\n");
txtprint( A);
DeleteSl(A);
printf("Text without short slovo:\n");
txtprint(A);
getch();
}