Já vimos em posts anteriores um exemplo com entrada e saída de dados. Agora vamos entender melhor o que foi feito:

// Primeiro: vamos incluir as funções de entrada e saída de dados
// stdio.h - STanDart Input Output - entrada e saída padrão
#include <stdio.h>
#include <stdlib.h>

int main(void){
    char nome[30];
    printf("Qual é o seu nome? ");
    scanf("%s", &nome);
    printf("Olá, %s!", nome);
    return 0;
}

As funções printf e scanf são responsáveis, respectivamente, pela saída e a entrada de dados. Em ambas utilizamos o código %s que identifica uma string. Vejamos outros tipos:

Tipo de dado Código
char, unsigned char, signed char %c
int, signed int %d ou %i
unsigned int %u
short int, signed short int %hi
unsigned short int %hu
long int, signed long int %li
unsigned long int %lu
float %f
double %lf
long double %Lf
char[] (string) %s

Relembre os tipos de dados

Quando chamamos a função scanf, passamos primeiro o tipo de dado a ser lido utilizando os códigos acima e depois a referência da variável que recebe o valor. Ex.:

// ...
int inteiro;
char caractere;
float flutuante;

scanf("%d %c %f", &inteiro, &caractere, &flutuante);
/* sim, é possível ler mais de um valor em uma única linha
 * o programa espera ler um int seguido de um espaço ou <enter>
 * depois um char seguido de outro espaço ou <enter> e por fim
 * um float seguido de <enter>
 */

A função printf recebe um string formatada como primeiro parâmetro seguido dos parâmetros que completam a string principal:

// ...
char[] nome = "Eduardo";
int idade = 18;

printf("Olá %s, você tem %d anos!", nome, idade);
// saída: Olá Eduardo, você tem 18 anos!

Vemos que o primeiro símbolo (%s) foi substituído por nome, e o segundo (%d) por idade. É possível utilizar quantos símbolos quiser, mas para todos é preciso ter uma variável ou valor associado, em ordem.

Isso termina o básico de entrada e saída de dados. No próximo post pretendo começar com as estruturas condicionais (if) e laços (for, while e do…while). Imperdível! ;)

Com as tags → 
Plataforma Wordpress Latest (GPLv2)
Tema PageLines Lite Improved (GPLv3)
Hospedado por OpenShift by RedHat
Domínio registrado pela Neep Host
Creative Commons Attribution-ShareAlike License
Copyleft © 2016 Eduardo Weiland
Utilize um leitor de QR Code para acessar o blog no seu celular:
21
%d blogueiros gostam disto: