-
Fototrend

Új hozzászólás Aktív témák
-
hoper
csendes tag
Helló emberek! Lenne egy kis problémám a következő adatbáziskezelő progival. A progi noha megnyitja a bináris fájlt, de nem hajlandó beleírni a bevitt adatokat.
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <stdlib.h>
int main() {
int d;
int i=0;
int szam;
int azon;
int az;
int van;
int temp;
FILE *fp;
struct valtozo
{
int azonosito;
char marka[100], szin[100];
}adat[50];
while(1) {
az = -1;
printf("\n\n --- MENU ---\n\n");
printf(" 1 - Uj adat\n");
printf(" 2 - Modositas\n");
printf(" 3 - Kereses\n");
printf(" 4 - Lista\n");
printf(" 5 - Kilepes\n\n");
printf(" Kerek egy szamot: ");
scanf("%d", &szam);
switch(szam) {
case 1:
printf("\n\n");
printf(" UJ ADAT\n");
do {
printf(" Azonosito: ");
scanf("%d", &adat[i].azonosito);
for(d=0; d<i; d++) {
if(adat[i].azonosito==adat[d].azonosito) {
printf(" Mar van ilyen azonosito!\n");
van=1;
break;
}
else {
van=0;
}
}
} while(van==1);
printf(" Marka: ");
scanf("%s", &adat[i].marka);
printf(" Szin: ");
scanf("%s", &adat[i].szin);
i++;
break;
case 2:
printf("\n\n");
printf(" MODOSITAS\n");
printf(" Add meg a modositani kivant adatok azonositojat: ");
scanf("%d", &azon);
for(d=0; d<i; d++) {
if(adat[d].azonosito==azon) {
az=d;
}
}
if(az==-1) {
printf(" Nincs ilyen azonosito!\n");
break;
}
do {
printf(" Add meg az uj azonositot: ");
scanf("%d", &temp);
for(d=0; d<i; d++) {
if(temp==adat[az].azonosito) {
van=0;
break;
}
else if(temp==adat[d].azonosito) {
printf(" Mar van ilyen azonosito!\n");
van=1;
break;
}
else {
van=0;
}
}
} while(van==1);
adat[az].azonosito=temp;
printf(" Add meg az uj markat: ");
scanf("%s", &adat[az].marka);
printf(" Add meg az uj szint: ");
scanf("%s", &adat[az].szin);
break;
case 3:
printf("\n\n");
printf(" KERESES\n");
printf(" Add meg a keresni kivant adatok azonositojat: ");
scanf("%d", &azon);
for(d=0; d<i; d++) {
if(adat[d].azonosito==azon) {
az=d;
}
}
if(az==-1) {
printf(" Nincs ilyen azonosito!\n");
break;
}
printf("\n A keresett adatok:\n\n");
printf(" Azonosito: %d\n Marka: %s\n Szin: %s\n", adat[az].azonosito, adat[az].marka, adat[az].szin);
break;
case 4:
printf("\n\n");
printf(" LISTA\n");
if(i==0) {
printf(" A lista ures!\n");
break;
}
printf(" AZONOSITO - MARKA - SZIN\n");
for(d=0; d<i; d++) {
printf(" %d - %s - %s\n", adat[d].azonosito, adat[d].marka, adat[d].szin);
}
break;
case 5:
printf("\n\n");
printf(" KILEPES\n");
int t;
char k[2];
if ((fp = fopen("adat.dat", "ab"))==NULL){
printf("Cannot open file \n");
exit(1);}
for( i=1; i<=100; i++)
{
if (adat[i].azonosito==1)
{
t=i;
sprintf(k, "%2d", t);
fwrite(&k, 2, 1, fp);
fwrite(&adat[i].marka, 50, 1, fp);
fwrite(&adat[i].szin, 50, 1, fp);
}
fclose(fp);
}
return 0;
default:
printf("\n Nincs ilyen menupont!\n");
break;
}
}
}
A program egyébként kézi kiiratással működik, a képernyőre jól ír ki, de a fájlba nem. Tisztába vagyok vele, hogy debug, de attól még a fájlba kikéne írnia az adatokat.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Bowers & Wilkins Dm 303 EISA díjas audiofil hangfal + Lcr 3 center
- Dell ReadyRails A6 1U Rail Kit R210, R210 II, Dx600G, stb. szerverekhez (JWFR6, W6XNW, YNG10)
- Kingston HyperX Fury 2x4GB 2133MHz DDR4 kit / Beszámítás OK! / Akciós Ár!
- Eladó Sony PlayStation 5 (Slim) 1TB Digital Edition 2026.12-ig garanciával!
- ASRock B250M-HDV / MSI B150 PC Mate
- Apple iPhone 15Pro 128GB - Kártyafüggetlen, Fekete Titán, 85% Akku - 1év Garanciával
- Veszünk: PS5 Fat/Slim/Digital/Pro konzolt, játékokat, Portalt stb. Kérj ajánlatot!
- GYÖNYÖRŰ iPhone 14 Pro 128GB Deep Purple -1 ÉV GARANCIA - Kártyafüggetlen, MS4574
- Új! AKRacing Premium Master gamer szék
- 206 - Lenovo Legion Slim 7 (16IRH8) - Intel Core i7-13700H, RTX 4060 (ELKELT)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

