Newsgroup: it.comp.lang.c
Titolo: Presentazione + piccolo chiarimento :)

Salve a tutti ragazzi, ho lurkato un po' il ng per imparare qualcosa, 
visto che sono soltanto all'inizio dello studio del C.
Credo che in questo mese vi tartasserò, visto che fra un po' avrò 
l'esame, spero (per me) resisterete :P
Adesso passiamo al mio piccolo dubbio.
Ho appena fatto un esercizio che mi richiedeva di trovare un elemento in 
ingresso data una matrice bidimensionale. Per semplificare il tutto 
preso una matrice predefinita. Ecco il codice:
#include <stdio.h>
char matrice[5][4];
char ele;
int j,i,k;
main()
  {	/* Carico la matrice */
   for(j=0;j<5;j++)
    for(i=0;i<4;i++) {
     printf("Inserisci carattere in posizione %d,%d: ", j,i);
     scanf("%1s", &matrice[j][i]);
     }
	/* Richiesta valore in ingresso */
   printf("\nInserisci valore da ricercare: ");
   scanf("%1s", &ele);
	/* Ricerca valore */
   k=0;
   for(j=0;j<5;j++)
    for(i=0;i<4;i++) {
     if(matrice[j][i]==ele) {
      printf("\nL'elemento %c e' presente nella posizione %d,%d", ele,j,i);
      k=1;
     }
    };
   if(k==0) printf("Elemento non presente");
  }
L'unico problema che riscontro è che se cerco un elemento che si trova 
nella posizione 0,0 questo non mi viene visualizzato. Sapete dirmi 
perchè? :)

 perchè? :)
A me funziona correttamente!
Testato con : linux e gcc :))
Ciao Max
--
 Secondo alcuni autorevoli testi di tecnica Aeronautica,   
 il calabrone non può volare, a causa della forma e del    
 peso del proprio corpo in rapporto alla superficie alare. 
 Ma il calabrone non lo sa e perciò continua a volare.     
                     - Igor Sikorsky -                     

 Testato con : linux e gcc :))
io uso il turbo c, e in effetti vorrei cambiare, è proprio scarno.
anche se vado un po' OT col topic, mi consiglieresti qualche altro 
compilatore? magari con relativo link :)
Ho cercato sulla rete il Borland C++, ma non ci ho capito una mazza...a 
parte il fatto che è a pagamento. Ho provato a scaricare la versione che 
c'è su internet ma da quel che ho capito funziona con linee di comando, 
e non sono molto pratico su queste cose...qualcosa di più semplice c'è? :)
-- 
Convolvulaceo, currently on: ICGSH - ICCP
[HT] F.C. Catania 2003 (239389) - V.5
#666 Club dei Mille
Junior Manager in IHNF - Membro in ITF
Stagione 21 - 1° in V.5

perchè? :)
Il problema e' che usi scanf("%1s",&ele) per leggere un carattere
e questo e' un errore perche' una stringa di un carattere (%1s)
richiede uno spazio di almeno due char per essere memorizzata
(il carattere e il terminatore '\0').
Per leggere un solo carattere puoi usare scanf(" %c",&ele).
HTH
Andrea

Testato con : linux e gcc :))
C'e' un detto che si applica bene alla programmazione:
se qualcosa funziona perfettamente significa che non
hai guardato bene...
Andrea

 parte il fatto che è a pagamento.
E' pieno di compilatori gratuiti....
a partire dal gcc su linux ed i suoi vari port per windows:
http://www.mingw.org/
http://www.delorie.com/djgpp/
http://www.cygwin.com/
questi sono solo a riga di comando ma ci sono anche IDE:
http://www.bloodshed.net/devcpp.html
anzi, ti consiglierei proprio di usare questo e' una buona (mi dicono) IDE
che usa il compilatore mingw (incluso).
cosi' hai una soluzione completa.
Altrimenti, senza IDE, puoi trovare anche il buonissimo compilatore della
microsoft, il VC++ 2003 da riga di comando che e' gratuito, ovvimente per la
versione con tanto di IDE devi pagare.
Ovviamente tutti questi sono compilatori C++ ma in grado di compilare anche
codice C.
Tommy