Witam! Muszę napisać program zaliczeniowy na semestr z programowania w C i mam taki problem, że nie mam absolutnie żadnego pomysłu na niego... Program musi mieć minimum 200 linii i oprócz podstawowych mechanizmów C, musi obsługiwać pliki i zawierać struktury. Moje programowanie nie jest na jakimś wysokim poziomie, więc musi to być coś co w miare ogarnę. Macie jakieś propozycje?
Prosta baza danych wykorzystująca pliki tekstowe?
Będziesz miał np strukturę pracownik co będzie miała jakieś tam pola np zawód, wiek, płaca, płeć no i w programie możesz tworzyć takich struktur ile chcesz no i potem zapisujesz je do pliku. No i oczywiście program ma też możliwość wyświetlenia tych wszystkich rzeczy jak również tylko poszczególnych.
To co wyżej + ew jakieś rozproszenie tego (przynajmniej w obrębie jednego komputera) + systemowe mechanizmy tupu ryglowanie danych w plikach (żeby jeden klient nie blokował całego pliku za każdym razem)
Albo np. jakiś prosty shell.
a może jakies kółko i krzyżyk w konsoli z zapisem i odczytem rekordów do pliku.. Myślę, że to byłoby proste, tylko nie wiem czy nie za bardzo..
Program musi mieć minimum 200 linii
Stawianie jakichkolwiek warunków dotyczących liczby linii kodu jest absurdalne…
#include <stdio.h>
struct struktura {
int x;
int y;
};
int main()
{
FILE *plik;
plik=fopen("plik.txt","w");
struct struktura s = {2,3};
fprintf(plik,"%03i: x=%i, y=%i\n",13,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",14,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",15,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",16,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",17,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",18,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",19,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",20,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",21,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",22,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",23,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",24,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",25,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",26,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",27,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",28,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",29,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",30,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",31,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",32,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",33,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",34,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",35,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",36,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",37,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",38,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",39,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",40,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",41,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",42,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",43,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",44,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",45,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",46,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",47,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",48,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",49,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",50,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",51,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",52,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",53,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",54,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",55,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",56,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",57,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",58,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",59,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",60,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",61,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",62,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",63,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",64,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",65,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",66,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",67,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",68,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",69,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",70,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",71,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",72,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",73,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",74,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",75,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",76,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",77,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",78,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",79,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",80,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",81,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",82,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",83,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",84,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",85,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",86,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",87,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",88,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",89,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",90,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",91,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",92,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",93,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",94,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",95,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",96,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",97,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",98,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",99,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",100,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",101,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",102,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",103,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",104,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",105,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",106,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",107,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",108,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",109,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",110,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",111,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",112,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",113,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",114,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",115,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",116,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",117,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",118,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",119,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",120,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",121,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",122,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",123,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",124,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",125,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",126,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",127,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",128,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",129,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",130,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",131,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",132,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",133,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",134,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",135,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",136,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",137,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",138,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",139,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",140,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",141,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",142,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",143,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",144,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",145,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",146,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",147,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",148,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",149,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",150,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",151,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",152,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",153,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",154,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",155,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",156,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",157,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",158,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",159,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",160,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",161,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",162,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",163,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",164,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",165,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",166,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",167,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",168,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",169,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",170,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",171,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",172,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",173,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",174,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",175,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",176,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",177,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",178,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",179,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",180,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",181,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",182,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",183,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",184,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",185,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",186,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",187,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",188,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",189,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",190,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",191,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",192,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",193,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",194,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",195,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",196,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",197,s.x,s.y);
fprintf(plik,"%03i: x=%i, y=%i\n",198,s.x,s.y);
fclose(plik);
}
@sid90 idąc tym rokiem można pisać dowlną prostą grę:
- wisielec
- mastermind
- prosta gra karciana
@yoel "ryglowanie" nazywa się po polsku "blokady typu posix"
http://students.mimuw.edu.pl/SO/Linux/Temat06/fcntl.html#FCNTL_POSIX
http://man.cx/fcntl(2)/pl
Jeszcze jedno, tak się zastanawiam jak można oddzielić poszczególne komórki tabel w bazie?
komorka1 | komorka 2
W tym przypadku posłużyłem się znakiem |, ale string znajdujący się pod komorka1 może zawierać | i zrobi się z tego
czesc1 | czesc2 | komorka2
i tabela będzie wyglądała inaczej. Może jakiś znak specjalny? Ale z kolei przy pakowaniu pliku binarnego do bazy taki znak może wystąpić.
Jak nie chcesz bawić się w pisanie parsera, który będzie obsługiwał znaki escape'ujące to może przed napisem umieść liczbę znaków?