Você está na página 1de 10

CENTRO UNIVERSITÁRIO INTERNACIONAL UNINTER

ESCOLA SUPERIOR POLITÉCNICA


BACHARELADO EM ENGENHARIA ELÉTRICA
DISCIPLINA DE LINGUAGEM DE PROGRAMAÇÃO

ATIVIDADE PRÁTICA

BRUNA C. F. DE MATTOS – RU:2585663


PROF.WINSTON SEN LUN FUNG

ARIQUEMES – RONDÔNIA
2019
EXERCÍCIO 1:

Escreva um algoritmo em linguagem C com as seguintes instruções:


1. Declare três variáveis (inteiro, real e char);
2. Declare três ponteiros;
3. Associe as variáveis aos ponteiros;
4. Modifique os valores de cada variável indiretamente usando os ponteiros
associados. Para armazenar os valores nas variáveis, armazene na variável
char a primeira letra do seu nome, na variável inteira os dois últimos dígitos do
seu RU e na variável real os 4 últimos dígitos do seu RU, sendo os 2 últimos os
valores com virgula;
5. Imprima na tela os valores das variáveis antes e após a modificação.

#include <stdio.h> //Bibliotecas de armazenamento de comandos para o


funcionamento do código.
#include <stdlib.h>
#include <locale.h>

int main() //Função de entrada de um código.


{
char a='B'; //Comando usado para dar o resultado da inicial do aluno.
(Bruna).
int b=63; //Comando usado para dar o resultado dos últimos dois números do
RU (2585663).
float c=56.63; //Comando usado para dar o resultado dos quatro últimos
números do RU, sendo os dois últimos com vírgula (2585663).

char *pA = &a; //Ponteiros para associar o comando char (a).


int *pB = &b; //Ponteiros para associar o comando int (b).
float *pC = &c; //Ponteiros para associar o comando float (c).
printf("VARIÁVEIS ANTES a = %p\n",pA, setlocale(LC_ALL,"")); //Comando
usado para imprimir o resultado antes dos ponteiros de a na tela.
printf("VARIÁVEIS DEPOIS a = %c\n",*pA, setlocale(LC_ALL,"")); //Comando
usado para imprimir o resultado depois dos ponteiros de char na tela.
printf("VARIÁVEIS ANTES b = %p\n",pB, setlocale(LC_ALL,"")); //Comando
usado para imprimir o resultado antes dos ponteiros de b na tela.
printf("VARIÁVEIS DEPOIS b = %i\n",*pB, setlocale(LC_ALL,"")); //Comando
usado para imprimir o resultado depois dos ponteiros de int na tela.
printf("VARIÁVEIS ANTES c = %p\n",pC, setlocale(LC_ALL,"")); //Comando
usado para imprimir o resultado antes dos ponteiros de c na tela.
printf("VARIÁVEIS DEPOIS c = %f\n",*pC, setlocale(LC_ALL,"")); //Comando
usado para imprimir o resultado depois dos ponteiros de float na tela.

getchar(); //Comando usado para travar a tela para o usuário digitar as


informações.
system("pause"); //Comando usado para dar final à compilação
return 0;
} //Fim do código

1
FIG.1 CÓDIGO DO EXERCÍCIO 1 FUNCIONANDO

EXERCÍCIO 2:

Escreva um algoritmo em LINGUAGEM C que armazene na memória o seu RU


e o valor 1234567, ambos digitados pelo usuário na tela. Em seguida, imprima
na tela ambos RU usando ponteiros. O algoritmo também vai ter que comparar
os dois RU usando ponteiros e imprimir na tela qual é o maior.

#include <stdio.h> //Bibliotecas para funcionamento do código.


#include <stdlib.h>
#include <locale.h>

void inicio(int*a int*b); //Comando usado para ponteiros do resultado de


