Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

C# SZINTAKTIKÁJA Az egyes utasítások végén pontosvessző áll

Hasonló előadás


Az előadások a következő témára: "C# SZINTAKTIKÁJA Az egyes utasítások végén pontosvessző áll"— Előadás másolata:

1 C# SZINTAKTIKÁJA Az egyes utasítások végén pontosvessző áll
A kis és nagybetűk különböző jelentőséggel bírnak A program egységeit (blokkokat) kapcsos zárójelekkel jelöljük ({}) Kulcsszavak Megjegyzések: // egy sor komment, /* */ többsoros komment Névtér: virtuális doboz, amelyben a logikailag összefüggő osztályok, metódusok, stb. vannak

2 Változó típusok Egész típusok típus méret Leírás byte 1
Előjel nélküli 8 bites egész szám (0..255) sbyte Előjeles 8 bites szám ( ) short 2 Előjeles 16 bites egész szám ( ) ushort Előjel nélküli 16 bites egész szám ( ) int 4 Előjeles 32 bites egész szám ( ) uint Előjel nélküli 32 bites egész szám ( ) long 8 Előjeles 64 bites szám Ulong Előjel nélküli 64 bites szám

3 Változó típusok Valós és egyéb típusok Változó = Convert.to…(); típus
méret Leírás bool 1 Logikai típus, értéke igaz vagy hamis char 2 Egy Unicode karakter string Unikcode karakter szekvenciája float 4 Egyszeres pontosságú lebegőpontos szám double 8 Kétszeres pontosságú lebegőpontos szám object Minden típus őse Változó = Convert.to…();

4 Input, Output Input: Output: Változó = Console.Read();
Változó = Console.ReadLine(); b = int.TryParse(Console.ReadLine(), out g), ahol b bool, g egész típus Output: Console.WriteLine("{0:C}", 2.5); //2,5 Ft Console.WriteLine("{0:C}", -2.5); //-2,5 FT Console.WriteLine("{0:D5}", 25); //00025 Console.WriteLine("{0:E}", ); // E+005 Console.WriteLine("{0:F2}", 25); //25,00 Console.WriteLine("{0:F0}", 25); //25 Console.WriteLine("{0:G}", 2.5); //2.5

5 Output Output: Console.Write(”szöveg ”); Console.WriteLine(”szöveg”);
Console.WriteLine(”{0} {1}”, a,b); Console.WriteLine("{0,6} {1,6}", 123, 456); //jobbra Console.WriteLine("{0,-6} {1,-6}", 123, 456); //balra

6 Egyszerű elágazás

7 Kétirányú elágazás

8 Többirányú elágazás

9 if (feltétel1) { utasítás1; ..utasításn; } else if (feltétel2) else
Elágazás1 if (feltétel1) { utasítás1; ..utasításn; } else if (feltétel2) else

10 Elágazás2 switch(változó) { case érték1: utasítás1; ..utasításn;
break; case érték2: utasítás1; default: utasítás1; }

11 Ciklusok1

12 Ciklusok2

13 Ciklusok3

14 Ciklusok4

15 Ciklusok5

16 Ciklusok6

17 Ciklusok7

18 Ciklusok8

19 Ciklusok9

20 Ciklusok10

21 Ciklusok11

22 Ciklusok12

23 Ciklusok13 while(feltétel) { utasítás1; .. utasításn; } do
.. utasítasn; } while(feltétel); for (ini ; feltétel; léptetés) ..utasításn; foreach(típusnév változónév in kollekciónév) utasítás; break; continue;

24 Hozzáférési szintek private : csak struktúrán belülről érhető el
public : bárki elérheti ezt a mezőt internal : programon belülről (assembly) elérhető

25 String string s = ”alma”; Összefűzés: s = s + ”fa”; //almafa
Nagybetűs: s = s.ToUpper(); //ALMAFA Kisbetűs: s = s.ToLower(); //almafa Kivágás: string s1 = s.SubString(0,2); //al, ha nincs második paraméter a hosszáig Hossza: int l= s.Length; //6 Keresés: int l1= string.Indexof(’l’) //1, ha nincs, akkor az értéke -1 Összehasonlítás: int a = string.Compare(s1,s2) //1, ha a s2 előrébb van, mint s1, 0, ha egyforma, -1, ha s1 előrébb van, mint s2

26 Tömb, struktúra Tömbök: int[] szamok= new int[4];
int[,] numbers = new int[3, 2]; int[,] numbers = new int[3, 2] {{1,2}, {3,4}, {5,6}}; Struktúra: struct tanulo { public string nev; public double atlag; }; tanulo hallgato; hallgato.nev = ” Kis Pista”; hallgato.atlag = 5;

