Buscar

Linguagem de Programação: Conceitos Básicos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Apol 1 Linguagem de programação 
 
Questão 1/5 - Linguagem da Programação 
Qual a função que serve como o ponto de partida para a execução do programa e 
controla a execução direcionando as chamadas para outras funções no programa? 
 
B - A função main(). 
 
Questão 2/5 - Linguagem da Programação 
Na linguagem de programação C, existem comandos que são processados durante a 
compilação do programa. Estes comandos são conhecidos como? 
 
C - Diretivas de compilação. 
 
Questão 3/5 - Linguagem da Programação 
A memória de um computador é dividida em Bytes, numerados de zero até o limite de 
memória da máquina. Esses números são chamados endereços de Bytes, que são usados 
como referências, pelo computador, para localizar? 
 
A - As variáveis. 
 
Questão 4/5 - Linguagem da Programação 
Quais as duas tarefas principais que são executadas por um compilador no processo de 
tradução? 
 
D - Análise e síntese. 
 
Questão 5/5 - Linguagem da Programação 
Armazenam o endereço de outras variáveis na memória. Ou seja, ao invés de termos um 
valor numérico ou caracteres, por exemplo, armazenado na variável, temos um 
endereço. Essa definição refere-se a qual das alternativas abaixo? 
 
D - Os ponteiros. 
 
Apol 2 Linguagem de programação 
 
Questão 1/5 - Linguagem da Programação 
A declaração de uma union é muito semelhante à uma struct. 
A union se difere da struct em que aspecto? 
 
B - Permitir que um conjunto de variáveis compartilhem o mesmo espaço na 
memória. 
 
Questão 2/5 - Linguagem da Programação 
Um ponteiro é uma variável que armazena um endereço de memória, que corresponde a 
localização de outra variável. Dizemos que uma variável aponta para outra variável 
quando a primeira contém o endereço da segunda. 
Com base no conceito de ponteiros, está correto: 
 
A - int x, y, z; // Essa instrução declara três variáveis comuns. 
B - int *x, y, z; // Essa instrução declara somente x como ponteiro. 
C - int *x, *y, *z; // Essa instrução declara três ponteiros. 
D - int x, *y, *z; // Essa instrução declara y e z como ponteiros. 
E - Todas as alternativas estão corretas. 
 
Questão 3/5 - Linguagem da Programação 
A linguagem de programação C permite a criação dos nossos próprios tipos de variáveis 
e um desses tipos pode ser visto como um conjunto de variáveis referenciadas pelo 
mesmo nome, sendo que cada uma delas pode ter o mesmo tipo de dado ou vários tipos. 
E todas as variáveis possuem valores independentes. 
Isto se refere à: 
 
A - Struct. 
 
Questão 4/5 - Linguagem da Programação 
O conteúdo de uma variável pode ser modificado diretamente na memória quando 
passado seu endereço através dos ponteiros para uma função, ou seja, as alterações dos 
dados sofridas dentro da função também serão sentidas fora dela. 
Essa passagem é chamada de? 
 
A - Passagem de parâmetros por referência. 
 
Questão 5/5 - Linguagem da Programação 
Analise o código abaixo. 
 
1. struct cadastroDeAluno 
2. { 
3. char nome[40]; 
4. char disciplina[20]; 
5. float nota1; 
6. float nota2; 
7. }; 
8. struct cadastroDeAluno aluno; 
Responda a alternativa correta acerca deste código. 
 
A - cadastroDeAluno é o nome da union. 
B - aluno é a variável que irá utilizar a struct. 
C - Uma struct só pode conter variáveis do mesmo tipo. 
D - A variável aluno é um membro da struct. 
E - Todas as alternativas estão corretas. 
 
Apol 3 Linguagem de programação 
 
Questão 1/5 - Linguagem da Programação 
Analise o código abaixo e responda a alternativa correta. 
 
1. struct calendário { 
2. int dia; 
3. int mes; 
4. int ano; 
5. }; 
6. struct calendario agora, *depois; 
7. 
8. depois = &agora; // Coloca o endereço no ponteiro ‘depois’ 
C - A linha 6 declara o ponteiro “depois”. 
 
Questão 2/5 - Linguagem da Programação 
Podemos dizer que uma passagem de parâmetros por referência pode: 
 
