De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

C-Programmeren Voor BPE Avionica 20 november 2018.

Verwante presentaties


Presentatie over: "C-Programmeren Voor BPE Avionica 20 november 2018."— Transcript van de presentatie:

1 C-Programmeren Voor BPE Avionica 20 november 2018

2 Introductie Basis van C-programmeren. Wat heb je nodig? Laptop
Een C-compiler/developer geinstalleerd en werkend Microsoft Visual Studio DevCPP Eclipse IDE Codeblocks 20 november 2018

3 Introductie 20 november 2018

4 Optionele literatuur Problem Solving and Program Design in C (Boek thuis, PDF available) Sams Teach Yourself C in 21 Days (PDF available) Schaum’s Programming with C (PDF available) C for dummies (PDF available) Youtube! Google! 20 november 2018

5 Onderwerpen Proces van probleem oplossen PSD (Program Structure Diagram) / Flowchart Implementatie Data types Scanf, printf Operators Prioriteit van operators If-, while-, for-, do-, switch- statements Style, format en lay-out Opbouw programma Hungarian notation Arrays Functies 20 november 2018

6 1. Problem solving 20 november 2018

7 1 2 3 4 5 Problem solving Het stappenplan:
Probleem oplossen: (zonder computer) Specificeren, analyseren, eisen 2 Algoritmisch ontwerp: Vorm/structuur Program Structure Design(s) / Flowchart(s) 3 Testen met de hand: Programma doorlopen, proberen met bekende/verwachtte input en output 4 Implementeren: Code schrijven C, C++, C#, ASM, Java, Python, etc… 5 Code testen Het stappenplan: Van een probleem naar een werkend programma. Voor je begint met tikken: Enig idee hoe ‘t eruit komt te zien. Enig idee hoe ‘t moet werken. Dus: ONTWERP! 20 november 2018

8 Algoritmisch ontwerp Maak een stappen plan voor het programma.
Simpel voorbeeld: Lamp staat uit (Initiele waarde) Druk op knop (Input) Lamp gaat aan (Doe iets…) Wacht 5s Lamp gaat uit (Klaar) Wacht op actie van de knop (Evt. Herhaling) 20 november 2018

9 Algoritmisch ontwerp Maak een stappen plan voor het programma.
Stap vergeten = Stap niet gedaan. Zet je de lamp niet uit, blijft hij aan… Gaat niet automatisch uit! 20 november 2018

10 Algortimisch ontwerp: Flowchart blokken
20 november 2018

11 Algoritmisch ontwerp: Ontwerp methodes
2 Methoden: PSD Flowchart Input Do something Output Input Do something Output 20 november 2018

12 Algoritmisch ontwerp: “If”-statement
Als dit, dan dit, anders dat. PSD Flowchart condition true? yes no actions actions 2 no condition true ? yes 20 november 2018

13 Algoritmisch ontwerp: “While”-Loop
Terwijl dit waar is, doe dit, anders klaar. PSD Flowchart while condition is true do something Initialize condition yes condition true ? no do something 20 november 2018

14 Algoritmisch ontwerp: “For”-Loop
Doe dit voor een bepaalde hoeveelheid keren. PSD Flowchart From [start_value] to [end_value] in [step_value] steps do something Initialize condition yes condition true ? no do something counter 20 november 2018

15 Implementeren: Source code
int i; //Maak een variabele aan genaamd i. i=1; //Geef de variabele een waarde, 1. i=i/2; //Doe iets met die waarde. ^ Dat noemen ze de source code. In een programmeer taal… (C, C++, C#, ASM, Java, Python, etc…) 20 november 2018

16 Implementeren: Assembly code
Programmeer talen zijn makkelijker te gebruiken versies van origineel assembly code. Compiler zet dit om voor jou in standaard instructies! Daarna wordt dit weer omgezet in ‘machine code’ (1’tjes en 0’tjes) 20 november 2018

17 Implementeren 20 november 2018

18 2. Data types 20 november 2018

19 Bits and bites (Duh!) Data bestaat uit 1’s en 0’s.
1x een 1 of een 1x een 0, is 1bit! 1byte bestaat uit 8bits! Data types bepalen hoeveel bytes de variabele is. Meer bytes = groter mogelijk getal! 20 november 2018

20 Bits and bites (Duh!) 1byte = 256 mogelijkheden (2^8) 0b = 0 0b = 255 Data van 1 byte kan dus niet groter worden dan decimaal 255. 20 november 2018

