Matriz Bidimensional II
O conceito de string é um dos tipos de dados mais importantes de uma linguagem de programação, pois é usado para a manipulação e o armazenamento de textos.
Na linguagem C, esse tipo de dado recebe um tratamento diferente de outras linguagens, pois caracteriza-se por ser um vetor (matriz de uma dimensão) do tipo char o qual termina com o caractere null “\0”.
As strings são entrados para processamento por meio da função scanf( ) com a utilização do formato %s.
A função fgets ( ) possui o propósito de efetuar leitura de dados do tipo string fornecidos via teclado. Ela aceita caracteres em branco no meio do string, colocando o caracteres de controle “\0” apenas quando for pressionada a tecla <Enter>.
Exemplo 1 – scanf ( )
#include <stdio.h> int main (void)
{
char NOME[15],SB_NOME[20]; printf(“Informe seu nome............: “); scanf(“%s”, NOME); printf(“Informe seu sobre nome..: “); scanf(“%s”, SB_NOME); printf(“Seja bem vindo, %s %s\n\n”, NOME, SB_NOME); return(0); }
Podemos observar a ausência do operador &, precedendo o segundo argumento das instruções de entrada com a função scanf( ). Quando se utilizam matrizes, este operador não pode ser usado, pois o nome de uma matriz é o seu endereço inicial.
Exemplo 2 - fgets( )
#include <stdio.h> int main (void)
{
char NOME[20], SB_NOME[20]; puts(“Informe seu nome............: “); fgets(NOME,20,stdin); puts(“Informe seu sobre nome......: “); fgets(SB_NOME,20,stdin); printf(“Seja bem vindo, %s %s\n\n”, NOME, SB_NOME); return(0); }
Podemos observar que é preciso informar três parâmetros, sendo o nome da variável string, o tamanho da matriz string e informar o nome do buffer em uso. fgets(VARIAVEL,TAMANHO, stdin).
A função puts é complemento da fgets( ) e sua principal característica está no fato de permitir a impressão de um único string por vez, além de pular sozinha uma linha após a impressão de um string.
Exemplo 3 – fflush( )
/* Leitura e escrita de 10 nomes */
#include<stdio.h>
int main(void)