Привет всем.Нужна помощь с задачей на С
Вот условие: Напишите программу, которая добавляет слова в файл и сделайте так, чтобы каждое слово было пронумеровано порядке его в соответствии с добавление в список, начиная с 1 Позаботьтесь о том, чтобы при втором запуске программы новая нумерация слов начиналась с того места, где была закончена нумерация при предыдущем запуске. Вот мой код:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define LEN 256
int main(){
FILE *f;
char theName[] = "dist_zavd.txt";
int a,n, g = 0, nW=0, words = 0;
char *p[LEN];
char tmp;
f = fopen(theName, "w");
while (g != 10)
{
printf("Enter words: ");
fgets(p,20,stdin);
if (a = strtok(p," ")){
++nW;
printf("\nquantity words = %d\n", nW, p);
}
g++;
}
printf("\nquantity words = %d, words=%c\n",nW,p);
fclose(f);
return 0;
}
Ответы (1 шт):
Автор решения: Namous
→ Ссылка
Так, наверное.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define LEN 256
int main(void) {
FILE *f;
char theName[] = "dist_zavd.txt";
int n, g = 0, nW=0, words = 0;
char p[LEN];
char *word;
f = fopen(theName, "w");
printf("Enter words: ");
fgets(p,LEN,stdin);
word = strtok(p," ");
while(word != NULL)
{
++nW;
printf("%d. %s\n", nW, word);
word = strtok(NULL," ");
}
printf("\nquantity words = %d", nW);
fclose(f);
return 0;
}