Vraag : C++ uninitialized lokale variabele

Kerels,

I am enkel de C++… en hulp leren zouden ZEER gewaardeerd worden!!! Hieronder zijn de code en de outputfouten ik receiving.

thanks ben!
Mike

Code:

//Dit die programma berekent een ISP klantenrekening op pakketkeus en urenused.
#include
using wordt gebaseerd;

int hoofd ()
{
dubbele uren, // Aantal uren used
savingsB, // Maandelijkse besparingen voor pakket B
savingsC, // Maandelijkse besparingen voor pakket C
maandelijks;      Keus van cost
int. van // de Maandelijkse, het Pakket choice
Januari, Februari, Maart, April, Mei, Juni, Juli, Augustus, September, Oktober, November, December van //;
klusjesmaand;            // het verzoek van de Vertoning van de Maand selection


// om month
cout << „\ nPlease gaat de maand voor de het facturerings cyclus in: “; maand
cin >>;

// krijgt uren en berekent maandelijkse last voor Pakket A
cout << „\ nHow vele uren u gebruikte? “; uren
cin >>;

als (maand = de uren van Januari && > 744)
als (maand = de uren van Februari && > 672)
als (maand = de uren van Maart && > 744)
als (maand = de uren van April && > 720)
als (maand = de uren van Mei && > 744)
als (maand = de uren van Juni && > 720)
als (maand = de uren van Juli && > 744)
als (maand = de uren van Augustus && > 744)
als (maand = de uren van September && > 720)
als (maand = de uren van Oktober && > 744)
als (maand = de uren van November && > 720)
als (maand = de uren van December && > 744)
{
cout is << „\ nYou een ongeldige hoeveelheid uren ingegaan, begint \ n“
<< „gelieve het programma opnieuw en opnieuw te proberen. \ n \ n“;
terugkeer 0; de het pakketopties van de
}

// Vertoning en gelezen selection
cout <<“ \ nPlease selecteren het aantal voor uw pakket. \ n ";
cout << „\ n1. Verpak A \ n“;
cout <<“ \ N2. Pakket B \ n ";
cout << „\ n3. Pakket C \ n“;
cout <<“ \ nEnter het correcte aantal: „; keus
cin >>;

als (keus! = 1)
als (keus! = 2)
als (keus! = 3)
{de fout van de
// Opbrengst als de geldige keus niet wordt gemaakt en nieuw begin program
cout <<“ \ nYou een ongeldige selectie heeft gemaakt, begint gelieve het programma opnieuw en opnieuw te proberen. \ n \ n ";
terugkeer 0;
}

als (keus == 1)

als (uren > 10)
maandelijks = ((uren - 10) * 2.00) + 9.95;
else
maandelijks = 9.95; is het totale gepaste due
cout << „\ nYour totaal van de

// Vertoning $“ << maandelijkse <<“ \ n \ n ";

// berekent besparing met hoger tarief plans
als (uren >= 13)
{
savingsB = maandelijks - (((uren - 20) * 1.00) + 14.95);
cout << „als u aan Pakket B bevordert u $“ << savingsB <<“ \ n \ n " zou besparen;

als (uren >= 16)
{
savingsC = maandelijks - 19.95;
cout << „als u aan Pakket C bevordert u $“ << savingsC <<“ \ n \ n " zou besparen;
}
}

als (keus == 2)
{
// krijgt uren en berekent maandelijkse last voor Pakket B
cout << „\ nHow vele uren u gebruikte? “; uren
cin >>;

als (uren > 744)
{
cout is << „\ nYou een ongeldige hoeveelheid uren ingegaan, begint \ n“
<< „gelieve het programma opnieuw en opnieuw te proberen. \ n \ n“;
terugkeer 0;
}


als (uren > 20)
maandelijks = 14.95 + ((uren - 20) * 1.00);
else
maandelijks = 14.95; is het totale gepaste due
cout <<“ \ nYour totaal van de

// Vertoning $ " << maandelijkse << „\ n \ n“;

// berekent besparing met hoger tarief plans
als (uren >= 26)
{
savingsC = maandelijks - 19.95;
cout << „als u aan Pakket C bevordert u $“ << savingsC <<“ \ n \ n " zou besparen;
}
}

als (keus == 3)
{
// krijgt uren en berekent maandelijkse last voor Pakket C
cout << „\ nHow vele uren u gebruikte? “; uren
cin >>;

als (uren > 744)
{
cout is << „\ nYou een ongeldige hoeveelheid uren ingegaan, begint \ n“
<< „gelieve het programma opnieuw en opnieuw te proberen. \ n \ n“;
terugkeer 0;
}

maandelijks = 19.95; is het totale gepaste due
cout <<“ \ nYour totaal van de

// Vertoning $ " << maandelijkse << „\ n \ n“;
}
terugkeer 0;
}