21 Signed and unsigned Signed = Heeft wel een sign ervoor. 0b ^betekend – of + 0= +, 1= - Range: -127 t/m 128 of -127 t/m 127 (Value signed ligt aan 2’s complement / 1’s complement) Unsigned = Geen sign ervoor. Range: 0 t/m 255 20 november 2018

22 Integer data types Integer = geen komma getallen! Char 1 byte
Unsigned 1 byte Signed 1 byte Int 2 t/m 4 bytes Unsigned 2 t/m 4 bytes Short 2 bytes Unsigned short 2 bytes Long 4 bytes Unsigned long 4 bytes 20 november 2018

23 Integer data types Integer = geen komma getallen! Char
Unsigned 0 t/m 255 Signed t/m 127 Int Unsigned Short t/m 32767 Unsigned short 0 t/m 65535 Long t/m Unsigned long 0 t/m 20 november 2018

24 Floating type data types
Anders opgebouwt dan integer types, daarom: Decimalen mogelijk Groter bereik! Float 4 bytes 1.2E-38 t/m 3.4E+38 tot 6 decimalen Double 8 bytes 2.3E-308 t/m 1.7E+308 tot 15 decimalen Long double 10 bytes 3.4E-4932 t/m 1.1E+4932 tot 19 decimalen 20 november 2018

25 Input (scanf) Scanf(“%lf”,&dTime); Data van user van keyboard
Data opgeslagen in variabele dTime Vergeet niet & voor de variabele!! %lf is de format string, bepaald de data type die uitgelezen wordt. 20 november 2018

26 Output (printf) Printf(“velocity = %8.3lf m/s”, dVelocity);
“…” De te printen text (string aan characters) % word herkent in combinatie met format string, om variablen te printen. Na de tekst, een komma met de gebruikte variabelen. 20 november 2018

27 Format string scanf, printf
%d : Scan an integer as a signed decimal number. %f : Scan a floating-point number in normal (fixed-point) notation. %g, %G : Scan a floating-point number in either normal or exponential notation. %g uses lower-case letters and %G uses upper-case. %s : Scan a character string. The scan terminates at whitespace. A null character is stored at the end of the string, which means that the buffer supplied must be at least one character longer than the specified input length. %c : Scan a character (char). No null character is added. %lf : Scan as a double floating-point number. 20 november 2018

28 Format string scanf, printf
%3d int value in at least 3 positions %d int value in the default nr. of positions %7ld long value in at least 7 positions %8.2f float with a 2 digits after the . Uses 8 positions in total ( ) 20 november 2018

29 3. Operators 20 november 2018

30 Assignment operators (waarde toekennen)
20 november 2018

31 Binary en hexadecimal prefixes!
Het getal 4, kan je declareren als Int x = 4; Maar ook: Int x = 0b0100; //0b is de binary prefix! Of Int x = 0x04; //0x is de hex prefix! 20 november 2018

32 Unary operators (operators met 1 input)
Meaning Example + Addition Operator = 30 - Subtraction Operator 20 – 10 = 10 (type) Type Casting Operator 20 * 10 = 200 20 november 2018

33 Voorbeeld casting #1: UNCAST int sum = 17; int count = 5; double mean = sum / count; #2: CASTED double mean = (double) sum / count; Verschil? 20 november 2018

34 Voorbeeld casting Verschil: #1: mean = 3 #2: mean = 3.400000
20 november 2018

35 Binary operators (operators met 2 inputs)
Meaning Example + Addition Operator = 30 - Subtraction Operator 20 – 10 = 10 * Multiplication Operator 20 * 10 = 200 / Division Operator 20 / 10 = 2 % Modulo Operator 20 % 6 = 2 Andere mathematische bewerkingen door math.h; #include <math.h> 20 november 2018

36 Assignment operators (waarde toekennen)
Operator symbol Name of the operator Example Equivalent construct += Addition assignment x += 4; x = x + 4; -= Subtraction assignment x -= 4; x = x – 4; *= Multiplication assignment x *= 4; x = x * 4; /= Division assignment x /= 4; x = x / 4; %= Remainder assignment x %= 4; x = x % 4; 20 november 2018

37 Increment & decrement Operator symbol Name of the operator Example
Equivalent construct ++ Increment assignment x++ x = x + 1; ++x -- Decrement x--; x = x - 1; --x; 20 november 2018

