Professional Documents
Culture Documents
Módulos
Módulo 1 – Introdução à Programação e Algoritmia 22
Módulo 2 – Mecanismos de Controlo de Execução 24
Módulo 3 – Programação Estruturada 24
Módulo 4 – Estruturas de Dados Estáticas 20
Módulo 5 – Estruturas de Dados Compostas 20
Módulo 6 – Estruturas de Dados Dinâmicas 14
Módulo 7 – Tratamento de Ficheiros 20
Programação de Sistemas Informação
“Raquel” 'L'
“Elisabete Barroso Vieira” '+'
“Festa de anos do Rodrigo” 'A'
“A”
Cadeia de carateres - Strings
printf(“%s”,str);
string1.c string2.c
Cadeia de carateres - Strings
Como sabemos onde acaba uma string? O carater ‘\0’ cujo código
ASCII é zero serve como terminador duma string.
Declararmos um vetor chamado v com 100 posições para o nome e
lá colocarmos Zé.
char v[100];
char str[14];
conterá uma string com 13 carateres úteis mais um finalizador.
Cadeia de carateres - Strings
#include <stdio.h>
main()
{ ex_put.c
puts("Módulo 4") ;
getch();
}
PRINTF e PUTS
#include <stdio.h>
main()
{
char NomeProprio[20]="Ricardo";
char Apelido[20]=“Araújo Pereira";
printf ("Nome: %s, %s \n", Apelido, NomeProprio);
}
exemploscanf.c
função gets (get string)
A função gets permite colocar, na variável que recebe por parâmetro,
todos os carateres introduzidos pelo utilizador. Ao contrário do scanf,
esta função não está limitada à leitura de uma única palavra.
Exemplo:
#include<stdio.h>
main ( )
{
char nome[50];
exgets.c
puts (“introduza o nome completo: ”);
gets (nome);
printf (“Nome completo: %s\n”, nome);
}
Exercícios
Escreva um programa que leia nomes e os apresente no
ecrã até que um nome vazio seja introduzido pelo
utilizador.
lernomes.c
Funções para strings
As strings não são mais do que vetores de carateres que contém um carater especial
(‘\0’).
Em C, as strings não podem ser manipuladas diretamente (comparadas,
concatenadas, …) pois não são um tipo básico de linguagem.
#include <stdio.h>
main ()
{
char str1[30],str2[30];
Exemplo:
puts (“Insira uma string: ");
gets (str1);
strcpy (str2,str1); /* Copia str1 em str2 */
printf ("\n\n%s \n”,str2);
}
exstrcopy.c
strrev (string reverse)
strrev (string);
A função strrev() serve para inverter o conteúdo de uma string .
Exemplo:
#include <stdio.h>
main()
{
char str[20];
puts("Insira uma string: ");
gets(str);
printf(“\nInvertendo ==> %s",strrev(str));
exstrrev.c }
strcmp (string comp)
strcmp (string1,string2);
A função strcmp() compara a string 1 com a string 2. Se as duas forem
idênticas retorna zero. #include <stdio.h>
main ()
Exemplo: {
char str1[30],str2[30];
puts (“Insira uma string: ");
gets (str1);
puts ("\nInsira uma outra string: ");
gets (str2);
if(strcmp(str1,str2))
printf("As strings são diferentes.\n");
else
printf("As strings são iguais.\n");
}
exstrcmp.c
strupr (string uppercase)
strupr (string);
A função strupr() serve para transformar o conteúdo de uma string
minúscula para maiúscula.
Exemplo:
#include <stdio.h>
main()
{
char str[20];
puts("Insira uma string:");
gets(str);
printf("\nEm maiusculas fica: %s",strupr (str));
exstrup.c getch();
}
strcat (string concat)
strcat (string_destino,string_origem);
A string de origem permanecerá inalterada e será anexada
ao fim da string de destino.
#include <stdio.h>
Exemplo: main ()
{
char str1[30],str2[30];
puts (“Insira uma string: ");
gets (str1);
puts(“Insira outra string: ”);
gets(str2);
exstrcat.c strcat (str2,str1);
printf ("\n\n%s\n",str2);
}
Exercícios
tras.c
Exercícios
6. Escrever um programa que receba uma palavra e que conte o
número de vogais. O programa deverá mostrar o número total
de carateres da palavra, o nº de vogais e a respetiva
percentagem das vogais em relação ao total de carateres.
nvogais.c
tamanho3str.c
Exercícios
8. Faça um programa que peça o nome, o sexo e a idade. Se o sexo for
feminino e idade menor que 25, imprimir o nome da pessoa e a palavra
APTO. Caso contrario imprimir NAO APTO e a razão porque não foi aceite.
Apto.c
9. Crie um programa que leia uma palavra e imprima conforme o tamanho da
palavra. Exemplo: LOVE
Como a palavra LOVE tem 4 letras o output ficaria assim:
Repare que foram mostrados 4 vezes na
horizontal e 4 na vertical.
love.c
Exercícios
vezeschar.c
5numpar_ipar.c
Exercícios
13. Faça um programa que permita calcular o número de caracteres
existentes numa string, mas sem usar a função strlen().
contachar.c
Depois de conseguir, faça outro programa de forma que retorne a
função contar(). contachareturn.c
14. Faça uma função Inverte() que permite colocar os caracteres
de trás para frente. No main chame essa mesma função para inverter
uma string. funcinvert.c
ascii.c
nome4.c
Abreviatura.c
Exercícios
22. O programa lê uma string e codifica-a avançando com a letra
seguinte do alfabeto. Ex: ABBA resulta: BCCB. abba.c
numvet.c
Exercícios
24. Faça um programa que carregue um vetor de carateres, gere e
imprima um outro vetor onde as vogais, do primeiro vetor, sejam
substituídas pelo carater *.
asterisco.c
maus1.c
Exercícios
26. Faça um programa que permita contar o numero de palavras
existentes numa string. contapalavras.c
mudalinha.c
Nap.c
Exercícios
33.Escreva uma função estica(char s[]) que, na string s introduz um
espaço após cada caracter.
esticar.c
Exemplo:
removechar.c
Exercícios
35. Fazer um programa em "C" que lê uma string qualquer e diga:
quantostring.c
senha.c
Exercícios
39. Faça um programa que peça uma frase e de seguida retira todas
as letras ‘v’ ou ‘V’ de uma frase e substitui pela letra ‘b’ ou ‘B’
respetivamente. Ex:
v_por_b.c
Exercícios
anagrama.c