/* 2012.11.29 ZH A csoport megoldasa: 1. a., (Pontatlan a feltett kérdés, mert nem csak négy típus van a C nyelvben) int chort int long int float double long double char void b., az r2 pointer arra a vektorelemre mutat, amelynek sorszáma 12-vel nagyobb az r1 pointer által mutatott vektorelem sorszámától c., feltételes operátor, a feltételes kifejezés értéke 8 vagyis igaz, így eredményül a ? és a : közötti kifejezés eredményét adja vissza, tehát a végeredmény 7 d. ! logikai tagadas a !a 0 1 1 0 && logikai es a b a&&b 0 0 0 0 1 0 1 0 0 1 1 1 || logikai vagy a b a||b 0 0 0 0 1 1 1 0 1 1 1 1 összetett értékadó operátorok += -= *= /= %= e., char karaktervektor[12]; f., int i=1; int szam; do { printf("Kerem az %d. egesz szamot:", i); scanf("%f", &szam); if ( szam >= 0 ) printf(" a szam nem negativ"); else printf(" a szam negativ"); }while (i<=5): //hatultesztelo ciklus Billentyűzetről beolvas öt valós számot ciklusban, és megvizsgálja 2. a., eloszor 9%2 eredmenye 1, majd 3-1 eredmenye 2, vegul 2-1 vegeredmeny: 1 printf("\n %d", 3 - 9%2 - 1); b., lista (8,7,5) a lista vegeredmenye: 5 c., lista (g=k=1, k*=7+g) hatasa k=5 es g=5, majd k=1*(7+1) eredmenye 8 es a lista vegeredmenye is: 8 d., A=7; B=3; C=6; D=1; ( A>=B || !(C < D)) ( 7>=3 || !(6 < 1)) vegeredmeny: igaz igaz hamis igaz igaz e., i=3; k=2; v1=3; v1 *= i++ * k-- + 7; felbontas utan: v1 = v1 * (i * k + 7); i++; k--; eredmenyek: v1=39; i=4; k=1 */ //3., /* #include #include void main(void) { int i, n, szam; clrscr(); //kepernyotorles printf("\n Egesz szamok vizsgalata ciklusban."); printf("\n Adja meg a 99 darab egesz szamot:"); n=77; //a 77-at a ZH feladat irja elo, celszeru kisebb szammal tesztelni for(i=1; i<=n; i++) //pontosan n-szer fut le { printf("\n Kerem a %d. egesz szamot:", i); //bekeres scanf("%d", &szam); //beolvasas, celkent memoria cimet kell megadni! if ( 5.2 < szam/2.0 && szam/2.0 < 9.8) //ha a szam a megadott intervallumba esik printf("\n a megadott szam: %d, melynek fele az 5.2 es 9.8 koze esik", szam); } getch(); //billentyu lenyomasaig varakozik } //main fuggveny torzsenek a vege */ //4., /* #include #include #define DARAB 150 int main(int argc, char* argv[]) { double v1[DARAB], v2[DARAB]; int i, n; clrscr(); printf("\n Pelda program zh f4-re"); printf("\n Kerem az adatparok szamat (max %d):", DARAB); scanf("%d", &n); for(i=0; i #include void main(void) { float v1[100], v2[100], v3[100]; float min; int talalat; int i, n; clrscr(); //kepernyotorles printf("\n Adatharmasok vizsgalata."); printf("\n Adja meg az adatharmasok darabszamat:"); scanf("%d", &n); for(i=0; i v2[i] && v2[i] > v3[i] ) ) { if (talalat > 0) if ( min > v2[i] ) min = v2[i]; else min = v2[i]; talalat++; } } //ciklus vege printf("\n %d darab kozrefogott szam szerepelt.", talalat); //eredmeny kiirasa a kepernyore if (talalat>0) printf("\n A legkisebb kozrefogott szam: %f", min); getch(); //billentyu lenyomasaig varakozik } //main fuggveny torzsenek a vege // FIGYELEM! A gyakorlaton hasznalt BorlandC szoftver hasznalatakor jelentkezo: // floating point format not linked // futasi hiba a telepitett rendszer tulzott "lebutitasanak" kovetkezmenye, ez a program jól működik. //---------------------------------------------------------------------------