maior RU.
int main() //Função de entrada do código.
{
int aluno1,aluno2,*pa,*pb; //Comando usado para definir as variáveis.

printf("RU DO ALUNO 1: **PRESSIONE ENTER**\n"); //Comando usado para


imprimir pedido de entrada do primeiro RU.
scanf("%d",&aluno1); //Comando usado para leitura da variável aluno1.
printf("RU DO ALUNO 2: **PRESSIONE ENTER**\n"); //Comando usado para
imprimir pedido de entrada do segundo RU.
scanf("%d",&aluno2); pa=&aluno1;pb=&aluno2; //Comando para leituras da
variável e ponteiros de aluno1 e aluno2.
printf("\n\nRU DO ALUNO 1: %d\n",*pa); //Comando usado para imprimir o RU
1 digitado.
printf("RU DO ALUNO 2: %d\n",*pa); //Comando usado para imprimir o RU 2
digitado.
inicio(&aluno1,&aluno2); //Variáveis do código
return 0;
} void inicio(int*a, int*b) //Comando dos ponteiros
{
if (*a>*b) //Comando de situação SE para determinar qual RU é maior
{
printf("\n O MAIOR RU É: %d\n",*a,setlocale(LC_ALL,"")); //Comando usado
para imprimir o resultado de maior RU SE for maior.
}
else //Comando de situação SENÃO para determinar qual RU é maior
{
printf("\n O MAIOR RU É: %d\n",*b,setlocale(LC_ALL,"")); //Comando usado
para imprimir o resultado de maior RU SE for maior.
}
getchar(); //Comando usado para travar a tela para o usuário digitar as
informações.
system("pause"); //Pausa do código
} //Fim do código

FIG.2 CÓDIGO DO EXERCÍCIO 2 FUNCIONANDO


EXERCÍCIO 3:

Faça um algoritmo em linguagem C com as seguintes funcionalidades:


1. Receba um registro, com dois campos, como dados de entrada.
2. O primeiro campo é um vetor que vai armazenar o nome do aluno.
4. O segundo campo é uma variável do tipo inteiro que vai armazenar o RU do
aluno.
5.Imprime na tela os dados armazenados na estrutura.

#include <stdio.h>
#include <stdlib.h> //Bibliotecas necessárias para o código funcionar.
#include <stdio.h>
#include <locale.h>

int main() { //Função de entrada do código.

printf("MENU\n\n"); //Comando para imprimir o começo do menu na tela.


struct informacoes { //Função que contém variáveis de diversos tipos em
um comando.
char alunoa[50]; //Função usada para armazenar o nome do aluno.
int alunoRU; //Função usada para armazenar a variável do RU.
}; struct informacoes alunob; //Variáveis do código.
printf("NOME DO ALUNO: **PRESSIONE ENTER**"); //Comando usado para
imprimir espaço para digitar o nome do aluno.
scanf("%d", &alunob.alunoa); //Comando usado para leitura das variavéis
char e struct.
printf("\nNÚMERO DO RU DO ALUNO: **PRESSIONE ENTER**",
setlocale(LC_ALL,"")); //Comando usado para imprimir espaço para digitar o
RU do aluno.
scanf("%d", &alunob.alunoRU); //Comando para leitura das variáveis struct
e int.
printf("\n ALUNO:%s", alunob.alunoa); //Comando usado para imprimir o nome
do aluno depois de digitado.
printf("\n RU:%d\n", alunob.alunoRU); //Comando usado para imprimir o RU
do aluno depois de digitado.

getchar(); //Comando usado para travar a tela para o usuário digitar as


informações.
return 0;
} //Fim do código.
FIG.3 CÓDIGO DO EXERCÍCIO 3 FUNCIONANDO

EXERCÍCIO 4:

Replique o exercício 3. Porém, agora, declare um ponteiro para a estrutura de


dados heterogênea. No momento da leitura dos dados e da impressão na tela,
use o ponteiro para buscar o conteúdo dos campos. Imprima na tela também o
seu RU na tela.

#include <stdio.h>
#include <stdlib.h> //Bibliotecas necessárias para o código funcionar.
#include <stdio.h>
#include <locale.h>