38 Increment & decrement Verschil tussen ++x en x++: Pre- en post- increment! (voor en na increment) int i, x; i = 2; x = ++i; // now i = 3, x = 3 x = i++; // now i = 3, x = 2 geeft x waarde van voor de ++ 20 november 2018

39 Logic operators (bitwise)
Name of the Operator & And Operator | Or Operator ^ XOR Operator ~ Not Operator << Bitshift naar links >> Bitshift naar rechts ^ IS DUS NIET POWER! Gebruik dan math.h functie POW! 20 november 2018

40 Logic operators (bitwise)
char x = 0b ; // Binare getal Want char was 1byte, toch!? x << 4; // Bitshift met 4 bits Wordt dus ! Laatste 4 bits zijn naar links opgeschoven Wordt leeg gevuld! Andere bits die buiten de data type vallen zijn weg! 20 november 2018

41 ( ) //functies&math [ ] //arrays
Priority Operator Associativity ( ) //functies&math [ ] //arrays . //structs left-to-right //unary operators + – ! ~ (type) * & sizeof right-to-left 20 november 2018

42 Priority Operator Associativity //Binary operators * / % left-to-right
*  /  % left-to-right +  – <<  >> <  <= >  >= ==  != & ^ 20 november 2018

43 = += -= *= /= %= &= ^= |= <<= >>=
Priority Operator Associativity | left-to-right && | | ? : right-to-left = +=  -= *=  /= %=  &= ^=  |= <<=  >>= 20 november 2018

44 4. Statements 20 november 2018

45 If-statement Als … dan doe ik…
If(expression == true) { printf(“Ik doe hier iets”); } Iets word uitgevoerd als de expressie true is. 20 november 2018

46 Relation operators (Vergelijkende operators)
Meaning == Equal to != Not equal to > Greater than >= Greater than or equal to <= Less than or equal to < Less than 20 november 2018

47 Relation operators (Vergelijkende operators)
Verschil = en == = Kent een waarde toe… == Vergelijkt waardes, resulteerd in waar of niet waar. In statements gebruik dus == ! (Sommige compilers geven warning bij zo’n fout) 20 november 2018

48 If-statement Wat is nou het verschil?: En if (x == true) if (x = true)
20 november 2018

49 If-statement Wat is nou het verschil?: En
if (x == true) //Alleen als x true is En if (x = true) //Doe dit eigenlijk gewoon altijd… 20 november 2018

50 If-else-statement Als … dan doe ik… anders… dan doe ik…
if(expression == true) { printf(“Ik doe hier iets”); } else printf(“Ik doe hier iets ANDERS”); 20 november 2018

