Aiuto sui linguaggi di programmazione
Moderatore: Staff
Regole del forum
1) Rispettare le idee altrui.
2) Evitare le offese dirette.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
1) Rispettare le idee altrui.
2) Evitare le offese dirette.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Ah, finalmente ho capito. Grazie, ma il testo non era chiaro. Alla prossima.
Ecco la prossima, praticamente l'ultima cosa che devo capire da printf() e scanf(). Supponiamo che io voglia fare un programma in cui un utente scrive 2 caratteri e tre numeri interi. Do printf("Inserisci due caratteri e tre numeri interi: "); quindi nel prompt l'utente come deve scrivere i caratteri ed i numeri? Li deve far separare da uno spazio vuoto? Oppure preme invio ogni volta che inserisce un numero od un carattere?
Ecco la prossima, praticamente l'ultima cosa che devo capire da printf() e scanf(). Supponiamo che io voglia fare un programma in cui un utente scrive 2 caratteri e tre numeri interi. Do printf("Inserisci due caratteri e tre numeri interi: "); quindi nel prompt l'utente come deve scrivere i caratteri ed i numeri? Li deve far separare da uno spazio vuoto? Oppure preme invio ogni volta che inserisce un numero od un carattere?
Qui in cosa sbaglio? Questo programma dovrebbe servire a far visualizzare i tre caratteri che l'utente scrive con la tastiera:
#include <stdio.h>
int main(void)
{
char c1, c2, c3;
printf("\nInserisci tre caratteri: ");
scanf("%c%c%c", &c1, &c2, &c3);
printf("Hai digitato %c%3c%3c\n\n", c1, c2, c3);
return 0;
}
p.s. vedo che giustamente questo è il forum di Slackware e che questo topic è un po' fuoriluogo. Si tiene in vita grazie a useless che risponde. Poichè non voglio abusare della sua disponibilità, vi chiedo se qualcuno studia il C ed è interessato a questo topic, altrimenti mi sposto su it.comp.lang.c oppure su forums.html.it visto che non ritengo giusto disturbarvi per ogni problema che incontro.
#include <stdio.h>
int main(void)
{
char c1, c2, c3;
printf("\nInserisci tre caratteri: ");
scanf("%c%c%c", &c1, &c2, &c3);
printf("Hai digitato %c%3c%3c\n\n", c1, c2, c3);
return 0;
}
p.s. vedo che giustamente questo è il forum di Slackware e che questo topic è un po' fuoriluogo. Si tiene in vita grazie a useless che risponde. Poichè non voglio abusare della sua disponibilità, vi chiedo se qualcuno studia il C ed è interessato a questo topic, altrimenti mi sposto su it.comp.lang.c oppure su forums.html.it visto che non ritengo giusto disturbarvi per ogni problema che incontro.
Oddio, ma suppongo che almeno esista qualche modo, che magari imparerò alla fine del libro, per evitare questo problerma. O no?
Mi rispondo da solo. Ho letto che scanf() legge i caratteri senza saltare gli spazi vuoti. Per cui se l'utente vuole che siano visualizzati, li deve scrivere tutti attaccati. Alla prox.
Mi rispondo da solo. Ho letto che scanf() legge i caratteri senza saltare gli spazi vuoti. Per cui se l'utente vuole che siano visualizzati, li deve scrivere tutti attaccati. Alla prox.
- Sari
- Linux 3.x

- Messaggi: 584
- Iscritto il: mer 16 feb 2005, 0:00
- Slackware: 12.1
- Kernel: 2.6.24
- Desktop: Gnome
- Località: Verona
Io posso dire che sto ancora studiando il c quindi ben venga.Vlk ha scritto:Qui in cosa sbaglio? Questo programma dovrebbe servire a far visualizzare i tre caratteri che l'utente scrive con la tastiera:
#include <stdio.h>
int main(void)
{
char c1, c2, c3;
printf("\nInserisci tre caratteri: ");
scanf("%c%c%c", &c1, &c2, &c3);
printf("Hai digitato %c%3c%3c\n\n", c1, c2, c3);
return 0;
}
p.s. vedo che giustamente questo è il forum di Slackware e che questo topic è un po' fuoriluogo. Si tiene in vita grazie a useless che risponde. Poichè non voglio abusare della sua disponibilità, vi chiedo se qualcuno studia il C ed è interessato a questo topic, altrimenti mi sposto su it.comp.lang.c oppure su forums.html.it visto che non ritengo giusto disturbarvi per ogni problema che incontro.
- useless
- Staff

- Messaggi: 3896
- Iscritto il: dom 12 ott 2003, 0:00
- Località: A place where the streets have no name
- Contatta:
è solo quando usi "%c" che non vengono saltati gli spazi. ti rimando alla manpage di printf x i dettagli (tra l'altro puoi vedere comodamente i man in konqueror scrivendo come indirizzo ad esempio "#printf"). comunque x leggere singoli caratteri da tastiera è meglio usare getchar().Vlk ha scritto:Mi rispondo da solo. Ho letto che scanf() legge i caratteri senza saltare gli spazi vuoti. Per cui se l'utente vuole che siano visualizzati, li deve scrivere tutti attaccati. Alla prox.
- lupix
- Linux 1.x

- Messaggi: 102
- Iscritto il: dom 7 nov 2004, 0:00
- Nome Cognome: Luciano
- Località: Los Angeles
Se si gioca con getchar() e putchar()incominci a fare qualcosa di divertente...useless ha scritto:è solo quando usi "%c" che non vengono saltati gli spazi. ti rimando alla manpage di printf x i dettagli (tra l'altro puoi vedere comodamente i man in konqueror scrivendo come indirizzo ad esempio "#printf"). comunque x leggere singoli caratteri da tastiera è meglio usare getchar().Vlk ha scritto:Mi rispondo da solo. Ho letto che scanf() legge i caratteri senza saltare gli spazi vuoti. Per cui se l'utente vuole che siano visualizzati, li deve scrivere tutti attaccati. Alla prox.
Per esempio ti fai il tuo cat e tante altre belle cosine....ciao