Wat zijn de uitspraken bij het programmeren?

Beste antwoord

Het hangt af van de programmeertaal. Mijn favoriet, gewoon Engels, is een minimale maar praktische taal die slechts vijf soorten uitspraken heeft:

• Typedefinities, die altijd beginnen met A, AN of SOME; • Globale variabeledefinities, die altijd beginnen met THE; • Routinekoppen, die altijd beginnen met TO; • Voorwaardelijke uitspraken, die altijd beginnen met IF; en • Dwingende verklaringen, die met iets anders beginnen.

Een andere manier om ernaar te kijken, is deze:

Programmas bestaan ​​in eenvoudige bewoordingen uit drie dingen:

• Types, die de compiler / interpreter vertellen hoeveel bytes iets in het geheugen zal innemen;

• Variabelen, dit zijn feitelijke instanties van verschillende typen in het geheugen; en

• Routines (vaak functies of methoden of algoritmen genoemd) die variabelen in het geheugen creëren, manipuleren en uiteindelijk weggooien.

Maar drie andere dingen worden doorgaans gebruikt bij het maken van programmas:

• Een ontwikkelomgeving waarin programmas kunnen worden geschreven en getest;

• Een programmeertaal ; en

• Een standaardbibliotheek van vooraf gedefinieerde typen, variabelen en routines die kunnen worden gebruikt in plaats van alles vanaf nul te schrijven.

Hier is een voorbeeld met de gewone Engelse programmeertaal, getoond in de gewone Engelse ontwikkelomgeving (klik om te vergroten):

De ontwikkelomgeving omvat de desktopinterface, de alfabetische menus, de teksteditor die wordt gebruikt om de code te bewerken en de compiler die vertaalt de broncode in uitvoerbare code.

De programmeertaal bevat zowel statements (in zwart) als commentaren (in blauw). De meeste programmeertalen hebben een meer wiskundige syntaxis en zijn moeilijker te lezen en te schrijven.

De standaardbibliotheek van vooraf gedefinieerde typen, variabelen en routines worden in dit systeem “de noedel” genoemd en zijn geopend op het tweede tabblad van links onderaan het scherm. Typen zoals naam en lettertype en variabelen zoals het scherm en de groene pen, en routines zoals zet een naam en een grootte in een lettertype en teken een tekenreeks in het midden van een kader met een pen en een lettertype ”zijn gedefinieerd in de Noodle.

Wanneer het commando Uitvoeren wordt uitgevoerd (het staat onder het R-menu), wordt de gewone Engelse code gecompileerd in een uitvoerbaar Windows-programma en wordt het programma opgestart . Dat (niet-triviale) proces wordt hier geïllustreerd …

… en het resultaat op het scherm ziet er als volgt uit:

Meer over gewoon Engels programmeren is hier te vinden:

The Osmosian Order of Plain English Programmers heet u welkom

Et voila!

Antwoord

Control statements stellen ons in staat om de stroom van programmacontrole te specificeren; dat wil zeggen, de volgorde waarin de instructies in een programma moeten worden uitgevoerd. Ze maken het mogelijk om beslissingen te nemen, taken herhaaldelijk uit te voeren of om van de ene sectie van de code naar de andere te springen.

Er zijn vier soorten controleverklaringen in C:

  1. Beslissingsverklaringen
  2. Selectieverklaringen
  3. Herhalingsverklaringen
  4. Sprongverklaringen

Decision Making Statement: de if-else-verklaring

De if-else-verklaring wordt gebruikt om een ​​logische test uit te voeren en vervolgens een van de twee mogelijke acties te ondernemen, afhankelijk van de uitkomst van de test (dwz of de uitkomst waar of niet waar is).

Syntaxis:

if (condition)

{

statements

}

else

{

statements

}

Als de voorwaarde gespecificeerd in de if-instructie evalueert naar true, de statements binnen het if-blok worden uitgevoerd en vervolgens wordt de controle overgebracht naar de instructie onmiddellijk na het if-blok. Zelfs als de voorwaarde onwaar is en er geen else-blok aanwezig is, wordt de controle direct na het if-blok overgedragen naar de instructie.

Het else-gedeelte is alleen vereist als een bepaalde reeks instructies moet worden uitgevoerd als de voorwaarde resulteert in onwaar. Het is belangrijk op te merken dat de voorwaarde altijd tussen haakjes wordt gespecificeerd en dat het een goede gewoonte is om de instructies in het if-blok of in het else-blok tussen accolades te plaatsen, of het nu een enkele instructie of een samengestelde instructie is.

Het volgende programma controleert of het ingevoerde getal positief of negatief is.