int main() { //Função de entrada do código.

printf("MENU\n\n"); //Comando para imprimir o começo do menu na tela.


struct informacoes { //Função que contém variáveis 9de diversos tipos em
um comando.
char *alunoa; //Função usada para armazenar o nome do aluno.
int alunoRU; //Função usada para armazenar a variável do RU.
}; struct informacoes alunob; //Variáveis do código.
typedef struct informacoes aluno; //Função usada para dar outro nome à
uma struct dentro de outra struct
aluno aa;
aluno *a=&aa; //Ponteiro para busca de conteúdo no código.
a>alunoa=(char*)malloc(sizeof(char)*50); //Ponteiro usado com função de
armazenamento char para facilitar o uso.
printf("NOME DO ALUNO: **PRESSIONE ENTER**"); //Comando usado para
imprimir espaço para digitar o nome do aluno.
scanf("%d", &alunob.alunoa); //Comando usado para leitura das variavéis
char e struct.
printf("\nNÚMERO DO RU DO ALUNO: **PRESSIONE ENTER**",
setlocale(LC_ALL,"")); //Comando usado para imprimir espaço para digitar o
RU do aluno.
scanf("%d", &alunob.alunoRU); //Comando para leitura das variáveis struct
e int.
printf("\n ALUNO:%s", alunob.alunoa); //Comando usado para imprimir o nome
do aluno depois de digitado.
printf("\n RU:%d\n", alunob.alunoRU); //Comando usado para imprimir o RU
do aluno depois de digitado.
printf("\nBRUNA MATTOS RU: 2585663\n"); //Comando usado para imprimir RU
da aluna como pedido na atividade.
getchar(); //Comando usado para travar a tela para o usuário digitar as
informações.
return 0;
} //Fim do código.

FIG.4 CÓDIGO DO EXERCÍCIO 4 FUNCIONANDO


EXERCÍCIO 5:

Faça um algoritmo em linguagem C que contenha dois números inteiros


digitados na tela pelo usuário:
A. O primeiro número marca um início;
B. O segundo número marca um fim;
O algoritmo vai contar quantos números existem entre o início (primeira
entrada) e o fim (segunda entrada). A impressão na tela do usuário deve ser
realizada de duas formas:
A. Iterativa;
b. Recursiva;
Ao colocar no seu relatório uma imagem do seu código funcionando, coloque-
o rodando utilizando como valor de inicio os 2 últimos valores do seu RU e
valor final o número 99.

#include <stdio.h> //Biblioteca para funcionamento do código.


#include <stdlib.h>
#include <locale.h>

int inicio2 (int entrada,int saida); //Função que contém as variáveis do


código.
int main() //Função usada para dar inicio ao código.
{
int entrada,saida,a; //Variáveis do código para entrada e saída dos
números.

printf(" MENU\n"); //Comando usada para imprimir o menu na tela.


printf(" DIGITE O VALOR INICIAL: **PRESSIONE ENTER**\n"); //Comando usado
para imprimir na tela espaço para digitar os números de entrada.
scanf("%d",&entrada); //Comando usado para a leitura das variáveis de
entrada.
printf(" DIGITE O VALOR FINAL: **PRESSIONE ENTER**\n"); //Comando usado
para imprimir na tela espaço para digitar os números de saída.
scanf("%d",&saida); //Comando usado para a leitura das variáveis de saída.

printf("\n CÁLCULO ITERATIVO:\n",setlocale(LC_ALL,"")); //Comando usado


para imprimir texto do resultado de cálculo iterativo.
for (a=entrada;a<=saida;a++) //Função usada para definir o cálculo.
{
printf("%d",a); //Comando usado para imprimir resultado do cálculo.
}
printf("\n\n CÁLCULO RECURSIVO:\n\n"); //Comando usado para imprimit texto
do resultado de cálculo recursivo.
inicio2(entrada,saida);
if (entrada<saida) { //Função usada para definir o cálculo se o número
entrada for menor que o de saída.
printf("%d",entrada); //Comando usado para imprimir cálculo na tela.
inicio2(entrada+1,saida);
}
return 0;
}
int inicio2 (int entrada,int saida) //Variáveis do código.
{

if(entrada<=saida) //Função usada para definir o cálculo caso entrada seja


menor que saída.

{
printf("%d",entrada); //Comando usado para imprimir resultado de cálculo
na tela.
inicio2(entrada+1,saida);
}
getchar(); //Função usada para travar a tela até ser apertado o enter.
return 0;
} //Fim do código.

FIG.5 CÓDIGO DO EXERCÍCIO 5 FUNCIONANDO