Zadanie w C Pomocy!

0

Witam mam problem z zadaniem w C.
1.Napisz program, który w pliku o nazwie podanej jako ostatni argument zapisze połączoną zawartość wszystkich plików których nazwy zostały podane w linii poleceń przed ostatnim argumentem.
2.Napisz program liczący ile jest słów w pliku (zakładamy, że słowa składają się z małych i dużych liter alfabetu oraz cyfr i znaku podkreślenia, a wszystkie pozostałe znaki są separatorami słów)

0

Oczywiscie mamy Ci to napisać za przysłowiowy damski?

0

postawił bym flaszkę ale ciężko było by mi dotrzeć do Ciebie :/
próbowałem wykminic po spacjach ale jezeli ktos walnie spacje na początku albo nawet kilka to nie zdaje to egzaminu .
Szukałem tego na necie ale tam tez tego nie ma :/

2 dyszki wystarczą czy nie opłaca się odpalić kompilatora za to ?

1
scorpionlol napisał(a):

próbowałem wykminic po spacjach ale jezeli ktos walnie spacje na początku albo nawet kilka to nie zdaje to egzaminu .

Usuń spacje z początku dopóki nie trafisz na znak alfanumeryczny.
Usuń spacje z końca dopóki nie trafisz na znak alfanumeryczny.
Policz spacje pomiędzy wyrazami.

0

Mam takie cos

#include <stdio.h>

int main ()
{
  char c;
  int n = 0;
  FILE *file = fopen ("test.txt","r");

  if (file==NULL)
      perror ("Nie udalo mi sie otworzyc pliku");
  else
  {
    do {
      c = fgetc (file);
      if (c == " ")
          n++;
    } while (c != EOF); // gdy c==EOF - czyli koniec pliku

    fclose (file);
    printf ("Plik zawiera %d slow .\n",n);
  }
  getchar();
  return 0;
}

a co jesli beda 2 np spacje lub wiecej ?

1

a co jesli beda 2 np spacje lub wiecej ?

Doprowadź sobie na początku dane do odpowiedniego formatu.

Masz linijkę:
ala ma kota a kot ma aids

To pousuwaj spacje na początku i na końcu. A wielokrotne spacje zamień na pojedyncze.

1
scorpionlol napisał(a):

zakładamy, że słowa składają się z małych i dużych liter alfabetu oraz cyfr i znaku podkreślenia, a wszystkie pozostałe znaki są separatorami słów

Możesz stworzyć odpowiedni zbiór zawierający znaki wchodzące w skład słów, a w przypadku innego znaku zwiększać licznik (sprawdzając przy tym czy poprzedni znak także nie jest separatorem).

0

jesli bedzie cos takiego ?

{ ala ma,kotka i azora }
musiałbym zdefiniować spacje i separatory a na spacje zrobić jakąś pętle by dodawa (spacje) by moc wyeliminować wielokrotności
Nie ma łatwiejszego sposobu ? Nie jestem znawca C . A zależny mi na zadaniu .

0

zrob sobie tablice charow

char[] validCharacter = "abcdef,.";

czyli to chcesz by bylo dozwolone w napisie (bez spacji)
wszystkie inne znaki (oprocz spacji) usun z napisu
jezeli nastepny znak jest spacja (pierwsza). wywolujesz funkcje "UsunSpacje" i przekazujesz wskaznik na pierwsza spacje
Ta funkcja bedzie usuwac znaki dopoki nie trafi na rozny od spacji
czytasz znaki dopoki nie skonczysz napisu

0

To jestem w ciemnej du*ie... nie kapuje tego zbytnio

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0