#include

int main( )

{

int a;

printf("n Enter a number:");

scanf("\%d", &a);

if(a>0)

{

printf( "n The number \%d is positive.",a);

}

else

{

printf("n The number \%d is negative.",a);

}

return 0;

}

Het volgende programma vergelijkt twee strings om te controleren of ze gelijk zijn of niet.

#include

#include

int main( )

{

char a[20] , b[20];

printf("n Enter the first string:");

scanf("\%s",a);

printf("n Enter the second string:");

scanf("\%s",b);

if((strcmp(a,b)==0))

{

printf("nStrings are the same");

}

else

{

printf("nStrings are different");

}

return 0;

}

Het bovenstaande programma vergelijkt twee strings om te controleren of ze hetzelfde zijn of niet. Hiervoor wordt de functie strcmp gebruikt. Het wordt gedeclareerd in het string.h bestand als:

int strcmp(const char *s1, const char *s2);

Het vergelijkt de string waarnaar wordt verwezen door s1 naar de tekenreeks waarnaar wordt verwezen door s2. De functie strcmp retourneert een geheel getal groter dan, gelijk aan of kleiner dan nul, zoals de tekenreeks waarnaar wordt verwezen door s1 groter is dan , gelijk aan of kleiner dan de string waarnaar wordt verwezen door s2.

Daarom, in het bovenstaande programma, als de twee strings a en b zijn gelijk, de strcmp -functie zou een 0 moeten retourneren. Als het een 0 retourneert, zijn de strings hetzelfde ; anders zijn ze verschillend.

Geneste if and if-else-verklaringen

Het is ook mogelijk om insluiten of nest if-else-statements in elkaar. Nesten is handig in situaties waarin een van de verschillende acties moet worden geselecteerd.

De algemene indeling van een geneste if-else-instructie is:

if(condition1)

{

// statement(s);

}

else if(condition2)

{

//statement(s);

}

.

.

.

.

else if (conditionN)

{

//statement(s);

}

else

{

//statement(s);

}

Het bovenstaande wordt ook wel de if-else-ladder genoemd . Tijdens de uitvoering van een geneste if-else-instructie, zodra een voorwaarde wordt aangetroffen die evalueert naar true, worden de instructies die bij dat specifieke if-blok horen, uitgevoerd en wordt de rest van de geneste if-else-instructies omzeild. Als geen van de voorwaarden waar is, wordt ofwel het laatste else-blok uitgevoerd of als het else-blok afwezig is, wordt de controle overgedragen naar de volgende instructie die direct na de else-if-ladder aanwezig is.

De het volgende programma maakt gebruik van de geneste if-else-instructie om de grootste van drie getallen te vinden.

#include

int main( )

{

int a, b,c;

a=6,b= 5, c=10;

if(a>b)

{

if(b>c)

{

printf("nGreatest is: " , a);

}

else if(c>a)

{

printf("nGreatest is: ", c);

}

}

else if(b>c) //outermost if-else block

{

printf("nGreatest is: " , b);

}

else

{

printf( "nGreatest is: " , c);

}

return 0;

}

Het bovenstaande programma vergelijkt drie gehele getallen, en drukt de grootste af.De eerste if-instructie vergelijkt de waarden van a en b. Als a>b waar is, wordt de programmabesturing overgedragen naar de if-else-instructie genest in het if-blok, waar b wordt vergeleken met c. Als b>c ook waar is, wordt de waarde van a afgedrukt; anders worden de waarde van c en a vergeleken en als c>a waar is, is de waarde van c wordt afgedrukt. Hierna wordt de rest van de if-else-ladder omzeild.

Als de eerste voorwaarde a>b echter onwaar is, wordt de controle direct overgedragen naar de buitenste andere -if blok, waarbij de waarde van b wordt vergeleken met c (zoals a is niet de beste). Als b>c waar is, wordt de waarde van b afgedrukt, anders wordt de waarde van c afgedrukt . Let op het nesten, het gebruik van beugels en de inspringing. Dit alles is vereist om duidelijkheid te behouden.

Selection Statement: the switch-case Statement

Een switch statement is gebruikt voor meerwegselecties die in verschillende codesegmenten vertakken op basis van de waarde van een variabele of uitdrukking. Deze uitdrukking of variabele moet van het gegevenstype integer zijn.

Syntaxis:

switch (expression)

{

case value1:

code segment1;

break;

case value2:

code segment2;

break;

.

.

.

case valueN:

code segmentN;

break;

default:

default code segment;

}

