Emaborsa
10-07-2010, 16:48
Dopo un anno di università posso dire di saper programmare in JAVA, non sono un mostro, ma me la cavo. Durante l'estate volevo imparare anche C e C#. Iniziato con C: è abbastanza semplice, bene o male le cose basilari sono quelle, in Java usavo JOptionPane e System.in per prendere valori Input tastiera; in C invece posso usare getchar() se è per un char, scanf() mi sembra meglio per int.
Il problema è che se metto più comandi in fila sia di scanf o getchar e poi avvio l'applicazione per testare, me li salta tutti e non mi fa immettere nulla....
Piccolo Esempio:
#include <stdio.h>
#define MAXLINEE 100
#define MAXCOLONNE 100
int mat[MAXLINEE][MAXCOLONNE];
main() {
int n, m;
int i, j;
do {
printf("\nNumero di linee: ");
scanf("%d", &n);
} while ((n >= MAXLINEE) || (n < 1));
do {
printf("\nNumero di colonne: ");
scanf("%d", &m);
} while ((m >= MAXCOLONNE) || (m < 1));
printf("\n \n CARICAMENTO DELLA MATRICE \n \n");
for (i = 0; i < n; i++) {
for (j = 0; j < m; j++) {
printf("\nInserisci linea %d colonna %d linea val: ", i, j);
scanf("d", &mat[i][j]);
}
}
for (i=0; i<n;i++){
printf("\n");
for (j=0; j<m; j++){
printf("%5d", mat[i][j]);
}
}
}
Il problema è che se metto più comandi in fila sia di scanf o getchar e poi avvio l'applicazione per testare, me li salta tutti e non mi fa immettere nulla....
Piccolo Esempio:
#include <stdio.h>
#define MAXLINEE 100
#define MAXCOLONNE 100
int mat[MAXLINEE][MAXCOLONNE];
main() {
int n, m;
int i, j;
do {
printf("\nNumero di linee: ");
scanf("%d", &n);
} while ((n >= MAXLINEE) || (n < 1));
do {
printf("\nNumero di colonne: ");
scanf("%d", &m);
} while ((m >= MAXCOLONNE) || (m < 1));
printf("\n \n CARICAMENTO DELLA MATRICE \n \n");
for (i = 0; i < n; i++) {
for (j = 0; j < m; j++) {
printf("\nInserisci linea %d colonna %d linea val: ", i, j);
scanf("d", &mat[i][j]);
}
}
for (i=0; i<n;i++){
printf("\n");
for (j=0; j<m; j++){
printf("%5d", mat[i][j]);
}
}
}