-
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!
- Akko, Gateron, Haimu x Geon kapcsolók
- Szép! Lenovo ThinkPad X1 Yoga G6 x360 Érintős Hajtogatós Laptop Tab 14" -50% i5-1135G7 16/256 +Toll
- Samsung Galaxy Tab S10 Ultra 256 GB újszerű állapot
- GamerPC RX 9070/7700X/32GB DDR5/1TB M2
- Szép! Lenovo ThinkPad X1 Yoga G6 x360 Érintős Hajtogatós Laptop Tab 14" -50% i5-1135G7 16/256 +Toll
- Telefon felvásárlás!! Samsung Galaxy A14/Samsung Galaxy A34/Samsung Galaxy A54
- Új Samsung GalaxyBook X360 FHD 2in1 OLED i7-1360P 12mag 16GB 512GB Intel Iris XE Toll Win11 Garancia
- GYÖNYÖRŰ iPhone 14 Pro 128GB Space Black-1 ÉV GARANCIA - Kártyafüggetlen, MS3781
- BESZÁMÍTÁS! Asus B560M i5 10500 16GB DDR4 512GB SSD RTX 3060Ti 8GB LIAN LI LANCOOL 207 Digital 650W
- Ventilátorok 120/140mm és tápkábel modding kitűnő árakon!
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: Laptopműhely Bt.
Város: Budapest


