Hirdetés
- Apple iPhone 16 Pro - rutinvizsga
- Xiaomi 15 - kicsi telefon nagy energiával
- Samsung Galaxy A56 - megbízható középszerűség
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Xiaomi 14T Pro - teljes a család?
- iPhone topik
- Xiaomi 13 - felnőni nehéz
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Android szakmai topik
Új hozzászólás Aktív témák
-
Jester01
veterán
válasz
Dirty_Pio
#838
üzenetére
1) Nem tudom, hogy az [ i ] indexeket a fórum nyelte-e be, de ha nem akkor hiányzanak
2) ha ragaszkodsz a bitmezőkhöz, az megbonyolítja a beolvasást. Én inkább kidobtam őket
3) a switch-ben kimaradtak a case kulcsszavak.
4) a default után is kell kettőspont, de a default: break konstrukciónak nincs sok értelme, olyan mintha ott sem lenne
5) becsúszott egy bezáratlan kapcsos zárójel
6) a %c formátum nem ugorja át a szóközt (whitespace) ilyenkor explicit kell egy szóköz
7) a scanf-nek pointer kell, hiányzik egy pár & jelEz itt patch, hogy jobban látszódjon a módosítás.
--- t.c.orig 2009-03-11 22:10:54.000000000 +0100
+++ t.c 2009-03-11 22:37:13.000000000 +0100
@@ -7,15 +7,15 @@
enum star_type tp;
union star{
struct mai{
- unsigned char type:2;
- unsigned char age:2;
+ unsigned char type;
+ unsigned char age;
char color[11];
}m;
struct bin{
float r1;
float r2;
- unsigned char t1:2;
- unsigned char t2:2;
+ unsigned char t1;
+ unsigned char t2;
}b;
struct var{
float lowlmn;
@@ -32,37 +32,35 @@
scanf("%d",&a);
printf("How many stars?(max 10)\n");
scanf("%d",&n);
- for (i=0;i<n;i++){
+ for (i=0;i<n;i++)
switch (a){
- MA:
- scanf("%50s",x.name);
- x.tp=a;
- scanf("%c %c %s",x.u.m.type, x.u.m.age, x.u.m.color);
- break;
- BIN:
- scanf("%50s",x.name);
- x.tp=a;
- scanf("%f %f %c %c",x.u.b.r1,x.u.b.r2,x.u.b.t1,x.u.b.t2);
- break;
- VAR:
- scanf("%50s",x.name);
- x.tp=a;
- scanf("%f %f %f",x.u.v.lowlmn,x.u.v.highlmn,x.u.v.period);
+ case MA:
+ scanf("%50s",x[i].name);
+ x[i].tp=a;
+ scanf(" %c %c %s",&x[i].u.m.type, &x[i].u.m.age, x[i].u.m.color);
+ break;
+ case BIN:
+ scanf("%50s",x[i].name);
+ x[i].tp=a;
+ scanf("%f %f %c %c",&x[i].u.b.r1,&x[i].u.b.r2,&x[i].u.b.t1,&x[i].u.b.t2);
+ break;
+ case VAR:
+ scanf("%50s",x[i].name);
+ x[i].tp=a;
+ scanf("%f %f %f",&x[i].u.v.lowlmn,&x[i].u.v.highlmn,&x[i].u.v.period);
break;
- default break;
};
for (i=0;i<n;i++)
- switch (x.tp){
- MA:
- printf("%c %c %s\n",x.u.m.type, x.u.m.age, x.u.m.color);
+ switch (x[i].tp){
+ case MA:
+ printf("%c %c %s\n",x[i].u.m.type, x[i].u.m.age, x[i].u.m.color);
break;
- BIN:
- printf("%f %f %c %c\n",x.u.b.r1,x.u.b.r2,x.u.b.t1,x.u.b.t2);
+ case BIN:
+ printf("%f %f %c %c\n",x[i].u.b.r1,x[i].u.b.r2,x[i].u.b.t1,x[i].u.b.t2);
break;
- VAR:
- printff("%f %f %f\n",x.u.v.lowlmn,x.u.v.highlmn,x.u.v.period);
+ case VAR:
+ printf("%f %f %f\n",x[i].u.v.lowlmn,x[i].u.v.highlmn,x[i].u.v.period);
break;
- default break;
};
system("pause");
return(0);
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Samsung S20 Ultra 5G + Galaxy Watch 5 Pro egyben, tokokkal, dobozokkal
- Eladó macbook pro 16 M1 Max 10 CPU/32 GPU 64GB 1TB
- Nálam már kapható a jelenlegi leggyorsabb brutál notebook: Samsung Galaxy Book 5 Edge 5G!
- Sony WF-G700 White- INZONE Buds vezeték nélküli zajszűrős(ANC) fülhallgató - Fekete, 2 év gari
- High-End AMD Ryzen 9 9950X3D, ASRock X870E Taichi + Dell AlienWare AW2725DF + ajándékok
- Jackson elektromos gitár
- BESZÁMÍTÁS! SAPPHIRE B650M R7 8700F 32GB DDR5 512GB SSD RX 6800XT 16GB Zalman Z1 GIGABYTE 750W
- HIBÁTLAN iPhone 13 Mini 128GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS4170
- Új, Aktiválatlan iPhone 17 Pro (256 GB) (rendelhető)
- AKCIÓ! HP Victus Gaming 16-S0017NH 16 notebook - R5 7640HS 32GB DDR5 1TB SSD RTX 4050 6GB WIN1
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: ATW Internet Kft.
Város: Budapest


