|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Sep 2008
Città: Messina
Messaggi: 991
|
[C] Mi viene visualizzato l'errore di windows all'avvio dell'eseguibile
Ciao ragazzi!
Nel voler esercitarmi sull'istruzione while e switch, case ho voluto creare un programma che mi permettesse, schiacciato un tasto, di accedere all'operazione matematica che desideravo. Fin qui l'idea mi sembra fattibile e pure il codice da scrivere molto semplice, solo che all'avvio dell'eseguibile appena inizia il ciclo while mi parte l'errore di windows, lo script che mi dice "invia" o "non inviare" per intenderci, e si chiude il tutto. Posto di seguito il sorgente...potreste dirmi dove commetto errori, perché il compilatore non me ne da ed io non riesco a trovarli Codice:
#include <stdio.h>
main ()
{
char operazione;
int n1, n2, somma, diff;
printf ("Digita i tasti indicati per selezionare un'operazione\n\t");
printf ("- Addizione ---> a\n\t");
printf ("- Sottrazione ---> s\n\t");
printf ("- Moltiplicazione ---> m\n\t");
printf ("- Divisione ---> d\n\t");
printf (" Exit ---> x\n\n");
printf ("Digita qui di seguito: ");
scanf ("%c", operazione);
while (operazione != 'x')
{
switch (operazione)
{
case 'a': // Inizia il blocco del'addizione
printf ("Hai selezionato l'addizione\n");
printf ("Inserisci il primo numero: \n");
scanf ("%d", n1);
printf ("Inserisci il secondo numero: \n");
scanf ("%d", n2);
somma = n1 + n2;
printf ("%d + %d = %d", n1, n2, somma);
break;
case 's': // Inizia il blocco della sottrazione
printf ("Hai selezionato la sottrazione\n");
printf ("Inserisci il primo numero: \n");
scanf ("%d", n1);
printf ("Inserisci il secondo numero: \n");
scanf ("%d", n2);
diff = n1 - n2;
printf ("%d + %d = %d", n1, n2, diff);
break;
}
}
}
__________________
PC/HTPC: Mac Mini 3,1 late 2009 | My Book Studio 2TB | LG M237WD monitor/tv | Logitech Z4 | Apple Magic Mouse | Apple Wireless Keyboard | Apple Remote Mobile: Samsung Galaxy Wonder i8150 cm9 |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jun 2001
Messaggi: 458
|
Ciao, metti questo:
Codice:
scanf ("%c", &operazione);
__________________
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Il primo problema visibile è quello dell'&... Altra osservazione: attento che così, fatta una prima scelta, ripeterai sempre la stessa operazione.
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
#4 | ||
|
Senior Member
Iscritto dal: Sep 2008
Città: Messina
Messaggi: 991
|
Quote:
Quote:
__________________
PC/HTPC: Mac Mini 3,1 late 2009 | My Book Studio 2TB | LG M237WD monitor/tv | Logitech Z4 | Apple Magic Mouse | Apple Wireless Keyboard | Apple Remote Mobile: Samsung Galaxy Wonder i8150 cm9 |
||
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Sep 2008
Città: Messina
Messaggi: 991
|
Quote:
__________________
PC/HTPC: Mac Mini 3,1 late 2009 | My Book Studio 2TB | LG M237WD monitor/tv | Logitech Z4 | Apple Magic Mouse | Apple Wireless Keyboard | Apple Remote Mobile: Samsung Galaxy Wonder i8150 cm9 |
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Mar 2005
Città: Morimondo city
Messaggi: 5491
|
edit ho postato senza leggere il codice
__________________
Khelidan |
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Quote:
Codice:
while (1)
{
if (input() == ESCI) break;
/* ... altrimenti ... */
}
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: Jan 2007
Messaggi: 1237
|
Quote:
Codice:
while (getchar() != '\n'); |
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Sep 2008
Città: Messina
Messaggi: 991
|
Ti ringrazio
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:25.











VIDEOLEZIONI di Matematica, Informatica, Fisica I & II e MOLTO altro, GRATIS !!! 