51 Nested If-statement If statements in elkaar. if (expression == true) {
//Doe iets omdat expressive 1 true is. If(expression2 == true) //Doe iets als expressie 1 en 2 true zijn } 20 november 2018

52 Nested If-statement If statements in elkaar. if (expression == true) {
//Doe iets omdat expressive 1 true is. If(expression2 == true) //Doe iets als expressie 1 en 2 true zijn } HOU OVERZICHT DOOR INSTAPPEN TE GEBRUIKEN! DOE DIT DUS NIET! 20 november 2018

53 Compound if-statement
Als… , && …, dan doe ik… if((expression == true) && (expression2 == true)) { printf(“Ik doe hier iets als beide expressies true zijn”); } 20 november 2018

54 Logic operators Let op! Dubbele tekens voor && en ||, anders voor bitwise operations, niet voor de gehele waardes! Operator Name of the Operator && And Operator || Or Operator ! Not Operator 20 november 2018

55 Logic operators x & y // bitwise AND, 0101 & 0011 = 0001 x | y // bitwise OR, 0101 | 0011 = 0111 x && y // true als x en y allebei true zijn x || y // true als of x waar is, of y waar is // (of beide) 20 november 2018

56 If-else if-statement Als… dan doe ik… Anders, als… dan doe ik…
if(expression1 == true) { printf(“Ik doe hier iets”); } else if (expression2 == true) printf(“Ik doe hier iets ANDERS”); … //meer else ifs else printf(“Ik doe hier weer iets ANDERS”); 20 november 2018

57 Kan ook anders! Switch statement
switch(variabele) { case value_1: //Doe iets break; case value_n: default: } 20 november 2018

58 While-statement Terwijl… Doe dit… anders NIET Test aan het begin!
while(expression) { //Zolang de expressie true is, doe ik dit. //Dit kan oneindig door gaan… } 20 november 2018

59 Do-While-statement Terwijl… Doe dit… anders NIET Test aan het eind! do
{ //Doe dit minimaal een keer, //Daarna controleer of je het nog een keer gaat doen in de //while //Dit kan oneindig door gaan… } while (expression); 20 november 2018

60 For-statement Doe iets voor een bepaald aantal keren!
Feitelijk een while loop met een counter: int x = 0; //Begin conditie while (x<10) //Eind conditie { //Doe iets… x = x + 1; //Werkende c.q. loop conditie } 20 november 2018

61 For-statement Doe iets voor een bepaald aantal keren!
Zo wordt de for loop ook wel gebruikt. for(begin_conditie; eind_conditie; werkende_conditie) { //Doe iets } for(int x=0; x<10; x=x+1) Vaak gebruikt samen met increment/decrement! 20 november 2018

62 5. Style, format & Layout 20 november 2018

63 Style, format & Layout Belangrijk: Overzicht houden.
Leesbaar en begrijpbaar, ook voor anderen! Helpt met foutzoeken Daarvoor zijn er aantal stijl regels: (Pas ze toe naar eigen inzicht, weet dat ‘t er is) 20 november 2018

64 Style rule 1: Opbouw van een programma:
Begin je programma met een header: /***************************************************\ | R.J. Haccou | | | | C-programmeren header //Titel | | //Nuttige informatie over ‘t project | \***************************************************/ 20 november 2018

65 Style rule 1: Gevolgd door files en libraries:
//Files and libraries #include <stdio.h> #include <stdlib.h> #include <math.h> Declareren voor je ze kan gebruiken! Op een standaard plek, boven in je programma! 20 november 2018

66 Style rule 1: Gevolgd door constanten:
//Constants #define PI #define G 9.81 Declareren voor je ze kan gebruiken! Op een standaard plek, boven in je programma! 20 november 2018

67 Style rule 1: Gevolg door globale variabelen.
//Global variables Int x, y, z; Int nNumber; Char cName; Declareren voor je ze kan gebruiken! Op een standaard plek, boven in je programma! Ook binnen functies, variabele bovenin! *Voorkom zoveel mogelijk! 20 november 2018

68 Style rule #1: Opbouw Gevolgd door het declareren van functie prototypen! Nette lijst van functies die toegepast worden Main eerste functie is die je tegen komt //Function list void myFunction(int x); int mySecondFunction(int x, int y); //format: return_type function_name (type arg1, type arg2, …); int main(void) { //Do something }//End of main void myFunction(int x) 20 november 2018 Eventuele voettekst

69 Style rule #2: Commentaar
Gebruik commentaar om dingen toe te lichten! Leesbaar en begrijpbaar, ook voor anderen! Helpt met foutzoeken // Compute velocity. dVelocity = G * dTime; 20 november 2018

70 Style rule #3: Witte regels, inspringingen
Gebruik witregels om blokken te scheiden Overzichtelijk! Leesbaar en begrijpbaar, ook voor anderen! // Compute velocity. dVelocity = G * dTime; // Compute new distance. dDistance = 0.5 * G * dTime * dTime; 20 november 2018

71 Style rule #3: Witte regels, inspringingen
Gebruik inspringingen voor functies en statements: Overzichtelijk! Leesbaar en begrijpbaar, ook voor anderen! int main(void) { //begin of main printf(“Hello world.\n”); if (…) … //Do something. } //End of if. } //End of main. 20 november 2018

72 Style rule #4: Hungarian notatie
Voeg een prefix toe aan de naam van je variabele, Weet welk type variabele Hoeft niet terug te zoeken naar declaratie Type Prefix Example char ch chCharacter int n nAge unsigned u uID long l lHours float fl flAngle double d dSalary BOOL b bReady WORD w wSize DWORD dw dwError pointer p pValue string sz szName 20 november 2018

73 Style rule #5: Symbolische constante
Onderscheid constanten van variabelen door ze volledig in uppercases neer te zetten: //Constants #define PI #define G 9.81 20 november 2018

74 Style rule #6: Consistentie
Consistent zijn zorgt voor overzicht! Doe het wel of niet, niet beide half… Style rule #7: Haakjes Gebruik haakjes Betere leesbaarheid van formules Minder fouten in formules 20 november 2018

75 Style rule #8: Opbreken van lange formules
Split formules in meerdere lijnen Betere leesbaarheid van formules Minder fouten in formules Tussen resultaten tonen voor fout zoeken! dResult = (((lfX + lfY) * (dEps / (fSum + dLength)) + nTotal) + 0.5); Beter: lfHelp_1 = lfX + lfY; lfHelp_2 = dEps / (fSum + dLength); dResult = ( (lfHelp_1 * lfHelp_2 + nTotal) + 0.5); 20 november 2018

76 Style rule #9: Gebruik prompts (printf)
Vertel de operator wat er gedaan moet worden: Printf(“Enter new time value in seconds: “); Scanf(“%lf”,&dTime); In command window wordt dit dus: Enter new time value in seconds: _ 20 november 2018

77 Style rule #10: Zo expliciet mogelijk!
Eenheden zijn belangrijk, ook bij programma’s. Geef ze mee bij je prompts, maar ook in de output! Printf(“Enter new time value in seconds: “); Printf(“velocity = %8.3lf m/s \n”, dVelocity); 20 november 2018

78 6. Arrays 20 november 2018

79 Arrays Een tabel van een bepaald datatype
Gereserveerd geheugen voor grote van datatype Opgebouwd als een normale variabele, maar dan met []! Voorbeeld: int nArray[10]; //Een integer array met 10 plaatsen Zelfde als 10 int variabelen aanmaken! Maar makkelijker te gebruiken 20 november 2018

80 Arrays Een tabel van een bepaald datatype
Gereserveerd geheugen voor grote van datatype Opgebouwd als een normale variabele, maar dan met [x]! En x defineerd de hoeveelheid plaatsen (‘cellen’) Voorbeeld: int nArray[5]; //Een integer array met 5 plaatsen (‘cellen’) 20 november 2018

81 Arrays Een individuele array cell werkt het zelfde als een normale variabele. Kan een waarde toegewezen krijgen Kan zijn waarde toewijzen aan een andere variabele Kan worden vergeleken met een variabele of constante 20 november 2018

82 Arrays Waarde toewijzen! Maak gebruik van het index nummer
Index nr#: Voorbeeld: int nArray[5]; nArray[0] = 1; nArray[1] = 9; nArray [2] = 2003; 20 november 2018

83 Arrays Waarde toewijzen! Kan ook meerdere cellen tegelijkertijd:
Index nr#: Voorbeeld: int nArray[5] = {1,9,2003}; //index 3 en 4 blijven leeg! 20 november 2018

84 Arrays Waarde toewijzen!
Alle cellen toewijzen zonder grootte te definieren. Voorbeeld: int nArray[] = {1,9,2003}; Geen grootte aangemaakt bij declaratie, wel groote geinitialiseerd door alle cellen een waarde toe tewijzen! 20 november 2018

85 Arrays Te initializeren en te gebruiken d.m.v. een for-loop:
Uitlezen van 100 int-waardes: int nArray[100]; for (int i=0; i<100; i++) { scanf(“%d”,&nArray[i]); } 20 november 2018

86 Arrays Te initializeren en te gebruiken d.m.v. een for-loop:
Printen van meerdere int-waardes: int nArray[]= {10,21,32,43,54,65,76,87,98,109}; for (int i=0; i<100; i++) { printf(“Value = %d \n”, nArray[i]); } 20 november 2018

87 Character arrays Ook te gebruiken met characters! Voorbeeld:
char chArray[]= {‘h’, ‘e’, ‘l’, ‘l’, ‘o’}; for (int i=0; i<5; i++) { printf(“%c”, chArray[i]); } 20 november 2018

88 Character arrays: Strings
Character arrays zijn veel gebruikt, worden ook wel “string(s)” genoemd. 1 Speciale eigenschap: Worden geeindigd met het null character: ‘\0’ ‘\0’ is een character in C, net als ‘\n’. Noemen ze ook wel ‘escape characters’ 20 november 2018

89 Escape characters Character arrays zijn veel gebruikt, worden ook wel “string(s)” genoemd. \a audible alert \b backspace \f form feed \n newline \r carriage return \t horizontal tab \v vertical tab \\ backslash \” double quote \’ single quote \? question mark 20 november 2018

90 Character arrays: Strings
Terug komend op ons vorige voorbeeld: char chArray[]= {‘h’, ‘e’, ‘l’, ‘l’, ‘o’}; Dit is (nog) geen string! char chArray[]= {‘h’, ‘e’, ‘l’, ‘l’, ‘o’, ‘\n’}; NU WEL! Let op: Nu is de size dus 6 characters lang. 20 november 2018

91 Character arrays: Strings
Strings kun je dus zo definieeren: char chArray[]= {‘h’, ‘e’, ‘l’, ‘l’, ‘o’, ‘\n’}; Maar makkelijker is: char chArray[]= “hello”; En dan te printen als: Printf(“%s”,chArray); 20 november 2018

92 Character arrays: Strings
Strings kun je dus zo definieeren: char chArray[]= {‘h’, ‘e’, ‘l’, ‘l’, ‘o’, ‘\n’}; Maar makkelijker is: char chArray[]= “hello”; En dan te printen als: Printf(“%s”,chArray); 20 november 2018

93 Character arrays: Strings
Strings kun je ook inlezen met scanf: Scanf(“%s”,chArray); Let op: Geen ‘&’ teken voor de variabele-naam! En vergeet niet de ruimte die je hiervoor nodig hebt! 20 november 2018

94 Character arrays: Strings
Probleem met strings (en uberhaupt arrays)… Je kan geen (volledige) arrays vergelijken of mathematische bewerkingen aan uitvoeren: = ,+ ,- ,== ,!= ,< ,> ,etc… Voor strings heb je daar functies voor: Strlen(s1) Lengte van s1, excluding= ‘\0’ strcpy(s1,s2) Kopieer s2 in s1 strcat(s1,s2) Voeg s2 toe aan s1 (append) strcmp(s1,s2) Vergelijk s1 met s2 20 november 2018

95 Multidimensionele Arrays
One-dimensioneel: int nArray[3] = { 1 ,9 ,2009 }; Multi-dimensioneel: Meerdere index-waardes int nMatrix[3][4] = { { 10 , 5, -3, 17 }, { 9, 0, 0, 8 }, { 32, 20, 1, 0} }; 20 november 2018

96 7. Functions 20 november 2018

97 Functies Wat zijn het, wat heb je er aan?
Stukken code c.q. blokken code Meerdere keren uit te voeren en her te gebruiken! Oproepen in main Structuur & leesbaarheid Fundementeel voor goed gestructureerde en goed geschreven code! 20 november 2018

98 Functies return_type functie_naam(type arg1, type arg2, …) {
doe iets! (met arg1 en arg2) return waarde; } 20 november 2018

99 Functies Net als variabelen: Eerst declareren, Dan gebruiken!
//Functie declaraties return_type functie_naam (type arg1, type arg2) int main() { } Ook wel functie prototypes! Bovenaan je programma! 20 november 2018

100 Functies Net als variabelen: Eerst declareren, Dan gebruiken!
//Functie declaraties return_type functie_naam (type arg1, type arg2) Waarbij arg1 en arg2 de namen van de variabelen zijn die je: In main aan de functie mee geeft, In de functie gebruikt op dezelfde manier als in main Meegegeven waardes veranderen niet in main! (tenzij pointers) 20 november 2018

101 Functies: Hoe werken ze?
20 november 2018

102 Functies: Geen return, geen argumenten
20 november 2018

103 Functies: No return, no arguments
void area(); // Prototype Declaration void main() { area(); } void area() float area_circle; float rad; printf("\nEnter the radius : "); scanf("%f",&rad); area_circle = 3.14 * rad * rad ; printf("Area of Circle = %f",area_circle); 20 november 2018

104 Functies: Geen return, wel argumenten
void area(float rad); // Prototype Declaration void main() { float rad; printf("nEnter the radius : "); scanf("%f",&rad); area(rad); } void area(float rad) float ar; ar = 3.14 * rad * rad ; printf("Area of Circle = %f",ar); 20 november 2018

105 Functies: Een return, plus argumenten
float area(float rad); // Prototype Declaration void main() { float rad, area; printf("nEnter the radius : "); scanf("%f",&rad); area = area(rad); } void area(float rad) float ar; ar = 3.14 * rad * rad ; printf("Area of Circle = %f",ar); return ar; 20 november 2018

106 Voor zelf studie Pointers Werken met strings File handling
Zelf libraries (headers & source files) maken 20 november 2018


Download ppt "C-Programmeren Voor BPE Avionica 20 november 2018."

Verwante presentaties


Ads door Google