Cześć
Mam takie zadanie do wykonania:
Napisz program, który dla polskiego imienia, wprowadzonego z klawiatury sprawdza czy jest ono rodzaju męskiego czy żeńskiego. Program ma wyświetlić komunikat Imie meskie jeżeli podane imię jest rodzaju męskiego lub Imie zenskie w przeciwnym przypadku. Przyjmij, że długość wprowadzanego imienia nie przekroczy 10 znaków.
Przykładowe wejście:
Podaj Imię:
Delfina
Przykładowe wyjście:
Imie zenskie
Rozpisałem kod:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char *argv[])
{
char tab[11]={0};
int a=0;
printf("Podaj tekst:");
fgets(tab,11,stdin);
sscanf("%10s",tab);
a=strlen(tab)-1;
printf("%d",a);
if(tab[a]==0)
{
if(tab[a-1]==97)
{
printf("Imie zenskie");
}
else if(tab[a-1]!=97)
{
printf("Imie meskie");
}
}
}
Zastanawia mnie, czemu to powyżej nie działa? Przecież wyzerowałem pozostałe elementy tablicy, więc dla wyrazu "Ada" o indeksach w tablicy od 0 do 2 dla tab[3]=0 w tym momencie powinno sprawdzać if-y poniżej? Dlaczego tak się nie dzieje? I jeżeli nie jest to dobre rozwiązanie jak mogę to poprawić?