Array
(
)

Duvida simples

Mateus_henriques
   - 04 nov 2003

aew galera sou iniciante... claro q vcs poderão me ajudar :roll:

#include <stdio.h>
include <conio.h>

int main () {
char nome[30];

printf(´Digite seu nome´);
scanf(´¬s´, nome);

clrscr();

print(´Meu nome e ¬s\nSou aluno ou aluna de Computação´, nome);

return 0;
}

o que eu queria era q o programa de acordo com o nome colocado pegasse a ultima letra no caso ´a´ ou ´o´ e definir se e aluno ou aluna

Acho q e simples...

Valeu pela atenção.. obrigado :D


Xco
   - 15 dez 2003

Bem, vamos lá....a primeira coisa que vc tem que saber, é que uma string nada mais é que um vetor de chars, por exemplo:
char str[20];
strcpy(str,´Ola Mundo!´);
Se eu tentar acessar str[2], obterei o caractere ´a´.
Segunda coisa que é bom que vc saiba, strlen devolve o tamanho da string.

Ou seja, tudo que vc tem que fazer é pegar essa string ´nome´, encontrar o tamanho e testar a letra de indice (tamanho-1).
é isso.


Xco
   - 15 dez 2003

Bem, vamos lá....a primeira coisa que vc tem que saber, é que uma string nada mais é que um vetor de chars, por exemplo:
char str[20];
strcpy(str,´Ola Mundo!´);
Se eu tentar acessar str[2], obterei o caractere ´a´.
Segunda coisa que é bom que vc saiba, strlen devolve o tamanho da string.

Ou seja, tudo que vc tem que fazer é pegar essa string ´nome´, encontrar o tamanho e testar a letra de indice (tamanho-1).
é isso.


Flavio Sanches
   - 17 dez 2003

Ola, o que vc precisa fazer encontrar o fim da string e comparar o ultimo caracter assim

int x;

x = (strlen(str)-1);

switch (x)
{
case ´O´:
case ´o´:
printf(´aluno´);
break;
case ´A´:
case ´a´:
printf(´aluno´);
break;
default:
/* aki vc faz o que quizer pois nao termina nem coma nem com o*/
break;

}


Moonlight
   - 17 dez 2003

Esse negocio de comparar pelo ultimo caracter é complicado.
E os nomes que nao terminam em ´a´ ou ´o´ ? E a mulher que termina com ´o´ e o homem q termina com ´a´ (sei lah se tem, mas vai que tem hehe) ?


Xco
   - 18 dez 2003

é que ae já foge um pouco do escopo de C, e passa a entrar em heuristicas e metodos pra descobrir o sexo a partir do nome. E ainda assim, temos nome identicos que servem pra homens e mulheres. Por isso que se acaba colocando um campo ´Sexo:(M/F)´. - na verdade seria genero, mas... :lol: