Evolvix
01-12-2012, 11:15
Buongiorno a tutti, sono nuovo ! Da poco più di una settimana ho incominciato a seguire delle videolezioni per imparare le basi del linguaggio C, quindi sono alle prime armi e lo vedrete dai progetti che vi illusterò. Premetto che come compilatore uso Notepad++, poi una volta salvato il file, attraverso il prompt dei comandi e grazie al GCC Compiler, lo trasformo in un eseguibile (.exe) per poi eseguirlo. I problemi che riscontro nei miei progetti non sono errori nella compilazione che non capisco, dato che sono riuscito a trasformare tutti i progetti in eseguibili e questo vuol dire che non ci sono errori, ma sono errori (credo) del prompt. Vi illustro il primo progetto:
#include <stdio.h>
#include <conio.h>
int main() {
int a, b, somma;
printf("Inserire un numero intero: ", a);
scanf("%d", &a);
printf("\nInserire un secondo numero intero: ", b);
scanf("%d%", &b);
somma = a + b;
printf("\nLa somma dei due numeri inseriti e' %d", somma);
_getch();
return 0;
}
Si tratta di sommare due numeri: inserisco il primo numero, clicco invio; inserisco il secondo numero, clicco invio ma non mi fa il calcolo. Solo se inserisco un altro numero staccandolo dall'ultimo e poi premendo invio mi fa il calcolo, es: 2 --> Invio --> 2 --> Invio --> Stacco ed inserisco --> Invio --> E me lo calcola.
Ecco un altro problema:
#include <stdio.h>
#include <conio.h>
int main() {
int num, cif1, cif2, cif3, cif4, cif5;
printf("Digita un numero di cinque cifre, questo verra' scritto cifra per cifra: ", num);
scanf("%d", &num);
cif1 == num/10000;
printf("%d", &cif1);
cif2 == (num-cif1*10000)/1000;
printf(" %d", &cif2);
cif3 == (num-cif1*10000-cif2*1000)/100;
printf(" %d", &cif3);
cif4 == (num-cif1*10000-cif2*1000-cif3*100)/10;
printf(" %d", &cif4);
cif5 == (num-cif1*10000-cif2*1000-cif3*100-cif4*10)/1;
printf(" %d", &cif5);
if(num < 10000) {
printf("\nErrore: il numero inserito e' minore di cinque cifre.");
}
if(num > 99999) {
printf("\nErrore: il numero inserito e' maggiore di cinque cifre.");
}
_getch();
return 0;
}
Quando premo invio dopo aver inserito il numero, mi escono cinque numeri strani: 2293336 2293332 2293338 2293334 2293330...
:confused:
#include <stdio.h>
#include <conio.h>
int main() {
int a, b, somma;
printf("Inserire un numero intero: ", a);
scanf("%d", &a);
printf("\nInserire un secondo numero intero: ", b);
scanf("%d%", &b);
somma = a + b;
printf("\nLa somma dei due numeri inseriti e' %d", somma);
_getch();
return 0;
}
Si tratta di sommare due numeri: inserisco il primo numero, clicco invio; inserisco il secondo numero, clicco invio ma non mi fa il calcolo. Solo se inserisco un altro numero staccandolo dall'ultimo e poi premendo invio mi fa il calcolo, es: 2 --> Invio --> 2 --> Invio --> Stacco ed inserisco --> Invio --> E me lo calcola.
Ecco un altro problema:
#include <stdio.h>
#include <conio.h>
int main() {
int num, cif1, cif2, cif3, cif4, cif5;
printf("Digita un numero di cinque cifre, questo verra' scritto cifra per cifra: ", num);
scanf("%d", &num);
cif1 == num/10000;
printf("%d", &cif1);
cif2 == (num-cif1*10000)/1000;
printf(" %d", &cif2);
cif3 == (num-cif1*10000-cif2*1000)/100;
printf(" %d", &cif3);
cif4 == (num-cif1*10000-cif2*1000-cif3*100)/10;
printf(" %d", &cif4);
cif5 == (num-cif1*10000-cif2*1000-cif3*100-cif4*10)/1;
printf(" %d", &cif5);
if(num < 10000) {
printf("\nErrore: il numero inserito e' minore di cinque cifre.");
}
if(num > 99999) {
printf("\nErrore: il numero inserito e' maggiore di cinque cifre.");
}
_getch();
return 0;
}
Quando premo invio dopo aver inserito il numero, mi escono cinque numeri strani: 2293336 2293332 2293338 2293334 2293330...
:confused: