Declarando e Chamando Funes includeconio h includestdio h

  • Slides: 95
Download presentation
Declarando e Chamando Funções #include<conio. h> #include<stdio. h> void oi( ) { printf ("Oi!

Declarando e Chamando Funções #include<conio. h> #include<stdio. h> void oi( ) { printf ("Oi! n"); } int main( void ) { oi( ); /* Chamada de Função Sem Retorno */ getch( ); return 0; } luistavares. com

#include<conio. h> #include<stdio. h> Função de Retorno Inteiro int calcula_quadrado (int a) { int

#include<conio. h> #include<stdio. h> Função de Retorno Inteiro int calcula_quadrado (int a) { int result; result = a * a; return result; } int main (void) { int num, r; printf ("Informe um valor: "); scanf ("%d", &num); r = calcula_quadrado (num); printf ("Quadrado: %d", r); getch ( ); return 0; }

Retorno de tipo real em C �A palavra float antes do nome da função

Retorno de tipo real em C �A palavra float antes do nome da função indica que a função irá retornar um valor real; �A função seguinte está dividindo um parâmetro por outro e retornando o resultado. float divide (float a, float b) { float result; result = a / b; return result; }

Chamada para a função int main(void) { float n 1, n 2, r; printf

Chamada para a função int main(void) { float n 1, n 2, r; printf ("Informe o primeiro numero: "); scanf ("%f", &n 1); printf ("Informe o segundo numero: "); scanf ("%f", &n 2); Chamada para a função r = divide (n 1, n 2); printf (“Divisao: %f", r); getch ( ); return 0; }

Exercícios luistavares. com

Exercícios luistavares. com

Linguagem C Protótipos de Funções e Arquivos Header Luis Antonio Tavares luistavares. com

Linguagem C Protótipos de Funções e Arquivos Header Luis Antonio Tavares luistavares. com

Criar Funções �Nos programas que desenvolvemos até agora tivemos de definir nossas funções antes

Criar Funções �Nos programas que desenvolvemos até agora tivemos de definir nossas funções antes do main (parte principal). �Agora vamos ver como criar funções em qualquer parte de um arquivo. c ou até mesmo usar outro arquivo para implementar uma função.

Protótipo de Função �Para definir uma função em qualquer parte de um arquivo fonte

Protótipo de Função �Para definir uma função em qualquer parte de um arquivo fonte em linguagem C, precisamos primeiro criar o protótipo da função. �O protótipo é a assinatura da função, trata-se da primeira linha da função porém encerrando com um ponto e vírgula ( ; ).

Protótipo de Função �Pelo protótipo informamos ao compilador que em algum ponto dos arquivos

Protótipo de Função �Pelo protótipo informamos ao compilador que em algum ponto dos arquivos ele encontrará uma função com as características informadas.

Exemplo de Protótipo de Função �int potencia(int base, int exp); �Função: int potencia (int

Exemplo de Protótipo de Função �int potencia(int base, int exp); �Função: int potencia (int base, int exp) { int result, cont; result = 1; for (cont = 1; cont <= exp; cont++){ result = result * base; } return result; }

Como Ficaria o Programa #includes. . . int potencia(int base, int exp); /* Bibliotecas

Como Ficaria o Programa #includes. . . int potencia(int base, int exp); /* Bibliotecas */ /* Protótipo */ int main (void ) {. . . } /* Parte Principal */ int potencia (int base, int exp){ /* Função */ int result, cont; result = 1; for (cont = 1; cont <= exp; cont++){ result = result * base; } return result; }

Arquivo Separado para a Função �Passos 1. Criamos um arquivo de cabeçalho contendo o

Arquivo Separado para a Função �Passos 1. Criamos um arquivo de cabeçalho contendo o protótipo da função; 2. Criamos um arquivo. c que irá conter o código da função; 3. Criamos um arquivo. c que irá conter a parte principal do programa.

1. Arquivo de Cabeçalho ou Header � Criamos um arquivo de cabeçalho (header file)

1. Arquivo de Cabeçalho ou Header � Criamos um arquivo de cabeçalho (header file) que irá conter apenas o protótipo da função: int potencia(int base, int exp); � Nos arquivos header, são declaradas funções e constantes que podem ser compartilhadas por vários programas ou rotinas de linguagem C.

2. Arquivo. c da Função � Criamos um. c que contém o código da

2. Arquivo. c da Função � Criamos um. c que contém o código da função: int potencia (int base, int exp){ /* Função */ int result, cont; result = 1; for (cont = 1; cont <= exp; cont++){ result = result * base; } return result; }

3. Arquivo. c da Parte Principal #include<conio. h> #include<stdio. h> #include “potencia. h” /*

3. Arquivo. c da Parte Principal #include<conio. h> #include<stdio. h> #include “potencia. h” /* Header File da Função */ int main (void){ int num, r; printf("Informe um numero: "); scanf("%d", &num); r = potencia(num, 3); printf("O resultado eh: %d", r); getch( ); return 0; } Note a Inclusão do Arquivo de Cabeçalho (. h) que contém o protótipo da função. Usa-se aspas por ser um arquivo local.

Exercícios luistavares. com

Exercícios luistavares. com

Linguagem C Variáveis Globais e Constantes Luis Antonio Tavares luistavares. com

Linguagem C Variáveis Globais e Constantes Luis Antonio Tavares luistavares. com

Variáveis Locais x Globais �Nos programas que desenvolvemos até agora declaramos apenas variáveis locais,

Variáveis Locais x Globais �Nos programas que desenvolvemos até agora declaramos apenas variáveis locais, ou seja, as variáveis que utilizamos tinham seu escopo limitado à função main ou outra função. �Utilizamos parâmetros valores para funções. para transferir

Variáveis Locais x Globais �Agora veremos como definir uma variável para se tornar visível

Variáveis Locais x Globais �Agora veremos como definir uma variável para se tornar visível em todo o código (variável global), sem a necessidade de passar por parâmetro entre as funções. �Porém, o uso de variáveis globais não é recomendado.

Variáveis Locais #include<conio. h> #include<stdio. h> int main (void) { Variáveis Locais int a,

Variáveis Locais #include<conio. h> #include<stdio. h> int main (void) { Variáveis Locais int a, b, r; } printf("Informe o primeiro valor: "); scanf("%d", &a); printf("Informe o segundo valor: "); scanf("%d", &b); r = soma(a, b); printf("A soma eh: %d n", r); return 0;

Variáveis Globais #include<conio. h> #include<stdio. h> int exemplo = 15; void exibe(); Variável Global

Variáveis Globais #include<conio. h> #include<stdio. h> int exemplo = 15; void exibe(); Variável Global int main (void) { printf("Valor da variavel: %d n", exemplo); exibe( ); getch( ); return 0; } void exibe ( ) { printf("Valor da variavel: %d n", exemplo); }

Variáveis Globais �Note que a variável global foi definida logo após a inclusão das

Variáveis Globais �Note que a variável global foi definida logo após a inclusão das bibliotecas. �No exemplo anterior a variável global será acessível tanto na função principal (main) como na função exibe( ).

Definição de Constantes � Uma das maneiras de definir uma constante em linguagem C

Definição de Constantes � Uma das maneiras de definir uma constante em linguagem C é através do uso da diretiva de compilação #define � Exemplo: #define PI 3. 14159 �O compilador irá substituir todas as ocorrências da constante PI no código pelo valor 3. 14159, no momento da compilação. luistavares. com

Definição de Constantes #include<stdio. h> #include<conio. h> #define PI 3. 14159 int main( )

Definição de Constantes #include<stdio. h> #include<conio. h> #define PI 3. 14159 int main( ) { printf("O valor de PI eh: %f", PI); getch( ); return 0; } luistavares. com

Definição de Constantes �Um outro local onde podemos declarar constantes são nos arquivos de

Definição de Constantes �Um outro local onde podemos declarar constantes são nos arquivos de cabeçalho (ou arquivos header). �Basta criar um arquivo de extensão. h, definir as constantes e protótipos dentro do arquivo e, depois, importar o arquivo no código usando o comando include.

Definição de Constantes �Exemplo de arquivo header: #ifndef POTENCIA_H_ #define PI 3. 14 int

Definição de Constantes �Exemplo de arquivo header: #ifndef POTENCIA_H_ #define PI 3. 14 int potencia(int base, int exp); #endif /* POTENCIA_H_ */ �Comando de importação: #include “potencia. h”

Exercícios luistavares. com

Exercícios luistavares. com

Linguagem C Tipos de Variáveis Luis Antonio Tavares luistavares. com

Linguagem C Tipos de Variáveis Luis Antonio Tavares luistavares. com

Principais Tipos de Variáveis Tipo Bytes Faixa que abrange Formato p/ scanf e printf

Principais Tipos de Variáveis Tipo Bytes Faixa que abrange Formato p/ scanf e printf char 1 -127 a 127 %c int 2 -32. 768 / 32. 767 %i ou %d long int 4 -2. 147. 483. 648 a 2. 147. 483. 647 %li float 4 3, 4 E-38 / 3. 4 E+38 %f double 8 1, 7 E-308 / 1, 7 E+308 %lf

Utilizando os Novos Tipos �O tipo char permite armazenar letras; � O tipo long

Utilizando os Novos Tipos �O tipo char permite armazenar letras; � O tipo long é semelhante ao int, porém suporta um valor maior, com mais dígitos que o tipo int; � O tipo double é semelhante ao float, porém também suporta mais dígitos que o float; �O processo para declarar e utilizar variáveis dos tipos char, long e double é o mesmo que já utilizamos para as variáveis de tipo int e float.

Declarando Variáveis Long Int #include <stdio. h> #include <conio. h> int main(void) { long

Declarando Variáveis Long Int #include <stdio. h> #include <conio. h> int main(void) { long int a; /* Declarando variável long int */ } return 0;

Variáveis Long Int Em Um Programa #include <stdio. h> #include <conio. h> int main(void)

Variáveis Long Int Em Um Programa #include <stdio. h> #include <conio. h> int main(void) { long int a, q; /* Declarando variável long int */ printf("Informe um valor inteiro: "); scanf("%li", &a); /* Função Leia */ q = a * a; printf(“Esse valor ao quadrado eh: %li", q); return 0; }

Declarando Variáveis Double #include <stdio. h> #include <conio. h> int main(void) { double a;

Declarando Variáveis Double #include <stdio. h> #include <conio. h> int main(void) { double a; /* Declarando variável double */ } return 0;

Variáveis Double Em Um Programa #include <stdio. h> #include <conio. h> int main(void) {

Variáveis Double Em Um Programa #include <stdio. h> #include <conio. h> int main(void) { double a, q; /* Declarando variável real */ printf("Informe um valor real: "); scanf("%lf", &a); q = a * a; printf(" Esse valor ao quadrado eh: %lf", q); return 0; }

Declarando Variáveis Char #include <stdio. h> #include <conio. h> int main(void) { char a;

Declarando Variáveis Char #include <stdio. h> #include <conio. h> int main(void) { char a; /* Declarando variável char*/ } return 0; � Tome cuidado, pois esta declaração funciona apenas para um único caractere, não palavras.

Variáveis Char Em Um Programa int main(void) { char v; printf("Informe apenas uma letra:

Variáveis Char Em Um Programa int main(void) { char v; printf("Informe apenas uma letra: "); scanf("%c", &v); if (v == 'a'){ printf("Voce digitou a letra A. "); } else { printf("Voce digitou letra diferente de A. "); } getch(); return 0; }

Funções � Também podemos definir funções que recebam variáveis de tipo double, long int

Funções � Também podemos definir funções que recebam variáveis de tipo double, long int e char como parâmetro e funções que tenham retorno de tipo double, long int ou char. � Exemplo: double cubo (double num) { double result; result = num * num; return result; } luistavares. com

Exercícios luistavares. com

Exercícios luistavares. com

Estrutura Switch Case Luis Antonio Tavares luistavares. com

Estrutura Switch Case Luis Antonio Tavares luistavares. com

Muitas Condições Aninhadas � Em algumas situações pode ser necessário o uso de muitas

Muitas Condições Aninhadas � Em algumas situações pode ser necessário o uso de muitas condições aninhadas. Exemplo: if (num == 1) { /* Bloco de Instruções } else if (num == 2) { /* Bloco de Instruções } else if (num == 3) { /* Bloco de Instruções } else { /* Bloco de Instruções } */ */

Comando Switch Case �O comando Switch Case serve para facilitar este tipo de construção,

Comando Switch Case �O comando Switch Case serve para facilitar este tipo de construção, simplificando a organização do código, já que muitas condições aninhadas podem ser um pouco confuso; � Porém o Switch Case só serve para comparar valores inteiros ou tipos derivados, por exemplo: char e long int.

Comando Switch Case switch (n) { case 1: printf("Valor Um"); break; case 2: printf("Valor

Comando Switch Case switch (n) { case 1: printf("Valor Um"); break; case 2: printf("Valor Dois"); break; case 3: printf("Valor Tres"); break; }

Comando Switch Case � Após o switch, definimos a variável que será manipulada (n);

Comando Switch Case � Após o switch, definimos a variável que será manipulada (n); � Cada um dos blocos case trata-se de uma possibilidade de valor para esta variável; � Se a variável n for igual a 1, então o bloco de código definido no case 1 será executado; � Se a variável n for igual a 2, então o bloco de código definido no case 2 será executado; � Se a variável n for igual a 3, então o bloco de código definido no case 3 será executado;

Comando Switch Case �Também é possível adicionar um bloco default, que será executado caso

Comando Switch Case �Também é possível adicionar um bloco default, que será executado caso a variável manipulada não corresponda a nenhum dos valores definidos pelos case; default: printf("Bloco Padrão"); break;

Comando Switch Case switch (n) { case 1: printf("Valor Um"); break; case 2: printf("Valor

Comando Switch Case switch (n) { case 1: printf("Valor Um"); break; case 2: printf("Valor Dois"); break; default: printf(“Nenhum dos Valores"); break; }

Comando Switch Case �A instrução break é responsável por encerrar a execução do bloco

Comando Switch Case �A instrução break é responsável por encerrar a execução do bloco de código; �Quando não presente, a execução do programa inicia em um case e continua pelos próximos case, até encontrar um comando break.

Comando Switch Case switch (n) { case 1: printf("Valor Um"); case 2: printf("Valor Dois");

Comando Switch Case switch (n) { case 1: printf("Valor Um"); case 2: printf("Valor Dois"); break; default: printf(“Nenhum dos Valores"); break; }

Exercícios luistavares. com

Exercícios luistavares. com

Linguagem C Vetores Luis Antonio Tavares luistavares. com

Linguagem C Vetores Luis Antonio Tavares luistavares. com

Vetores � Vetores são coleção de objetos que têm mesma natureza, ou seja, todos

Vetores � Vetores são coleção de objetos que têm mesma natureza, ou seja, todos seus elementos possuem um mesmo tipo básico; � São chamados também de array, em inglês; � Os elementos de um vetor são identificados pelo nome seguido de índice entre colchetes. � Com vetores, conseguimos armazenar vários valores usando um mesmo identificador (variável), porém cada valor fica em um índice diferente. luistavares. com

Declaração de Vetor �int exemplo [5]; Tipo Nome Número Elementos � Na declaração de

Declaração de Vetor �int exemplo [5]; Tipo Nome Número Elementos � Na declaração de um vetor tempos de definir o tipo do vetor, o nome do vetor e a quantidade de elementos (entre colchetes); � Para atribuir e acessar os elementos do vetor, temos de especificar o índice do elemento, também através do uso de colchetes. Ex. : � exemplo[3] = 100; luistavares. com

Declaração de Vetor � No caso da declaração do vetor anterior, obtemos na memória

Declaração de Vetor � No caso da declaração do vetor anterior, obtemos na memória o seguinte arranjo: 100 exemplo índices [0] [1] [2] [3] � Observe [4] que o vetor exemplo é dividido em 5 posições. Cada posição pode ser ocupada por um valor distinto; � Depois de inicializar a posição 3 com o valor 100, ainda tempos 4 posições livres no vetor. luistavares. com

Declaração de Vetor � Exemplo - vetor de notas de uma turma: float notas[22];

Declaração de Vetor � Exemplo - vetor de notas de uma turma: float notas[22]; � Organização notas índices do vetor: 7, 8 10, 0 5, 6 . . . 8, 5 [0] [1] [2] . . . [21] luistavares. com

Declaração e Inicialização de Vetor � Veja exemplos de declarações e inicializações de vetores

Declaração e Inicialização de Vetor � Veja exemplos de declarações e inicializações de vetores a seguir. int dia[7] = { 12, 30, 14, 7, 13, 15, 6 }; float notas[5] = { 8. 4, 6. 9, 4. 5, 4. 6, 7. 2 }; char vogal[5] = { 'a', 'e', 'i', 'o', 'u' }; luistavares. com

Declaração e Inicialização int exemplo[5]; exemplo[0] = 20; exemplo[1] = 22; exemplo[2] = 24;

Declaração e Inicialização int exemplo[5]; exemplo[0] = 20; exemplo[1] = 22; exemplo[2] = 24; exemplo[3] = 26; exemplo[4] = 28; printf("Primeiro elemento do vetor: %d n", exemplo[0]); printf("Segundo elemento do vetor: %d n", exemplo[1]); printf("Terceiro elemento do vetor: %d n", exemplo[2]); printf("Quarto elemento do vetor: %d n", exemplo[3]); printf("Quinto elemento do vetor: %d n", exemplo[4]); luistavares. com

Varrendo o Vetor int cont; int exemplo[5]; exemplo[0] = 20; exemplo[1] = 22; exemplo[2]

Varrendo o Vetor int cont; int exemplo[5]; exemplo[0] = 20; exemplo[1] = 22; exemplo[2] = 24; exemplo[3] = 26; exemplo[4] = 28; for (cont = 0; cont <=4; cont++) { printf(“Elemento do vetor: %d n”, exemplo[cont]); } luistavares. com

Atribuindo Dados Lidos ao Vetor int exemplo[5]; printf("Informe o primeiro valor: "); scanf("%d", &exemplo[0]);

Atribuindo Dados Lidos ao Vetor int exemplo[5]; printf("Informe o primeiro valor: "); scanf("%d", &exemplo[0]); printf("Informe o segundo valor: "); scanf("%d", &exemplo[1]); printf("Informe o terceiro valor: "); scanf("%d", &exemplo[2]); printf("Informe o quarto valor: "); scanf("%d", &exemplo[3]); printf("Informe o quinto valor: "); scanf("%d", &exemplo[4]);

Atribuindo Dados Lidos ao Vetor �Para evitar repetições podemos usar um laço para percorrer

Atribuindo Dados Lidos ao Vetor �Para evitar repetições podemos usar um laço para percorrer todos os índices do vetor, armazenando em cada posição um valor informado pelo usuário: for (cont = 0; cont <=4; cont++) { printf("Informe um valor: "); scanf("%d", &exemplo[cont]); }

Exemplo Completo int main( ) { int cont, exemplo[5]; for (cont = 0; cont

Exemplo Completo int main( ) { int cont, exemplo[5]; for (cont = 0; cont <=4; cont++) { printf("Informe um valor: "); scanf("%d", &exemplo[cont]); } printf("n Estes sao os elementos do vetor: n"); for (cont = 0; cont <=4; cont++) { printf("Elemento: %d n", exemplo[cont]); } getch( ); return 0; }

Exercícios luistavares. com

Exercícios luistavares. com

Linguagem C Trabalhando com Strings Luis Antonio Tavares luistavares. com

Linguagem C Trabalhando com Strings Luis Antonio Tavares luistavares. com

Strings � Uma String é o termo utilizando em programação para definir uma sequência

Strings � Uma String é o termo utilizando em programação para definir uma sequência de caracteres; � Usamos Strings para armazenar nomes, endereços, até mesmo números, desde que não sejam usados em operações aritméticas, apenas como valor literal.

Strings � Em linguagem C criamos uma String ao definir um vetor de caracteres;

Strings � Em linguagem C criamos uma String ao definir um vetor de caracteres; � Exemplo: char nome[50]; char endereco[200];

Lendo Strings � Ao ler Strings em linguagem C podemos usar o especificador %s,

Lendo Strings � Ao ler Strings em linguagem C podemos usar o especificador %s, o qual lê o conteúdo digitado pelo usuário até encontrar o primeiro espaço; � Ou podemos utilizar o comando: scanf("%[^n]", &variavel); O comando irá ler todo o conteúdo digitado pelo usuário até encontrar o n, ou seja, a tecla enter; � Para apresentar a String também utilizamos o especificador %s.

Programa Exemplo Usando %s #include <stdio. h> #include <conio. h> int main (void) {

Programa Exemplo Usando %s #include <stdio. h> #include <conio. h> int main (void) { char nome[30]; printf("Informe seu nome: "); scanf("%s", &nome); printf("Seu nome eh: %s", nome); getch( ); return 0; }

Programa Exemplo Alternativo #include <stdio. h> #include <conio. h> int main (void) { char

Programa Exemplo Alternativo #include <stdio. h> #include <conio. h> int main (void) { char nome[30]; printf("Informe seu nome: "); scanf("%[^n]", &nome); printf("Seu nome eh: %s", nome); getch( ); return 0; }

Programa Usando Função gets( ) � Também é possível utilizar a função gets para

Programa Usando Função gets( ) � Também é possível utilizar a função gets para ler uma String, veja o exemplo: int main (void) { char nome[30]; printf("Informe seu nome: "); gets(nome); printf("Seu nome eh: %s", nome); getch( ); return 0; }

Formação da String � Como a String é um vetor, também podemos percorrer os

Formação da String � Como a String é um vetor, também podemos percorrer os vários caracteres que a constitui através de um laço de repetição; � Utilizaremos o laço de repetição para percorrer os caracteres da String até que encontre o caractere de controle , responsável por indicar o final da String.

Inicializando String � char nome [5] = { 'L', 'u', 'i', 's', '�' };

Inicializando String � char nome [5] = { 'L', 'u', 'i', 's', '' }; � char nome [5] = "Luis"; � Repare que apesar da String possuir 4 caracteres, devemos sempre definir o tamanho com uma unidade a mais devido ao caractere que delimita o fim da String. luistavares. com

Formação da String �O caractere de controle � é sempre o último caractere em

Formação da String �O caractere de controle é sempre o último caractere em uma String.

Percorrendo os Caracteres int main(void) { char nome[30]; int cont = 0; printf("Informe seu

Percorrendo os Caracteres int main(void) { char nome[30]; int cont = 0; printf("Informe seu nome: "); scanf("%[^n]", &nome); while (nome[cont] != ''){ printf("%c n", nome[cont]); cont++; } getch( ); return 0; }

Funções para Strings �Por se tratar de um vetor, não é possível comparar uma

Funções para Strings �Por se tratar de um vetor, não é possível comparar uma String com outra utilizando os operadores relacionais >, <, !=, etc. �Assim como não é possível atribuir o conteúdo de uma String diretamente a outra. Se optarmos por esta forma, teria de ser uma atribuição de posição por posição da String.

Funções para Strings �Para realizar essas operações utilizaremos algumas funções da biblioteca string. h

Funções para Strings �Para realizar essas operações utilizaremos algumas funções da biblioteca string. h �strcpy (str 1, str 2); �strcat (str 1, str 2); �strcmp (str 1, str 2); �strlen (str 1); /* /* Copia */ Concatena */ Compara */ Calcula tamanho */

Exemplo Copiando String #include <string. h> int main (void) { char nome 1[30]; char

Exemplo Copiando String #include <string. h> int main (void) { char nome 1[30]; char nome 2[30]; printf("Informe seu nome: "); scanf("%s", &nome 1); strcpy (nome 2, nome 1); printf("Valor da variavel nome 1: %s n", nome 1); printf("Valor da variavel nome 2: %s", nome 2); getch( ); return 0; }

Exemplo Tamanho de String #include <string. h> int main (void) { char frase[250]; int

Exemplo Tamanho de String #include <string. h> int main (void) { char frase[250]; int tamanho; printf("Informe seu nome: "); scanf("%[^n]", &frase); tamanho = strlen (frase); printf("Quantidade caracteres: %d", tamanho); getch( ); return 0; }

Exemplo Concatenando String char nome[100], sobrenome[100]; printf("Informe seu nome: "); fflush(stdin); scanf("%[^n]", &nome); printf("Informe

Exemplo Concatenando String char nome[100], sobrenome[100]; printf("Informe seu nome: "); fflush(stdin); scanf("%[^n]", &nome); printf("Informe seu sobrenome: "); fflush(stdin); scanf("%[^n]", &sobrenome); strcat(nome, " "); strcat(nome, sobrenome); printf("Nome completo: %s", nome);

Exemplo Comparando String char nome 1[50], nome 2[50]; printf("Informe uma palavra: "); fflush(stdin); scanf("%s",

Exemplo Comparando String char nome 1[50], nome 2[50]; printf("Informe uma palavra: "); fflush(stdin); scanf("%s", &nome 1); printf("Informe outra palavra: "); fflush(stdin); scanf("%s", &nome 2); if (strcmp(nome 1, nome 2) < 0) { printf("A palavra que vem primeiro: %s", nome 1); } else { printf("A palavra que vem primeiro : %s", nome 2); }

Funções da Biblioteca ctype. h #include <stdio. h> #include <conio. h> #include <ctype. h>

Funções da Biblioteca ctype. h #include <stdio. h> #include <conio. h> #include <ctype. h> int main (void) { printf ("tolower A = %cn", tolower('A') ); printf ("toupper a = %c", toupper('a') ); getch( ); return 0; } � Converte letra para maiúscula ou minúscula.

Funções strupr e strlwr #include <stdio. h> #include <conio. h> #include <string. h> /*

Funções strupr e strlwr #include <stdio. h> #include <conio. h> #include <string. h> /* Biblioteca Necessária */ int main (void) { char s 1[ ] = "ABC"; strlwr(s 1); printf ("Palavra em minusculas: %sn", s 1); strupr(s 1); printf ("Palavra em maiusculas: %sn", s 1); getch( ); return 0; } � Converte palavra para maiúscula ou minúscula.

Exercícios luistavares. com

Exercícios luistavares. com

Linguagem C Gravando Dados em Arquivo Luis Antonio Tavares luistavares. com

Linguagem C Gravando Dados em Arquivo Luis Antonio Tavares luistavares. com

Gravando em Arquivo �Veremos na sequência quatro funções básicas para gravar e ler dados

Gravando em Arquivo �Veremos na sequência quatro funções básicas para gravar e ler dados de um arquivo com Linguagem C; �Existem outras funções para a mesma finalidade, mas as funções que serão abordadas são de uso mais simplificado.

Funções Básicas �fopen ( ) – abrir arquivo; �fclose( ) – fechar arquivo; �fwrite(

Funções Básicas �fopen ( ) – abrir arquivo; �fclose( ) – fechar arquivo; �fwrite( ) – grava o conteúdo no arquivo; �fread( ) – lê o conteúdo do arquivo.

Declarando o arquivo e um valor #include <stdio. h> #include <conio. h> int main(void)

Declarando o arquivo e um valor #include <stdio. h> #include <conio. h> int main(void) { FILE * f; int a[3] = {4, 5, 6}; . . .

Abrindo o Arquivo �Abrindo binário. o arquivo em modo de escrita f = fopen("arquivo.

Abrindo o Arquivo �Abrindo binário. o arquivo em modo de escrita f = fopen("arquivo. bin", "wb"); if (f == NULL) { printf("Erro ao abrir o arquivo! n"); getch( ); return 0; }

Gravando o dado no arquivo Parâmetros de gravação: �Variável, tamanho, quantidade e arquivo; fwrite(a,

Gravando o dado no arquivo Parâmetros de gravação: �Variável, tamanho, quantidade e arquivo; fwrite(a, sizeof( int ), 3, f); if (fclose( f ) != 0) { printf("Erro ao fechar o arquivo"); }

Exemplo Completo Gravando FILE * f; int a[3] = {4, 5, 6}; f =

Exemplo Completo Gravando FILE * f; int a[3] = {4, 5, 6}; f = fopen("arquivo. bin", "wb"); if (f == NULL) { printf("Erro ao abrir o arquivo! n"); getch( ); return 0; } fwrite(a, sizeof( int ), 3, f); if (fclose( f ) != 0) { printf("Erro ao fechar o arquivo"); }

Funcionamento �Após rodar o código anterior o programa irá gravar o conteúdo do vetor

Funcionamento �Após rodar o código anterior o programa irá gravar o conteúdo do vetor chamado a em um arquivo de nome arquivo. bin. luistavares. com

Abrindo o arquivo para ler o valor #include <stdio. h> #include <conio. h> int

Abrindo o arquivo para ler o valor #include <stdio. h> #include <conio. h> int main(void) { FILE * f; int a[3], cont; f = fopen("arquivo. bin", "rb"); if (f == NULL) { printf("Erro ao abrir o arquivo! n"); getch( ); return 0; }

Lendo o valor gravado em arquivo fread(a, sizeof( int ), 3, f); for (cont=0;

Lendo o valor gravado em arquivo fread(a, sizeof( int ), 3, f); for (cont=0; cont<=2; cont++){ printf("Valor lido: %d n", a[cont]); } if (fclose( f ) != 0) { printf("Erro ao fechar o arquivo"); }

Exemplo completo lendo o valor FILE * f; int a[3], cont; f = fopen("arquivo.

Exemplo completo lendo o valor FILE * f; int a[3], cont; f = fopen("arquivo. bin", "rb"); if (f == NULL) { printf("Erro ao abrir o arquivo! n"); getch( ); return 0; } fread(a, sizeof( int ), 3, f); for (cont=0; cont<=2; cont++){ printf("Valor lido: %d n", a[cont]); } if (fclose( f ) != 0) { printf("Erro ao fechar o arquivo"); } luistavares. com

Funcionamento �Após rodar o código anterior o programa irá ler o conteúdo do arquivo

Funcionamento �Após rodar o código anterior o programa irá ler o conteúdo do arquivo de nome arquivo. bin e armazenar esse conteúdo no vetor chamado a. luistavares. com

Simplificando a escrita em arquivo FILE * f; int a[3] = {4, 5, 6};

Simplificando a escrita em arquivo FILE * f; int a[3] = {4, 5, 6}; f = fopen("arquivo. bin", "wb"); fwrite(a, sizeof( int ), 3, f); fclose( f ); /* declara */ /* abre */ /* grava*/ /* fecha */

Simplificando a leitura de arquivo FILE * f; int a[3], cont; f = fopen("arquivo.

Simplificando a leitura de arquivo FILE * f; int a[3], cont; f = fopen("arquivo. bin", "rb"); fread(a, sizeof( int ), 3, f); /* leitura */ for (cont=0; cont<=2; cont++){ printf("Valor lido: %d n", a[cont]); } fclose( f );

Exercícios luistavares. com

Exercícios luistavares. com