Output:

1> Bouw begonnen: Project: ISP, Configuratie: Zuiver Win32
1>Build begon het 10:55 van 6/28/2010: 33 AM.
1>InitializeBuildStatus:
1> die „zuivert \ ISP.unsuccessfulbuild“ omdat „leiden tot AlwaysCreate“ specified.
1>ClCompile was: />1> ISP
1> c:\users\harrisms\docume nts \ visual studio 2010 \- projecten\- isp \- isp - 24.cpp (24): waarschuwing C4700: uninitialized de lokale veranderlijke studio/>nts \ visual 2010 van „Januari“ used
1> c:\users\harrisms\docume nts \ visual 2010 van „Februari“ used
1> c:\users\harrisms\docume nts \ visual 2010 van „Maart“ used
1> c:\users\harrisms\docume nts \ visual 2010 van „April“ used
1> c:\users\harrisms\docume nts \ visual 2010 van „Mei“ used
1> c:\users\harrisms\docume nts \ visual 2010 van „Juni“ used
1> c:\users\harrisms\docume nts \ visual 2010 van „Juli“ used
1> c:\users\harrisms\docume nts \ visual 2010 van „Augustus“ used
1> c:\users\harrisms\docume nts \ visual 2010 van „September“ used
1> c:\users\harrisms\docume nts \ visual 2010 van „Oktober“ used
1> c:\users\harrisms\docume nts \ visual 2010 van „November“ used
1> c:\users\harrisms\docume 1>ManifestResourceCompile:
1> Alle output omhoog-aan-date.
1>Manifest is:
1> Alle output omhoog-aan-date.
1>LinkEmbedManifest is:
1> Alle output omhoog-aan-date.
1> ISP.vcxproj is - > c:\users\harrisms\document s \ zuivert visuele studio 2010 van \- Projecten \- ISP \ \ ISP.exe
1>FinalizeBuildStatus:
1> die dossier schrappen „zuivert \ ISP.unsuccessfulbuild“.
1> wat betreft „zuivert \ ISP.lastbuildstate " .
1>
1>Build succeeded.
1>
1>Time verstreek 00:00: 01.68
========== bouwen: 1 volgend, 0 ontbroken, 0 bijgewerkt, 0 overgeslagen ==========

Antwoord : C++ uninitialized lokale variabele

O.k. lapte ik dit op. Ik bekeek niet de veranderlijke verklaringen…  Ik veronderstelde u koorden vergeleek, wat onnauwkeurig is van wat ik kan nu zien. Mijn verontschuldigingen.

Als wij de code aan uw originele post terugkeren, verklaarde u variabelen voor elke maand die (de namen van de maanden gebruikt als veranderlijke namen), maar u gaf de variabelen nooit een eerste waarde. Ik veronderstel Januari verondersteld om 1 is te zijn, zo blijven toewijzend waarden voor de rest variabelen:

    int. keus, // de keus van het Pakket
                  Januari = 1, Februari = 2, Maart = 3, April = 4, Mei = 5, Juni = 6, Juli = 7, Augustus = 8, September = 9, Oktober = 10, November = 11, December = 12;

De delen die ik over „IFS heb gezegd“ en de gelijkheidsexploitant blijft, niettemin. Negeer strcmp ()--het is onbelangrijk aan deze situatie. De gewijzigde code die de geheelvergelijkingen gebruikt voor de maanden zou zoals hieronder zijn.

Opnieuw, mijn verontschuldigingen voor het springen van het kanon en het leiden van u onderaan de verkeerde weg:)
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
als ((maand== Januari && uren > 744) ||
    (maand== Februari && uren > 672) ||
    (maand== Maart && uren > 744) ||
    (maand== April && uren > 720) ||
    (maand== Mei && uren > 744) ||
    (maand== Juni && uren > 720) ||
    (maand== Juli && uren > 744) ||
    (maand== Augustus && uren > 744) ||
    (maand== September && uren > 720) ||
    (maand== Oktober && uren > 744) ||
    (maand== November && uren > 720) ||
    (maand== December && uren > 744))
{
    cout  <>
           
Andere oplossingen  
 
programming4us programming4us