Escolar Documentos
Profissional Documentos
Cultura Documentos
Aula 23
Aula 23
Paulo Schreiner
Usar gets() ou fgets() para ler uma linha de texto Converter o texto para int ou float:
atoi(texto) atof(texto)
Exemplo
#include <stdio.h> #include <stdlib.h> #define MAXNOME 100 int main(){ char nome [MAXNOME]; char idade2[10]; int idade; int i; printf("Digite 5 nomes e suas respectivas idades: \n"); for (i=0; i<5; i++){ printf("nome:\n"); gets(nome); printf("%s \n", nome); printf("idade:\n"); gets(idade2); idade = atoi(idade2); printf("%i\n", idade); } fclose(arquivo); }
Exemplo
#include <stdio.h> #include <stdlib.h> struct ponto { float x; float y; }; void le_ponto(struct ponto *p) { char temp[10]; printf("Digite 1o nr: "); gets(temp); (*p).x = atof(temp); printf("Digite 2o nr: "); gets(temp); (*p).y = atof(temp); }
int main() { struct ponto p1; le_ponto(&p1); printf("x %f, y %f\n", p1.x, p1.y); }
Gets e Fgets
Contenha uma funo para imprimir uma estrutura cliente na tela Contenha uma funo para imprimir uma estrutura cliente em um arquivo Contenha uma funo para ler uma estrutura cliente do teclado Contenha uma funo para ler uma estrutura cliente de um arquivo
Exerccio
Seu programa deve utilizar essas funes para dar ao usurio 2 opes:
Cadastrar clientes: le 5 clientes do teclado e escreve eles em um arquivo Mostrar clientes: le clientes do arquivo e mostra na tela
Esqueleto
struct cliente { char nome[100]; int idade; float saldo_devedor; }; void le_cliente_do_teclado(struct cliente *c1) { ... } void le_cliente_do_arquivo(FILE *arquivo, struct cliente *c1) { ... } void imprime_cliente(struct cliente c1) { ... } void imprime_cliente_no_arquivo(FILE *arquivo, struct cliente c1) { ... }