De waarde van deze uitdrukking wordt ofwel gegenereerd tijdens de uitvoering van het programma of ingelezen als gebruikersinvoer. De case waarvan de waarde dezelfde is als die van de expressie wordt geselecteerd en uitgevoerd. Het optionele standaard label wordt gebruikt om het codesegment te specificeren dat moet worden uitgevoerd wanneer de waarde van de uitdrukking niet overeenkomt met een van de hoofdletterwaarden.

De instructie break staat aan het einde van elke case. Als dat niet zo was, zou de uitvoering doorgaan naar het codesegment van het volgende geval zonder zelfs de casuswaarde te controleren. Stel dat een switch -instructie vijf hoofdletters bevat en de waarde van het derde hoofdlettergebruik overeenkomt met de waarde van expressie . Als er geen break-statement aanwezig was aan het einde van de derde casus, zouden alle cases na case 3 ook worden uitgevoerd samen met case 3. Als break aanwezig is, wordt alleen de vereiste case geselecteerd en uitgevoerd; waarna de controle wordt overgebracht naar de volgende instructie direct na de switchinstructie. Er is geen break na default omdat na het standaardgeval het besturingselement hoe dan ook direct na het omschakelen naar de volgende instructie wordt overgebracht.

Voorbeeld: een programma om de dag van de week af te drukken.

#include

int main( )

{

int day;

printf("nEnter the number of the day:");

scanf("\%d",&day);

switch(day)

{

case 1:

printf("Sunday");

break;

case 2:

printf("Monday");

break;

case 3:

printf("Tuesday");

break;

case 4:

printf("Wednesday");

break;

case 5:

break;

case 6:

printf("Friday");

break;

case 7:

printf("Saturday");

break;

default:

printf("Invalid choice");

}

return 0;

}

Dit is een heel eenvoudige programma dat de werking van de switch-case constructie uitlegt. Afhankelijk van het nummer dat door de gebruiker is ingevoerd, wordt het juiste geval geselecteerd en uitgevoerd.Als de gebruikersinvoer bijvoorbeeld 5 is, wordt case 5 uitgevoerd. De break instructie die aanwezig is in case 5 zal de uitvoering van de switch instructie pauzeren na case 5 en de controle wordt overgebracht naar de volgende instructie na switch, namelijk:

return 0;

Het is ook mogelijk om samengestelde instructies in te sluiten in het geval van een switch-instructie. Deze samengestelde verklaringen kunnen controlestructuren bevatten. Het is dus ook mogelijk om een ​​geneste switch te hebben door deze in een case in te bedden.

Alle programmas die zijn geschreven met de instructie switch-case kunnen ook worden geschreven met de instructie if-else. Het is echter verstandig om de instructie if te gebruiken wanneer u actie moet ondernemen na het evalueren van een eenvoudige of complexe voorwaarde die een combinatie van relationele en logische uitdrukkingen kan omvatten (bijv. (if((a!=0)&&(b>5))).

Als u uit een grote groep waarden moet kiezen, zal een instructie switch veel sneller werken dan een set geneste ifs. De switch verschilt van de if in die switch kan alleen op gelijkheid testen, terwijl if elk type Booleaanse expressie kan evalueren.

De switch-instructie moet worden gebruikt wanneer men een keuze moet maken uit een gegeven set van keuzes. De switch case-instructie wordt over het algemeen gebruikt in menutoepassingen . Het meest gebruikelijke gebruik van een switch-case-instructie is bij gegevensverwerking of bestandsverwerking. De meeste bestandsafhandeling omvat de algemene functies: een bestand maken, records toevoegen, records verwijderen, records bijwerken, het volledige bestand of enkele selectieve records afdrukken. Het volgende programma geeft een idee van hoe de switch case-instructie kan worden gebruikt bij het verwerken van gegevens. Het heeft geen betrekking op de code voor bestandsverwerking, aangezien we bestandsafhandeling in C pas kunnen bespreken nadat we geavanceerde concepten zoals pointers, structuren en unions hebben geleerd.

Voorbeeld: een switch case-instructie die wordt gebruikt bij de verwerking van gegevensbestanden.

#include

int main()

{ //create file &set file pointer .

int choice;

printf("n Please select from the following options:");

printf("n 1. Add a record at the end of the file.");

printf("n 2. Add a record at the beginning of the file:");

printf("n 3. Add a record after a particular record:";

printf("nPlease enter your choice:(1/2/3)?");

scanf("\%d",&choice);

switch(choice)

{

case 1:

//code to add record at the end of the file

break;

case 2:

//code to add record at the beginning of the file

break;

case 3:

//code to add record after a particular record

break;

default:

printf("n Wrong Choice");

}

return 0;

}

Bedankt ..

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *