|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jan 2005
Città: London, United Kingdom
Messaggi: 959
|
C - Niubbo: cosa posso fare ora?
Ciao a tutti!
Ho appena iniziato a fare del C da basso basso...conosco circa tutte le cose di base (printf, scanf, if, else, while...). Ho creato un programmino piccolo piccolo (questo ) cosa posso fare ora? Non ho nessun'idea. Grazie
__________________
zattix |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
|
puntatori
hai bisogno di molto esercizio per capirli bene. |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Nov 2004
Città: Padova
Messaggi: 2342
|
prova anche a fare pratica con i vettori e le stringhe, vanno a nozze con i puntatori
__________________
CPU Ryzen 2600 @ 3,95Ghz + Bequiet Dark Rock TF / MB Asus X470-F Gaming / RAM 2x8GB DDR4 G.Skill FlareX 3200 CL14 / VGA Sapphire RX 7900 XT Nitro+ @ 3200Mhz / SSD Samsung 970 Pro 512GB + Sandisk 240GB Plus + Sandisk 960GB Ultra II PSU Seasonic Platinum P-660 / Headset Kingston HyperX Flight |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
|
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Mar 2003
Messaggi: 2155
|
bella, siamo in tema di niubbi... è un po' che cero di imparare bene il c ma, causa impegni, sono rimasto un po' indietro... adesso mi sono sparato i capitoli del Kernighan Ritchie e di un vecchio manuale di Turbo C sui cicli (i vari if-then-else, for, while, switch, etc...), gli array e le cose fondamentali, e prima di addentrarmi nel magico mondo dei puntatori preferivo pormi qualche problema e provare a risolverlo con programmi via via più complessi...
...ad esempio oggi ho provato a fare un semplice programma per la media dei voti... che ne dite? Codice:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int i;
float somma, voto[100], numero;
printf("Inserisci i voti, digita 0 (zero) per terminare l'inserimento\n\n");
for(i=0, numero=0;i<100;i++, numero++) {
printf("Inserisci un voto ");
scanf("%f", &voto[i]);
if (voto[i] == 0) break;
}
for(i=0, somma=0.0;i<numero;i++) somma = somma + voto[i];
printf("\n--> La media e' %f\n\n", somma/numero);
system("PAUSE");
return 0;
}
__________________
Asus P4C800 ► Northwood-C 2,8 GHz @ 3,4 GHz ► Thermalright SP94 |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
@Cecco BS: sembra andare abbastanza bene, anche se potevi migliorare qualcosa. Potevi anche non usare il tipo float, basta sostituire questa linea:
Codice:
printf("\n--> La media e' %f\n\n", somma/numero);
Codice:
printf("\n--> La media e' %f\n\n", ((float)somma/(float)numero));
Codice:
somma = somma + voto[i]; Codice:
somma += voto[i];
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Mar 2003
Messaggi: 2155
|
alla seconda cosa non avevo pensato, grazie!!
Alla prima sì, al fatto di... aspetta, si dice fare un cast, giusto? Insomma al fatto di "forzare" il float... però poi ho lasciato la dichiarazione iniziale float per maggior linearità... facendo come mi hai suggerito è meglio? Guadagnerei qualcosa in termini di efficienza usando meno memoria?
__________________
Asus P4C800 ► Northwood-C 2,8 GHz @ 3,4 GHz ► Thermalright SP94 |
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Sep 2001
Città: Vicopisano (PI)
Messaggi: 11652
|
Quote:
__________________
>>PARTECIPA AI PROGETTI DI CALCOLO DISTRIBUITO CON BOINC.Italy!<<
You may say I'm a dreamer - But I'm not the only one - I hope someday you'll join us - And the team will be the 1# one BoincEmperor 1° Livello - Rotoloni DOCET!! Cactus rulez!! ![]() |
|
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Oct 2001
Messaggi: 11471
|
Quote:
ciao |
|
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Beh...non proprio...sono operatori diversi... Se il compilatore è particolarmente intelligente verrà tradotto con lo stesso codice, se non lo è verranno usati codici diversi...con un ovvio vantaggio prestazionale per il secondo metodo...
|
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Mar 2003
Messaggi: 2155
|
grazie mille dei suggerimenti... qualche suggerimento per esercitarmi? Cosa posso fare ora? Che funzionalità posso aggiungere?
__________________
Asus P4C800 ► Northwood-C 2,8 GHz @ 3,4 GHz ► Thermalright SP94 |
|
|
|
|
|
#14 |
|
Senior Member
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
|
prova a fare questo, non guardare la soluzione però!
http://212.110.13.72/forum/showthread.php?t=949444 |
|
|
|
|
|
#15 | |
|
Senior Member
Iscritto dal: Mar 2005
Messaggi: 1653
|
Quote:
Voi direte "Vabbe', come si fa a prendere zero?" Si prende, si prende... Comunque, per tornare in tema, forse bisognerebbe escogitare un altro modo per segnalare che si e' finito di inserire i voti. Voi come fareste? Gica
__________________
gica78r@ncc-1701:~$ tar -c tar: Codardamente mi rifiuto di creare un archivio vuoto |
|
|
|
|
|
|
#16 | |
|
Senior Member
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
|
Quote:
|
|
|
|
|
|
|
#17 | |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Quote:
P.S.: orrore! torna al vecchio avatar!
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
|
#18 |
|
Senior Member
Iscritto dal: Mar 2003
Messaggi: 2155
|
è un programma generico, dovrebbe funzionare sia per la scuola che per l'università... non avevo sinceramente considerato la possibilità di prendere 0!!
__________________
Asus P4C800 ► Northwood-C 2,8 GHz @ 3,4 GHz ► Thermalright SP94 |
|
|
|
|
|
#19 | |
|
Senior Member
Iscritto dal: Mar 2003
Messaggi: 2155
|
Quote:
__________________
Asus P4C800 ► Northwood-C 2,8 GHz @ 3,4 GHz ► Thermalright SP94 |
|
|
|
|
|
|
#20 |
|
Senior Member
Iscritto dal: Mar 2003
Messaggi: 2155
|
beh, come soluzione si potrebbe far in modo che il ciclo termini quando si preme un carattere, tipo '$'...
__________________
Asus P4C800 ► Northwood-C 2,8 GHz @ 3,4 GHz ► Thermalright SP94 |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:09.




