27 Alprogram Önálló feladattal rendelkező programegység
Azonosító, paraméter Eljárás, függvény Alprogram hívása

28 Alprogramok végrehajtása

29 Függvény, metódus FÜGGVÉNY: Metódus:
Láthatóság(static) visszatérési típus név(paraméterek) { Alprogram utasítástörzse return érték; } Metódus: Láthatóság(static) void név(paraméterek)

30 Paraméterek Bemenő Referencia Kimenő

31 Fájl kezelés System.IO StreamWriter StreamReader Exists
Write(string), Writeln(string) Read(), ReadLine() Close()

32 Objektum

33 Osztály Adatok, műveletek Alapelv: Egységbezárás Öröklés Sokoldalúság

34 Osztály2 Egységbezárás:
egyértelműen jelölve van, hogy milyen adatok és műveletek jellemzik metódus (eljárások, függvények) Öröklés Ős osztály Gyerek osztály

35 Feladat Írjon egy progamot hallgatói adatok rendezésére!
Hozzon létre egy tanulo nevű struktúrát, ami tartalmazza a hallgató nevét és átlagát! Írjon egy Beolvas nevű paraméter nélküli függvényt, ami beolvassa a hallgatók adatait egy „nevsor.txt” nevű text típusú fájlból. Visszatérési értéke a beolvasott hallgatók darabszáma. Írjon egy csere nevű metódust, ami a bemenő paraméterében megadott két hallgató adatát megcserélve adja vissza. Írjon egy Rendez nevű metódust, ami a paraméterében (mi szerint rendezze: névsor/átlag) megadott mód szerint rendezi az adatokat. Írjon egy Fajlbair paraméter nélküli metódust, ami az adatokat beírja egy text típusú fájlba.

36 1.Hozzon létre egy tanulo nevű struktúrát, ami tartalmazza a hallgató nevét és átlagát!
struct tanulo { public string nev; public double atlag; } static tanulo[] tankor = new tanulo[20]; static int n;

37 2.Írjon egy Beolvas nevű paraméter nélküli függvényt, ami beolvassa a hallgatók adatait egy „nevsor.txt” nevű text típusú fájlból. Visszatérési értéke a beolvasott hallgatók darabszáma. static int Beolvas() { StreamReader sr = new StreamReader("nevsor.txt"); string line; string s; byte i = 0; int h; while ((line = sr.ReadLine()) != null) h = line.IndexOf(";"); s = line.Substring(0, h); tankor[i].nev = s; s = line.Substring(h + 1); tankor[i].atlag = Convert.ToDouble(s); ++i; } sr.Close(); return i; static void Main(string[] args) n = Beolvas();

38 static void csere(ref tanulo a, ref tanulo b) { tanulo cs;
3. Írjon egy csere nevű metódust, ami a bemenő paraméterében megadott két hallgató adatát megcserélve adja vissza. static void csere(ref tanulo a, ref tanulo b) { tanulo cs; cs = a; a = b; b = cs; }

39 4. Írjon egy Rendez nevű metódust, ami a paraméterében (mi szerint rendezze: névsor/átlag) megadott mód szerint rendezi az adatokat. static void Rendez(int mi) { //Rendezés átlag és név szerint szerint for (int i = 0; i < n - 1; i++) for (int j = 0; j < n - 1; j++) if (mi == 1) if (tankor[j].atlag > tankor[j + 1].atlag) csere(ref tankor[j], ref tankor[j + 1]); } else if (string.Compare(tankor[j].nev, tankor[j + 1].nev) == 1)

40 Főprogramba a Rendez meghívása
static void Main(string[] args) { byte mi; n = Beolvas(); Console.Write("Mi szerint rendezzek (1: átlag, 2: névsor"); mi = Convert.ToByte(Console.ReadLine()); Rendez(mi); }

41 5. Írjon egy Fajlbair paraméter nélküli metódust, ami az adatokat beírja egy text típusú fájlba.
static void Fajlbair() { StreamWriter sw = new StreamWriter("nevsor.txt"); string s; for (int i = 0; i < n; i++) s = tankor[i].nev + ";" + tankor[i].atlag; sw.WriteLine(s); } sw.Close();

42 Végső főprogram static void Main(string[] args) { byte mi;
n = Beolvas(); Console.Write("Mi szerint rendezzek (1: átlag, 2: névsor"); mi = Convert.ToByte( Console.ReadLine()); Rendez(mi); Fajlbair(); Console.ReadLine(); }


Letölteni ppt "C# SZINTAKTIKÁJA Az egyes utasítások végén pontosvessző áll"

Hasonló előadás


Google Hirdetések