Escolar Documentos
Profissional Documentos
Cultura Documentos
1: Soma e diferença
#include <stdio.h>
int a;
int b;
int soma;
int diferenca;
scanf("%d", &a);
scanf("%d", &b);
soma = a + b;
diferenca = a - b;
return 0;
#include <stdio.h>
int main(void) {
int a;
float b;
float produto;
scanf("%d", &a);
scanf("%f", &b);
produto = a * b;
return 0;
3: área de um retângulo
float base;
float altura;
float area;
scanf("%f", &altura);
return 0;
4: preco + IVA
#include <stdio.h>
float preco;
int taxa;
float total;
scanf("%f", &preco);
scanf("%d", &taxa);
#include <stdio.h>
int a;
int b;
float nota;
scanf("%d", &a);
scanf("%d", &b);
nota = (a + b) / 2;
return 0;
6; conversor de kg para g
#include <stdio.h>
int main(void) {
float kg;
float gramas;
scanf("%f", &kg);
gramas = kg / 1.000;
return 0;
#include <stdio.h>
float c;
float f;
scanf("%f", &c);
f = (c * 9/5) + 32;
printf("O valor da temperatura em F e: %f", f);
return 0;
#include <stdio.h>
int segundos;
int horas;
int minutos;
int horario;
scanf("%d", &segundos);
segundos = segundos;
return 0;
}
9: transformar real em inteiro e fracioanaria
#include <stdio.h>
int numerointeiro;
scanf("%d", &numerointeiro);
if(numerointeiro%2==0)
printf("numeropar");
else
printf("numeroimpar");
return 0;
Ficha 2
1: Verificar se é par ou impar
#include <stdio.h>
int main(void) {
int numero;
scanf("%d", &numero);
if(numero%2==0)
else
return 0;
#include <stdio.h>
int main(void){
int a;
int b;
int c;
#include <stdio.h>
int main(void) {
int a;
int b;
float resto;
if(a>b) {
resto = a % b;
}else
return 0;
#include <stdio.h>
scanf("%d", &a);
if(a % 3 == 0)
else
return 0;
#include <stdio.h>
int main(void) {
float ordenado;
float excedente;
float taxa;
scanf("%f", &ordenado);
}else
return 0;
7: IMC
#include <stdio.h>
float peso;
float altura;
float imc;
scanf("%f", &peso);
scanf("%f", &altura);
printf("magreza");
printf("normal");
printf("excesso de peso");
printf("obesidade");
printf("obesidade morbida");
return 0;
Ficha 3
1: Numeros impares até 100
#include <stdio.h>
int main(void) {
int i;
i = 1;
while(i <=100)
printf("%d\n", i);
i = i + 2;
return 0;
#include <stdio.h>
int i;
int prod;
prod = 1;
prod = prod * i;
return 0;
#include <stdio.h>
int main () {
int i, a, b;
if(a<b) {
if (i%2==0)
printf("%d\n", i);
} else {
if(i%2==0)
return 0;
#include <stdio.h>
int n;
int i;
int soma;
soma = 0;
scanf("%d", &n);
soma = soma + i;
return 0;
5: soma de n
#include <stdio.h>
int main(void) {
int n;
int i;
int soma;
soma = i+1;
return 0;
#include <stdio.h>
int main() {
int n;
int maior;
int menor;
scanf("%d", &n);
maior = menor = n;
while (n != 0) {
scanf("%d", &n);
if (n != 0) {
if (n > maior) {
maior = n;
if (n < menor) {
menor = n;
return 0;
7: valor absoluto
#include <stdio.h>
#include <math.h>
int main () {
float maiornumero=0, x, y;
scanf("%d", &numero);
do{
scanf("%f", &x);
x = fabs(x);
if (maiornumero<x)
maiornumero=x;
i++;
} while (i<numero);
return 0;
8: fatorial
#include <stdio.h>
int main() {
int valor, i;
int fat=1;
scanf("%d", &valor);
printf("O valor introduzido nao e valido, defina um valor inteiro e positivo: ");
scanf("%d", &valor);
fat *= i;
9: somatório
#include <stdio.h>
int main() {
int n;
scanf("%d", &n);
if (n <= 1) {
return 1;
soma += 1.0 / k;
return 0;
}
Ficha 4
1: perímetro e área com repetição
#include <stdio.h>
int main(void) {
float raio;
float perimetro;
float area;
char resposta;
do {
scanf("%f", &raio);
perimetro = 2 * pi * raio;
printf("Programa encerrado.\n");
return 0;
}
#include <stdio.h>
int main(void) {
float valor;
float media;
int quantidade;
float soma;
int i = 0;
scanf("%d", &quantidade);
scanf("%f", &valor);
if(valor < 2) {
}else {
soma += valor;
i++;
}
return 0;
3: Fibonacci
4: Verificar se é primo
#include <stdio.h>
#include <math.h>
int i;
int valor;
int reposta;
int primo;
scanf("%d", &valor);
if(valor < 0) {
printf("O valor definido e negativo, defina um valor inteiro positivo: ");
scanf("%d", &valor);
} else {
if(primo = 1) {
} else {
return 0;
#include <stdio.h>
int main() {
int N, i, j;
do {
scanf("%d", &N);
if (N < 2) {
printf("Por favor, insira um valor maior ou igual a 2.\n");
i = 1;
while (i <= N) {
j = 1;
while (j <= N) {
++j;
printf("\n");
++i;
return 0;
6: pirâmide
#include <stdio.h>
int coluna;
int i, j, k, l;
do {
scanf("%d", &coluna);
if(coluna < 2) {
scanf("%d", &coluna);
i = 1;
j = 1;
printf(" ");
j++;
k = 1;
while (k <= i) {
printf("%2d", k);
k++;
l = i - 1;
while (l >= 1) {
printf("%2d", l);
--l;
printf("\n");
++i;
return 0;
7; verificar se é capicua
#include <stdio.h>
int valor;
int digito;
int original;
int inverso;
printf("Introduza um valor para verificar se ele e capicua: "); //valor pedido ao
utilizador
original = valor;
valor /= 10;
if (original == inverso) {
} else {
return 0;
Ficha 5
1: Função para ler e escrever vetor
#include <stdio.h>
int dimensao;
float vetor[dimensao];
scanf("%d", &dimensao);
if(dimensao < 1) {
LerVector(vetor, dimensao);
EscreverVector(vetor, dimensao);
return 0; }
scanf("%f", &vetor[i]);
printf("%.2f", vetor[i]);
}
printf("\n");
#include <stdio.h>
int main(void) {
int dimensao;
int vetor[100];
int soma;
scanf("%d", &dimensao);
if (dimensao < 1) {
printf("ERRO! O valor introduzido nao e valido, defina um novo valor inteiro maior que 1:
");
scanf("%d", &dimensao);
LerVector(vetor, dimensao);
return 0;
}
void LerVector(int vetor[], int dimensao) {
scanf("%d", &vetor[i]);
int soma = 0;
soma += vetor[i];
return soma;
#include <stdio.h>
int dimensao;
int maximo;
int minimo;
int vetor[100];
printf("Introduza um valor inteiro positivo maior que 1 para a dimensao do vetor: ");
scanf("%d", &dimensao);
if(dimensao < 1) {
scanf("%d", &dimensao);
LerVector(vetor, dimensao);
return 0;
printf("vetor[%d]", i);
scanf("%d", &vetor[i]); }
maximo = vetor[i];
}
return maximo;
minimo = vetor[i];
return minimo;
5: Função para ler o vetor e dizer em qual posição se encontra o máximo e o mínimo
#include <stdio.h>
int dimensao;
int PosicaoMaximo;
int PosicaoMinimo;
int vetor[100];
scanf("%d", &dimensao);
if(dimensao < 1) {
scanf("%d", &dimensao);
return 0;
printf("vetor[%d]", i);
scanf("%d", &vetor[i]); }
int PosicaoMaximo = 0;
PosicaoMaximo = i;
return PosicaoMaximo;
int PosicaoMinimo = 0;
PosicaoMinimo = i;
return PosicaoMinimo;
#include <stdio.h>
int main(void) {
float soma;
int dimensao;
float vetor1[dimensao];
float vetor2[dimensao];
float resultado[dimensao];
scanf("%d", &dimensao);
if (dimensao < 1) {
scanf("%d", &dimensao);
LerVector(vetor1, dimensao);
scanf("%f", &vetor1[i]);
return 0;
scanf("%f", &vetor[i]);
#include <stdio.h>
int dimensao;
float media;
float vetor[dimensao];
scanf("%d", &dimensao);
if(dimensao < 1) {
printf("ERRO. Digite um novo valor: ");
scanf("%d", &dimensao);
LerVector(vetor, dimensao);
return 0;
scanf("%f", &vetor[i]);
soma += vetor[i];
#include <stdio.h>
const int NumLinhas = 3;
int main(void) {
int linhas;
int colunas;
scanf("%d", &linhas);
scanf("%d", &colunas);
float matriz[NumLinhas][NumColunas];
return 0;
scanf("%f", &matriz[i][j]);
printf("\nMatriz informada:\n");
printf("%.2f\t", matriz[i][j]);
printf("\n");
#include <stdio.h>
int linhas;
int colunas;
float soma;
scanf("%d", &linhas);
scanf("%d", &linhas);
scanf("%d", &colunas);
scanf("%d", &colunas);
float matriz[NumLinhas][NumColunas];
return 0;
}
scanf("%f", &matriz[i][j]);
printf("\nMatriz informada:\n");
printf("%.2f\t", matriz[i][j]);
printf("\n");
soma += matriz[i][j];
}
}
return soma;
#include <stdio.h>
int linhas;
int colunas;
float maximo;
float minimo;
scanf("%d", &linhas);
scanf("%d", &linhas);
}
printf("Introduza o numero de colunas da matriz entre 2 e 4: ");
scanf("%d", &colunas);
scanf("%d", &colunas);
float matriz[NumLinhas][NumColunas];
return 0;
printf("Elemento[%d][%d]", i, j);
scanf("%f", &matriz[i][j]);
printf("%.2f\t", matriz[i][j]);
printf("\n");
maximo = matriz[i][j];
return maximo;
}
return minimo;
#include <stdio.h>
int main(void) {
int linhas;
int colunas;
float maximo;
float minimo;
scanf("%d", &linhas);
scanf("%d", &colunas);
float matriz[linhas][colunas];
LerMatriz(matriz, linhas, colunas);
return 0;
scanf("%f", &matriz[i][j]);
printf("\nMatriz informada:\n");
printf("%.2f\t", matriz[i][j]);
printf("\n");
}
void PosicaoMaximoMatriz(float matriz[NumLinhas][NumColunas], int linhas, int colunas, float
*maximo, int *posicaoLinha, int *posicaoColuna) {
*maximo = matriz[0][0];
posicaoLinha[0] = 0;
posicaoColuna[0] = 0;
*maximo = matriz[i][j];
posicaoLinha[0] = i;
posicaoColuna[0] = j;
*minimo = matriz[0][0];
posicaoLinha[0] = 0;
posicaoColuna[0] = 0;
*minimo = matriz[i][j];
posicaoLinha[0] = i;
posicaoColuna[0] = j;
}
}
#include <stdio.h>
int main() {
int tamanho;
scanf("%d", &tamanho);
printf("Tamanho inválido. Escreva uma matriz com linhas e colunas menor que 10 \n");
return 1;
int matriz[10][10];
scanf("%d", &matriz[i][j]);
}
int nulos = contarNulosDiagonalPrincipal(matriz, tamanho);
return 0;
int nulos = 0;
if (matriz[i][i] == 0) {
nulos++;
return nulos;
#include <stdio.h>
scanf("%d", &linhas1);
scanf("%d", &colunas1);
scanf("%d", &linhas2);
scanf("%d", &colunas2);
if (colunas1 != linhas2) {
printf("As matrizes nao podem ser multiplicadas. O numero de colunas da primeira matriz
deve ser igual ao numero de linhas da segunda matriz.\n");
return 1;
float matriz1[10][10];
float matriz2[10][10];
float resultado[10][10];
return 0;
scanf("%f", &matriz[i][j]);
resultado[i][j] = 0;
printf("%.2f\t", matriz[i][j]);
printf("\n");
#include <stdio.h>
int main() {
scanf("%d", &linhas);
scanf("%d", &colunas);
printf("Dimensões inválidas.\n");
return 1;
}
float matriz[10][10];
// Exibir o resultado
return 0;
scanf("%f", &matriz[i][j]);
int linhaMaxima = 0;
float somaMaxima = 0;
somaLinha += matriz[i][j];
somaMaxima = somaLinha;
linhaMaxima = i;
printf("%.2f\t", matriz[i][j]);
printf("\n");
#include <stdio.h>
int main() {
scanf("%d", &linhas);
printf("Digite o nu
scanf("%d", &colunas);
return 1;
float matriz[10][10];
float transposta[10][10];
return 0;
scanf("%f", &matriz[i][j]);
transposta[i][j] = matriz[j][i];
printf("%.2f\t", matriz[i][j]);
}
printf("\n");
Ficha 6
1; ler e escrever a string
#include <stdio.h>
int main() {
char string[100];
return 0;
#include <stdio.h>
#include <string.h>
int main() {
char string[100];
if (string[strlen(string) - 1] == '\n') {
string[strlen(string) - 1] = '\0';
return 0;
#include <ctype.h>
int main() {
char string[100];
if (isalpha(string[i])) {
string[i] = toupper(string[i]);
return 0;
#include <stdio.h>
#include <string.h>
int main() {
if (str1[strlen(str1) - 1] == '\n') {
str1[strlen(str1) - 1] = '\0';
if (str2[strlen(str2) - 1] == '\n') {
str2[strlen(str2) - 1] = '\0';
} else {
return 0;
#include <stdio.h>
#include <string.h>
// Função para inverter a string
int inicio = 0;
str[inicio] = str[fim];
str[fim] = temp;
inicio++;
fim--;
int main() {
char minhaString[MAX_TAMANHO_STRING];
// Lê a string do teclado
int i = 0;
i++;
minhaString[i] = '\0';
// Inverte a string
inverterString(minhaString);
return 0;
#include <stdio.h>
#include <ctype.h>
int numeroDigitos = 0;
if (isdigit(str[i])) {
numeroDigitos++;
}
return numeroDigitos;
int main() {
char minhaString[MAX_TAMANHO_STRING];
// Lê a string do teclado
int i = 0;
i++;
minhaString[i] = '\0';
return 0;
}
7; função para verificar se a string é capicua ou não
#include <stdio.h>
#include <string.h>
int inicio = 0;
if (str[inicio] != str[fim]) {
return 0;
inicio++;
fim--;
return 1;
int main() {
char minhaString[MAX_TAMANHO_STRING];
// Lê a string do teclado
int i = 0;
i++;
minhaString[i] = '\0';
if (verificarCapicua(minhaString)) {
} else {
return 0;
#include <stdio.h>
int contador = 0;
contador++;
return contador;
int main() {
char minhaString[MAX_TAMANHO_STRING];
char caractere;
// Lê a string do teclado
int i = 0;
i++;
minhaString[i] = '\0';
return 0;
#include <stdio.h>
int i, j;
if (str[i] != caractere) {
str[j++] = str[i];
str[j] = '\0';
int main() {
// Tamanho máximo da string
char minhaString[MAX_TAMANHO_STRING];
char caractere;
// Lê a string do teclado
int i = 0;
i++;
minhaString[i] = '\0';
// Lê o caractere do teclado
removerOcorrencias(minhaString, caractere);
Ficha 7
1; armazenar ponto no espaço tridimensional e funcçao para determinar a distancia
a) #include <stdio.h>
typedef struct {
double x;
double y;
double z;
} PONTO3D;
PONTO3D lerPONTO() {
PONTO3D ponto;
return ponto;
}
int main() {
ponto1 = lerPONTO();
lerPONTO(&ponto2);
return 0;
b) #include <stdio.h>
#include <math.h>
typedef struct {
double x;
double y;
double z;
} PONTO3D;
}
// Função para determinar a distância entre dois pontos de R3
return (float)distancia;
int main() {
// Exibindo os pontos
printf("\nPontos Lidos:\n");
escreverPONTO(ponto1);
escreverPONTO(ponto2);
return 0;
typedef struct {
} COMPLEXO;
COMPLEXO lerComplexo() {
COMPLEXO num;
return num;
COMPLEXO resultado;
return resultado;
}
int main() {
numero1 = lerComplexo();
numero2 = lerComplexo();
escreverComplexo(numero1);
escreverComplexo(numero2);
escreverComplexo(resultado);
return 0;
#include <stdio.h>
#include <string.h>
#define MAX 25
// Definição da estrutura ESTUDANTE
typedef struct {
char nome[MAX];
char apelido[MAX];
char residencia[MAX];
int telefone;
} ESTUDANTE;
aluno1.telefone == aluno2.telefone);
if (nomeComparison == 0) {
} else {
int main() {
printf("Nome: ");
printf("Apelido: ");
printf("Residencia: ");
printf("Telefone: ");
scanf("%d", &estudante1.telefone);
printf("Nome: ");
printf("Apelido: ");
printf("Residencia: ");
printf("Telefone: ");
scanf("%d", &estudante2.telefone);
if (equalEntry(estudante1, estudante2)) {
} else {
} else {
return 0;
#include <stdio.h>
#include <math.h>
typedef struct {
double x;
double y;
double z;
} PONTO3D;
return (float)distancia;
*q = vp[1];
menorDistancia = dist;
*p = vp[i];
*q = vp[j];
*p = vp[0];
*q = vp[1];
maiorDistancia = dist;
*p = vp[i];
*q = vp[j];
}
}
int main() {
PONTO3D pontos[3];
// Lendo os pontos
// Exibindo os resultados
return 0;
}
Ficha 8
1; ler frase e guardar em arquivo
#include <stdio.h>
#include <stdlib.h>
int main() {
FILE *arquivo;
char frase[1000];
if (arquivo == NULL) {
// Fechando o arquivo
fclose(arquivo);
printf("Frase escrita no arquivo 'ficheiro.txt'.\n");
return 0;
#include <stdio.h>
#include <stdlib.h>
int main() {
FILE *arquivo;
char linha[1000];
if (arquivo == NULL) {
printf("%s", linha);
// Fechando o arquivo
fclose(arquivo);
return 0;
3; ler ficheiro, calcular o numero de alunos reprovados, calcular a média das notas dos alunos
reprovados
#include <stdio.h>
// Função para ler do arquivo um vetor de inteiros com as notas dos alunos
FILE *arquivo;
int nota;
int i = 0;
if (arquivo == NULL) {
return;
V[i++] = nota;
*N = i;
fclose(arquivo);
}
// Função para calcular o número de alunos reprovados
int contadorReprovados = 0;
contadorReprovados++;
return contadorReprovados;
int somaNotas = 0;
int contadorAprovados = 0;
somaNotas += V[i];
contadorAprovados++;
if (contadorAprovados > 0) {
} else {
return 0.0; // Evita divisão por zero se não houver alunos aprovados
}
}
int main() {
int numAlunos;
LerVetor(notas, &numAlunos);
if (numAlunos > 0) {
} else {
return 0;
4; função para ler um ponto 3d, escrever, calcular a distancia entre dois pontos e guardar num
ficheiro
#include <stdio.h>
#include <math.h>
typedef struct {
double x;
double y;
double z;
} PONTO3D;
// Função para ler um ponto de R3
if (arquivo == NULL) {
return;
fclose(arquivo);
}
if (arquivo == NULL) {
return;
*numPontos = 0;
(*numPontos)++;
fclose(arquivo);
int main() {
int numPontos;
scanf("%d", &numPontos);
lerPonto(&pontos[i]);
}
// Exibindo os pontos
printf("\nPontos lidos:\n");
escreverPonto(pontos[i]);
if (numPontos >= 2) {
} else {
int numPontosLidos;
escreverPonto(pontosLidos[i]);
}
return 0;
#include <stdio.h>
#include <string.h>
int main() {
FILE *arquivo;
char frase[1000];
if (arquivo == NULL) {
frase[comprimento - 1] = '\0';
}
// Escrevendo a frase no arquivo binário
// Fechando o arquivo
fclose(arquivo);
return 0;
#include <stdio.h>
#include <stdlib.h>
int main() {
FILE *arquivo;
char frase[1000];
if (arquivo == NULL) {
// Fechando o arquivo
fclose(arquivo);
if (bytesRead > 0) {
printf("\n");
} else {
return 0;