A - Modificar o conteúdo da variável diretamente na memória. 
B - Passar seu endereço através dos ponteiros para uma função. 
C - As alterações sofridas dentro da função serão refletidas para fora dela. 
D - É enviado para a função uma referência às variáveis utilizadas. 
E - Todas as alternativas estão corretas. 
 
Questão 3/5 - Linguagem da Programação 
O comando typedef é usado para criar o que? 
 
A - Um sinônimo ou um alias. 
 
Questão 4/5 - Linguagem da Programação 
Analise o código abaixo e responda a alternativa correta. 
 
 
1. struct calendario{ 
2. int dia; 
3. int mes; 
4. int ano; 
5. }; 
6. struct calendario agora, *depois; 
7. 
8. depois = &agora; // Coloca o endereço no ponteiro ‘depois’ 
B - “dia”, “mes” e “ano” são componentes de uma estrutura heterogênea de 
dados. 
 
Questão 5/5 - Linguagem da Programação 
Analise as instruções abaixo e responda a alternativa correta. 
 
 
1. (*depois).dia = 28; 
2. (*depois).mes = 09; 
3. (*depois).ano = 2018; 
D - Podemos substituir “(*depois).dia” por “depois->dia”. 
 
 
Apol 4 Linguagem de programação 
 
Questão 1/5 - Linguagem da Programação 
Em recursividade, para evitar que um LOOP seja executado de uma forma infinita é 
necessário. 
 
A - Definir uma condição que vai parar o processo. 
 
Questão 2/5 - Linguagem da Programação 
O uso de funções recursivas é uma prática bastante comum em programação. Acerca de 
recursividade e funções recursivas, assinale a alternativa correta. 
 
A - Uma função recursiva pode realizar chamadas de si própria diversas 
vezes. Assim, é necessário tomar muito cuidado com a quantidade de 
instâncias abertas da função devido ao excesso de uso de memória. 
 
B - Quando não controlada, a função recursiva será chamada de forma 
infinita, gerando infinitas chamadas da própria função e excedendo o 
tamanho de memória da máquina. 
 
C - É considerada como um processo repetitivo de uma rotina 
(procedimento ou função) que faz uma chamada para ela mesma. 
 
D - Um LOOP eterno ou infinito ocorre quando um bloco do código repete a 
instrução descontroladamente, sobrecarregando a memória e ocasionando 
o travamento de todo o sistema. 
 
E - Todas as alternativas estão corretas. 
 
Questão 3/5 - Linguagem da Programação 
Ponteiros também podem ser definidos como componentes de estruturas. Em linguagem 
C, qual o operador utilizamos para identificar uma variável ponteiro? 
 
A - ‘*’ (asterisco) 
 
Questão 4/5 - Linguagem da Programação 
A função calloc() tem como objetivo? 
 
B - Criar um vetor com tamanho dinâmico. 
 
Questão 5/5 - Linguagem da Programação 
Uma das vantagens de criar um ponteiro para uma struct é? 
 
A - a possibilidade de passar o seu endereço como um parâmetro para uma 
função. 
 
Apol 5 Linguagem de programação 
 
Questão 1/5 - Linguagem da Programação 
Nesta disciplina aprendemos sobre macros. Acerca de funções macros, assinale a 
alternativa correta. 
 
A - São informados o nome e os parâmetros da função como sendo o nome 
da macro e o trecho de código semelhante a ser aplicado na substituição. 
 
Questão 2/5 - Linguagem da Programação 
A função memset() preenche (inicializa) uma quantidade de memória e sua sintaxe é? 
 
A - void * memset ( void * nPonteiro , int nValor , size_t nBytes ); 
 
Questão 3/5 - Linguagem da Programação 
Na manipulação de arquivos, podemos abrir um arquivo de diversos modos de acesso. 
O modo de acesso é uma string que contém uma sequência de caracteres que informam 
se o arquivo será aberto para escrita ou leitura. Depois que abrir o arquivo, podemos 
executar os tipos de ação previstos pelo modo de acesso. Assim, não será possível ler de 
um arquivo que foi aberto somente para escrita. 
Acerca dos modosde acesso usados na linguagem C, assinale a alternativa que contém 
todos eles. 
 
I. ‘r’ - Leitura de arquivo 
II. ‘w’ - Escrita em arquivo 
III. ‘a’ - Escrevendo ao final do arquivo (anexando) 
IV. ‘w+’ - Abre um arquivo tanto para leitura quanto para escrita. Se o arquivo já existir 
terá seu conteúdo substituído. 
V. Todas as alternativas estão corretas. 
 
