Discussioni su argomenti di Informatica
16/02/2017, 19:41
buona sera...
ho questo problema che non riesco a risolvere:
devo scrivere un programma in cui io devo inserire ilo nome e il cognome, ma venga stampato: il cognome, una virgola e l'iniziale del nome seguito dal punto.
ESEMPIO OUTPUT:
Enter first and last name: Mario Rossi
Rossi, M.
Il mio programma è questo(ovviamente non è corretto)...
#include <stdio.h>
int main(void)
{
char n;
printf("inserisci il nome e il cognome: ");
n=getchar();
while(n!='\n'){
printf("%c",n);
n=getchar();}
return 0;
}
16/02/2017, 22:01
Ci sono principalmente due metodi per risolvere questo problema:
1. Memorizzare le due stringhe in due array di char e poi stampare il valore. A questo punto è immediato stampare il risultato.
- Codice:
char nome[80], cognome[80];
int ret = scanf("%79s %79s", nome, cognome);
if (ret != 2) { /* ERRORE */ }
printf(...)
2. Leggere un carattere per volta e quindi seguire un algoritmo più complicato simile al seguente pseudocodice
- Codice:
1. Ignorare ogni spazio
2. Memorizzare la prima lettera del nome.
3. Ignorare ogni altra lettera del nome.
4. Ignorare ogni spazio dopo il nome.
5. Stampare ogni carattere del cognome.
6. Stampare una virgola e uno spazio.
7. Stampare l'iniziale del nome.
8. Stampare il punto.
17/02/2017, 09:58
buongiorno, scusa se rispondo solo ora.
Ho provato a svolgere il secondo metodo che mi hai consigliato ma non riesco a sviluppare il codice corretto.
Se puoi darmi un ultimo aiuto ti ringrazio molto..
Grazie mille in anticipo
17/02/2017, 10:53
volevo solo farti sapere che alla fine sono riuscito a creare il programma....
ancora grazie pre l'aiuto
Skuola.net News è una testata giornalistica iscritta al Registro degli Operatori della Comunicazione.
Registrazione: n° 20792 del 23/12/2010.
©2000—
Skuola Network s.r.l. Tutti i diritti riservati. — P.I. 10404470014.