Användning av Structs
Vid utformning av program är valet av representation för de data som ska hanteras ett mycket viktigt steg.
Till exempel, om du vill skriva ett enkelt program för att automatisera beräkningen av antalet neutroner i en atom.
Där N är antalet neutroner, A är atomvikten för grundämnet, Z är antalet protoner. En funktion för att beräkna antalet neutroner i C skulle se ut så här:
int NeutronCount(float A, int Z)
{
int N = A - Z;
return N;
}
För att använda denna funktion måste du deklarera ett stort antal variabler med egenskaperna för varje kemiskt element utan att bli förvirrad.
Du verkar ha automatiserat beräkningarna, men har inte fått någon fördel vad gäller bekvämlighet eller hastighet. Det är mycket obekvämt att mata in parametrarna för ett kemiskt element varje gång, sedan skriva ner resultatet någonstans, etc.
char firstElementName[3];
int firstElementAtomicNum;
int firstElementValency;
double firstElementMass;
char secondElementName[3];
int secondElementAtomicNum;
int secondElementValency;
double secondElementMass;
char thirdElementName[3];
int thirdElementAtomicNum;
int thirdElementValency;
double thirdElementMass;
Och så vidare för ytterligare 118 kemiska element.
"Det vore bra om mitt favoritspråk, C, hade en mekanism för att beskriva och hantera komplex data", tänkte du.
Låt oss visuellt beskriva den framtida strukturen som kommer att beskriva vilket kemiskt element som helst, till exempel kisel "Si":
Det är ganska bekvämt. Istället för att skapa en mängd separata variabler kan du definiera en struktur för att lagra alla fält. I språket C finns allt du behöver för detta redan tillgängligt.
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
What is a structure in C and how do I define one?
Can you show an example of how to use a structure for chemical elements?
How does using structures improve code organization in this case?
Fantastiskt!
Completion betyg förbättrat till 4.35
Användning av Structs
Svep för att visa menyn
Vid utformning av program är valet av representation för de data som ska hanteras ett mycket viktigt steg.
Till exempel, om du vill skriva ett enkelt program för att automatisera beräkningen av antalet neutroner i en atom.
Där N är antalet neutroner, A är atomvikten för grundämnet, Z är antalet protoner. En funktion för att beräkna antalet neutroner i C skulle se ut så här:
int NeutronCount(float A, int Z)
{
int N = A - Z;
return N;
}
För att använda denna funktion måste du deklarera ett stort antal variabler med egenskaperna för varje kemiskt element utan att bli förvirrad.
Du verkar ha automatiserat beräkningarna, men har inte fått någon fördel vad gäller bekvämlighet eller hastighet. Det är mycket obekvämt att mata in parametrarna för ett kemiskt element varje gång, sedan skriva ner resultatet någonstans, etc.
char firstElementName[3];
int firstElementAtomicNum;
int firstElementValency;
double firstElementMass;
char secondElementName[3];
int secondElementAtomicNum;
int secondElementValency;
double secondElementMass;
char thirdElementName[3];
int thirdElementAtomicNum;
int thirdElementValency;
double thirdElementMass;
Och så vidare för ytterligare 118 kemiska element.
"Det vore bra om mitt favoritspråk, C, hade en mekanism för att beskriva och hantera komplex data", tänkte du.
Låt oss visuellt beskriva den framtida strukturen som kommer att beskriva vilket kemiskt element som helst, till exempel kisel "Si":
Det är ganska bekvämt. Istället för att skapa en mängd separata variabler kan du definiera en struktur för att lagra alla fält. I språket C finns allt du behöver för detta redan tillgängligt.
Tack för dina kommentarer!