D - V. 
 
Questão 4/5 - Linguagem da Programação 
Nesta disciplina aprendemos sobre códigos iterativos. Acerca desta assunto, assinale a 
alternativa correta. 
 
C - Utiliza a repetição em forma de laços ou estruturas de repetição (para, 
enquanto, repita) 
 
 
 
Questão 5/5 - Linguagem da Programação 
As funções memset(), memcpy(), memmove() e memcmp() pertencem a qual biblioteca 
na linguagem C? 
 
D - string.h 
 
Discursivas 
 
Questão 1/5 - Linguagem de Programação Seu professor pediu para que você fizesse o 
código, em C/C++, para uma calculadora capaz de realizar as quatro operações. O 
código que você entregou pode ser visto a seguir: 
 
#include.<stdlio.h> 
#include.<stdlib.h> 
 
int main () { 
float nunl, num2; 
int choice; 
 
prtntf( “[0] Exit\n[1] somar\n[2] subitratrtract\n[3] multipItcar\n[4] divtdtrin" ); 
printf( “Digite a operacao desejada: " I; 
scanf_s( "%d", &chotce ); 
 
switch (ChOiCe) { 
case 0: 
return 0; 
break; 
case 1: 
printf( "Digite o primeiro operando: ' ); 
scanf_s( "%f', &mun( ); 
prtntf1 "(Dtgtte o segundo operando: " 1) 
 scanf_s( "%f', 6mium2 ); 
printf( "%f', somar( sumi, nume ) ); 
break; 
case 2: 
printf( "Digite o primeiro operando: ' ); 
scanf s( "%f', Lnuml ); 
prtnt-fl "Dtgtte o segundo operando: " ); 
scanf_s( 6,nun2 ); 
prtntf( -%f subttratr( nunl, nun2 1 ); 
break; 
case 3: 
printf( 'Digite o primeiro operando: ' ); 
scanf_s( "%f', 6~111 ); 
printf1 "Dlotte o segundo operando: ); 
scanf s( 6num2 ); .... ; . ...... I 1. 
pi 1015111 10 , 11551, 
break; 
case 4: 
prtntfl 'Dtg tte o pr (metro operando: ' 1; 
scanf_s( "%', &num] ); 
printfl 'Digite o segundo operando: " ); 
scanf_s( &num? ); 
if ( nun2 == 1 ) { 
prtntf( '\nOtvisao por yeroll\n" 1; break; 
} 
printfl "%f', dividir( numl, num? 1 /: 
break; 
default: 
prtntfl 'Opcao tnvallda 1; 
break; 
} 
 
prtntfl r\n. 1; 
system( 'Pause); 
return 0; 
 
A correção voltou com apenas uma observação: faltaram as funções! 
 
Para conseguir resolver esta questão você terá que escrever as funções que 
permitirão que o seu código funcione. 
 
Nota: 20.0 
 
#include.<stdlio.h> 
#include.<stdlib.h> 
 
float somar( float, float ); 
float subitrair( float. float ); 
float multiplicar( float, float ); 
float dividir( float, float ); 
 
int main() { 
float nun1, num2; 
Int choice; 
 
Printf(“[0] Exit\n[1] somar\n[2] subitrairtract\n[3]; multiplicar\n[4] dividtr\n" ); 
Printf(“Digite a operacao desejada: "); 
scanf_s(“%d”, &choice ); 
 
switch (choite) { 
case 0: 
return 0; 
break; 
case 1: 
Printf(“'Digite o primeiro operando: " ); 
scanf_s( "%f”, &muml ); 
Printf(“Digite o segundo operando: " ); 
 
.... 
Resposta: 
float somar(float numl, float num2); 
{ 
float a; 
a= numl=num2; 
return(a); 
} 
float subitrair (float numl, float num2); 
{ 
float b; 
b=numl-num2; 
return(b); 
} 
float multiplicar(float numl, float num2); 
{ 
float a; 
a=numl*num2; 
return(a); 
} 
float dividir(float numl, float num2); 
{ 
float a a=numl/num2; 
return(a); 
} 
 
Questão 2/5 - Linguagem de Programação Você foi encarregado de fazer um 
programa que receberá quantos números o usuário quiser digitar e devolverá o 
maior e o menor entre eles. Para isso você recebeu o seguinte código: 
 
#include <stdlib.h> 
#include <stdio.h> 
 
int main() { 
int x,numere=0, mator=0, nenor=100; 
 
while (numero >= 0) 
{ 
printf(*Informe um valor positivo: 1; 
scanf(•%d', &numero); 
} 
printf("0 maior: VI e o menor: VIVI", maior, menor); 
 
systen("pause"); 
return e; 
 
Sel alterar o código indicado, digite as linhas que faltam para cumprir a tarefa. 
 
 
 
Resposta: 
If (numero>0) { 
 
If (numero>meior); 
maior=numero ; 
if (numero<manor); 
menor=numero; 
 } 
} 
 
printf("\n\n O maior %d e o menor %d\n", maior, menor); 
system(“pause”); 
return 0; 
 
 
Questão 3/5 - Linguagem de Programação Você foi encarregado de fazer um 
programa para armazenar o nome completo, um numero de identificação para 
cada aluno e a nota de todos os alunos de uma escola e, depois que os dados 
tiverem sido digitados, imprimir o nome completo e a nota do aluno que obteve 
a maior nota na escola. Considerando que não será possivel ter dois alunos com 
a mesma nota e que você mesmo deve criar os números de identificação você 
escreveu o seguinte código para testes 
 
Para concluir esta tarefa, você deverá escrever apenas as linhas que devem ser 
modificadas no código para que ele funcione como esperado. 
 
 
 
Resposta: dados[i].id = i+1; 
 
 
Questão 4/5 - Linguagem de Programação Seu gerente lhe encarregou de fazer 
um programa que receba salário, idade e sexo de 3 funcionados da sua empresa e 
determine e escreva no console do Windows as seguintes informações: 
 
a) quantos destes que possui o sexo masculino, com idade inferior a 25 anos, 
ganham salário inferior a R$ 1200,00 reais. 
b) quantos destes com o sexo feminino, com idade superior a 30 anos, ganham 
salário superior a R$ 5000,00 reais. 
 
Resposta: 
 
If ((sal<1200) || (idade<25) || (sexo == ‘ m ’)) { 
 ca++; 
} 
If ((sal>5000) || (idade>30) || (sexo == ‘ f ’)) { 
 cb++; 
} 
 
 
 
Questão 1/4 - Linguagem da Programação Explique com as suas palavras os 
seguintes conceitos em programação: 
 
a) typedef; 
b) recursividade; 
c) union; 
d) macro — diretiva //define; 
 
Nota: 25.0 
 
Gabarito: 
 
a) typedef - empregado para criar apelidos e novos nomes para variáveis. 
Empregado especialmente para renomear sinais e deixar os nomes das variáveis 
mais curtos e legíveis; 
 
b) recursividade - é uma técnica de programação ande uma função realiza a 
chamada dela própria quantas vezes forem necessárias, abrindo diversas 
instâncias da mesma função na memória do programa; 
 
c) union - são variáveis criadas capazes de suportar dados diferentes, atacados 
em um mesmo espaço de memória, em momentos diferentes. Union permite que 
um conjunto de variáveis compartilhem o mesmo espaço de memória; 
 
d) macro - diretiva //define — associa um identificador a uma cadeia de 
caracteres de token. Após a definição da macro, o compilador pode substituir a 
cadeia de caracteres de token em cada ocorrência do identificador no arquivo de 
origem; 
 
Questão 1/4 - Linguagem da Programação 
Considere um algoritmo com as seguintes etapas: 
 
1. Receba uma variável inteirana tela (variável x); 
2. Imprime na tela o valor de x utilizando um ponteiro (variável px); 
3. Imprima o endereço da variável px na tela; 
 
Observe o algoritmo abaixo e preencha as instruções faltantes nas linhas 8, 9 e 
10. 
 
1. #include <stdio.h> 
2. #include <stdlio.h> 
3. int main () 
4. { 
5. int *px 
6. printf("Digite valor de um numero: \n”) 
7. scanf_s("%d", &x); 
8. _________________________________ 
9. _________________________________ 
10. ________________________________ 
11. return 0; 
12.)} 
 
Nota: 25.0 
 
Gabarito:8. px = &x; 
9. printf("Valor digitado: kn", *px); 
10. printf("Valor digitado: M", &px);

Outros materiais