Ciao a tutti,
avevo un piccolo problema con questo programma.
Il compilatore non mi da errori di sintassi ma una volta scritto il nome e il cognome separati da uno spazio il programma termina; invece di restituire le lettere tutte maiuscole! Qualcuno saprebbe indicarmi il perchè?!
codice:
//Avendo un vettore di 30.Introdurre in input nome e cognome (con spazio che divide i due e l'introduzione dei dati deve finere con
// un punto)le prime lettere del nome e del cognome devono essere scritte in maiuscolo, realizzare un aplicativo che mi
// trasformi tutti i caratteri in maiuscolo.//
#include<stdio.h>
#include<stdlib.h>
char vett[30];
char nome;
int i,x,y,n;
void caricamento()
{
do{
printf("Scrivi nome e cognome.");
scanf("%c",vett[i]);
if (vett[0]<97)
printf("La prima lettera del nome deve essere maiuscola");
y=1;
if(vett[i]=32)
x=i;
if(vett[x+1]<97)
printf("La prima lettera del cognome deve essere maiuscola");
y=1;
i++;
n++;
}while(vett[i]!=46 && y!=1);
}
void codifica()
{
for(i=1;i<x;i++)
{
vett[i]=vett[i]-32;
}
for(i=x+3;i<n-1;i++)
{
vett[i]=vett[i]-32;
}
}
void stampa()
{
printf("Il nome e il cognome in maiuscolo e': %c",vett[i]);
}
int main()
{
printf("NOME & COGNOME \n \n \n");
caricamento();
codifica();
stampa();
system("PAUSE");
}
Grazie del vostro aiuto!!!!!!!!