Buscar

AV2 LINGUAGEM DE PROGRAMAÇÃO várias questões

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

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

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ê viu 3, do total de 187 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

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

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ê viu 6, do total de 187 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

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

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ê viu 9, do total de 187 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

Prévia do material em texto

1a Questão (Ref.: 201307354424) Pontos: 0,0 / 1,0
Para resolver um determinado problema um programador escreveu um código para trabalhar com um
vetor conforme apresentado na questão:
float vetn[20];
for (int i=0; i < 20; i++){
vetn[i] = ( i+1) * 0.1;
i = i + 2;
}
Desconsiderando a necessidade do programa completo e levando em conta apenas o código descrito, das
opções apresentadas, qual afirmativa está correta.
O terceiro valor armazenado será o 0.6.
O vigésimo valor armazenado será o 2.0.
O segundo valor armazenado será o 0.2.
Serão armazenados 20 valores reais.
Serão armazenados 7 valores reais.
2a Questão (Ref.: 201307409081) Pontos: 0,0 / 1,0
Um engenheiro elétrico desenvolveu um programa para que possa, entre outras funções, ler de um arquivo txt
dados coletados durante um dia de um usina elétrica.
Cada arquivo é salvo seguindo o modelo abaixo:
ddmmaaaa.txt (onde tem dd( digita o dia com dois algarismos), mm(digita o mês com dois algarismos) e
aaaa(ano com 4 algarismos).
O chefe dele quando deseja fazer uma consulta, clica no executável e escolhe a opção leitura e quando lhe é
perguntado, digita o nome do arquivo conforme falado acima.
Para que isso seja possível, deverá estar presente na função consulta() uma das linhas abaixo. Selecione-a.
fp=fopen("nomeArq", "a"); "
fp=fopen("ddmmaaaa.txt", "r");
fp=fopen(nomeArq, "w");
fp=fopen(ddmmaaaa.txt, "w+");
fp=fopen(nomeArq, "r");
3a Questão (Ref.: 201307487398)
Na Aula 1, estudamos algumas características e vantagens da linguagem C. Observe as afirmativas abaixo e
assinale a opção que contem a resposta correta.
I Tem boa Portabilidade.
II Não pode ser modularizada.
III É uma linguagem Orientada a Objetos.
IV Uma linguagem que pode manipular endereços de memória.
V Não possui um propósito especifico.
As afirmativas I e IV estão corretas e as demais, erradas.
As afirmativas I, IV e V estão corretas e as demais, erradas.
As afirmativas II, III e IV estão corretas e as demais, erradas.
As afirmativas IV e V estão corretas e as demais, erradas.
As afirmativas II, IV e V estão corretas e as demais, erradas.
4a Questão (Ref.: 201307793432) Pontos: 0,0 / 0,5
Suponha que as bibliotecas necessárias foram declaradas e considere em função das respostas a numeração
das linhas apresentadas entre parênteses.
(L1)int main()
(L2) {
(L3) char vet[40];
(L4) puts("Digite o seu nome completo:");
(L5) fgets(vet);
(L6) printf("%s\n", vet);
(L7) system("pause");
(L8) return (0);
(L9) }
Analise o código e assinale a alternativa correta.
Erro na (L6)- O printf não aceita a forma apresentada.
Erro na (L8)- O return é utilizado apenas em funções.
Erro na (L4)- Puts está sendo usado de forma errada.
Erro na (L5)- Na forma de preencher a função fgets.
Erro na (L3)- Deveria ser utilizado uma matriz.
5a Questão (Ref.: 201307286979)
Qual a estrutura de repetição usada para quantidade indeterminada de repetições?
for
while
switch
struct
if-else
6a Questão (Ref.: 201307406762) Pontos: 0,5 / 1,5
Um comerciante resolveu dar descontos em sua loja porque as vendas tinham diminuído muito nos últimos
quinze dias.
Teve uma idéia de confeccionar um cartaz informando que:
COMPRAS COM VALORES MENORES QUE R$ 40,00 - desconto de 5%
DEMAIS VALORES - desconto de 10%
Construa um programa que deixe entrar com o valor da compra e exiba o valor já com desconto.
Resposta: #include <stdio.h> int main () { int valor1,valor2; float("\nDigite o valor da sua compra:'); { if
(valor - 40 = valor * 0.05); } { else return (0); if(valor + 40 = valor *,10); }
Gabarito:
int main()
{
float valor;
printf("\nValor da compra:");
scanf("%f", &valor);
if( valor < 50)
printf("\nValor com desconto: %.2f\n",valor*0.95);
else
printf("\nValor com desconto: %.2f\n",valor*0.9);
}
7a Questão (Ref.: 201307406792) Pontos: 0,0 / 0,5
Estava pesquisando na internet, quando li, num fórum, um pedido de ajuda que incluía um programa
codificado na linguagem C, apresentado abaixo. A pessoa não tinha um compilador e não estava conseguindo
analisar o programa. Acompanhei no Teste de Mesa, supondo que eu teria digitado 345 quando foi solicitado
um número inteiro de três algarismos. Assinale a resposta CORRETA que apresenta o que foi exibido na
tela.
0345 (O valor absoluto do número formatado)
-0012 ( Representa a soma dos algarismos do número -345 formatado)
- 0.00289(O inverso do número formatado)
0543(O valor absoluto do número espelhado formatado)
0343 (O valor absoluto do resultado da expressão formatada)
8a Questão (Ref.: 201307311098) Pontos: 0,5 / 1,5
Faça um programa em C que dado um número inteiro positivo n, imprimir os n primeiros naturais ímpares.
Exemplo: Para n=4 a saída deverá ser 1,3,5,7.
Resposta: #include <stedio.h> #include <iostream> inte main() { int n; int("\nDigite um número"); for(int
i=0; i<n; i++){
Gabarito: #include
int main() {
int n, i, impar;
printf("\n\tGerador de numeros impares\n");
printf("\nDigite o valor de n: ");
scanf("%d", &n);
i = 0;
impar = 1;
printf("Os %d primeiros impares sao:\n", n);
while (i < n) {
printf ("%d\n", impar);
impar = impar + 2;
i = i + 1;
}
return 0;
}
9a Questão (Ref.: 201307487409) Pontos: 0,0 / 0,5
Um aluno de LPI gostaria de testar duas condições, usando somente uma estrutura if.
Abaixo as duas condições a serem testadas:
a) O ano de nascimento que precisa estar no intervalo fechado de 1989-2007.
b) O sexo que precisa ser masculino.
Sabe-se que o sexo se encontra em uma variável do tipo char de nome sexo e o ano em uma variável do tipo
int de nome ano.
Além disso, ele deseja que seja aceita tanto a letra M quanto a letra m.
Assinale a opção que resolve o problema desse aluno.
if(ano >=1989 && ano <=2007 && (sexo == 'M' || sexo == 'm' ) )
if(ano >= 1989 && ano<= 2007 && sexo== 'M' || sexo == 'm' )
if(sexo == 'M' || sexo == 'm' && ano >= 1989 && ano <= 2007 )
if( sexo == 'M' || (sexo == 'm' && ano >=1989 && ano<=2007 ) )
if( sexo == 'M' || sexo == 'm' && (ano >= 1989 && ano <= 2007 ) )
10a Questão (Ref.: 201307785709) Pontos: 0,0 / 0,5
Um dos períodos mais conturbados da historia mundial, foi a Guerra Fria. Esta tem início logo após a
Segunda Guerra Mundial, pois os Estados Unidos e a União Soviética vão disputar a hegemonia política,
econômica e militar no mundo.
Em alguns regimentos do exército, efetuava-se a trocas de mensagens cifradas através de textos comuns. Para
tanto, o aplicativo efetuava a leitura do texto e o exibia, somente em tela, sem as vogais. Este era o código.
Selecione o trecho de código abaixa que realiza esta operação:
for(i=0; i < strlen(texto) ;i++){
switch(tolower(texto[i])){
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
break;
default:
printf("%c\n",texto[i]);
}
}
for(i=0;i < strlen(texto);i++){
switch(texto[i]){
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
break;
default:
printf("%c\n",tolower(texto[i]));
} }
for(i=0 ;i < strlen(texto); i++){
switch(texto[i]){
case 'a': break;
case 'e': break;
case 'i': break;
case 'o': break;
case 'u': break;
default:
printf("%c\n",tolower(texto[i]));
}
}
for(i=1;i < strlen(texto);i++){
switch(tolower(texto[i])){
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
break;
default:
printf("%c\n",texto[i]);
}
}
for(i=1;i < strlen(texto);i++){
switch(texto[i]){
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
break;
default:
printf("%c\n",tolower(texto[i]));
}
}
Avaliação: CCE0242_AV3_201307198929 (AG) » LINGUAGEM DE PROGRAMAÇÃO I
Tipo de Avaliação: AV3
Aluno: 201307198929 - CLARISSE SILVA SIMEN
Professor: MARCIO PACHECO DE AZEVEDOANITA LUIZA MACIEL LOPES Turma: 9034/AD
Nota da Prova: 6,0 de 10,0 Nota do Trab.: 0 Nota de Partic.: 0 Data: 10/12/2014 13:26:42
1a Questão (Ref.: 201307450535) Pontos: 1,0 / 1,0
Todo programa codificado na linguagem C pode incluir uma, ou várias bibliotecas, mas existeuma que tem
que estar nessa lista, na maioria das vezes, devido a necessidade da interação com o usuário..
Assinale a alternativa que apresenta essa biblioteca.
iostream.h
studio.h
stdin.h
stdio.h
iostream
2a Questão (Ref.: 201307306795) Pontos: 1,0 / 1,0
que tipo de dado deve ser utilizado para definir uma variável que irá ramazenar um número do tipo: 65,890
float
char
int
uint
string
3a Questão (Ref.: 201307407740) Pontos: 0,0 / 1,0
Muitas séries matemáticas podem ser geradas pela estrutura do for. Analise o código abaixo, supondo que
você digitou 2 e 4 quando lhe foram solicitados dois números e escolha a opção que contém a série exibida
pelo código.
2 4 4 8 12 20 32
2 4 6 8 19 12 14 16
2 4 6 10 16 26 42 68
2 4 4 8 12 20 32 52
2 4 6 10 16 26 42
4a Questão (Ref.: 201307396356) Pontos: 1,0 / 1,0
Os operadores lógicos servem para combinar resultados de expressões, retornando se o resultado final é
verdadeiro ou falso. Marque a alternativa que contém o operador lógico que deve ser utilizado quando as duas
proposições lógicas necessitam ser verdadeiras para que o resultado da combinação seja verdadeiro.
((pontos>=10) # (pontos <=20))
((pontos>=10) ! (pontos <=20))
((pontos>=10) && (pontos <=20))
((pontos>=10) || (pontos <=20))
((pontos>=10) % (pontos <=20))
5a Questão (Ref.: 201307793327) Pontos: 0,0 / 1,0
Suponha que as notas digitadas pelo usuário sejam respectivamente (4.5; 8.5; 6.5).
int main()
{
float n1, n2, n3, med;
puts("Digites as notas");
scanf("%f", &n1);
scanf("%f", &n2);
scanf("%f", &n3);
med= (n1+n2+n3)/3;
if(med>=7)
printf("Aluno aprovado com: %.1f\n", med);
else
printf("Aluno reprovado com: %.1f\n", med);
system("pause");
return 0;
}
Desconsidere a necessidade da declaração das bibliotecas.
Qual será a mensagem final exibida para o usuário?
Aluno aprovado com: 6.00
Aluno reprovado com: 6.5
Aluno aprovado com: 6.5
Aluno aprovado com: 6.0
Aluno reprovado com: 6.50
6a Questão (Ref.: 201307487439) Pontos: 1,0 / 1,0
Um desenvolvedor precisava armazenar matrícula, nome e CR de um aluno. Sabe-se que a matrícula é um
número inteiro e que o CR é um número real. Observe as alternativas abaixo e assinale qual foi a escolhida
por atender a todas as exigências.
char nome[30]; int matricula; float CR;
char[30] nome; int matricula; double CR;
char nome; int matricula; float CR;
char[30] nome; int matricula[12]; float CR;
char nome; int matricula[12]; double CR;
7a Questão (Ref.: 201307785834) Pontos: 0,0 / 1,0
Uma universidade privada realizou um vestibular para o curso de medicina. Como prêmio de incentivo aos
futuros médicos, ofereceu bolsas de 10%%, 20%%, 30%%, 40% e 50% para 5˚, 4˚, 3˚, 2˚ e 1˚ colocados 
respectivamente. Um programa em C, recebe do banco de dados às matriculas em ordem decrescente (5˚, 4˚, 
3˚, 2˚ e 1˚) de colocação e inserem em um vetor. 
Qual das funções abaixo está implementada corretamente, para que possamos inverter para ordem crescente
(1˚, 2˚, 3˚, 4˚ e 5˚)? 
void inverter(int vet[],int tamanhoVetor){
int i; int aux;
for(i=0; i < tamanhoVetor; i++){
aux = vet[i];
vet[i] = vet[tamanhoVetor-1-i];
vet[tamanhoVetor-1-i] = aux;
}
}
void inverter(int vet[],int tamanhoVetor){
int i; int aux;
for(i=0; i < tamanhoVetor/2; i++){
aux = vet[i];
vet[i] = vet[tamanhoVetor-1-i];
vet[tamanhoVetor-1-i] = aux;
}
}
void inverter(int vet[],int tamanhoVetor){
int i; int aux;
for(i=0; i < tamanhoVetor/2; i++){
aux = vet[i];
vet[tamanhoVetor-1-i] = aux;
vet[i] = vet[tamanhoVetor-1-i];
}
}
void inverter(int vet[],int tamanhoVetor){
int i; int aux;
for(i=0; i < tamanhoVetor; i++){
vet[i] = vet[tamanhoVetor-1-i];
vet[tamanhoVetor-1-i] = aux;
aux = vet[i];
}
}
void inverter(int vet[],int tamanhoVetor){
int i; int aux;
for(i=0; i < tamanhoVetor/2; i++){
vet[i] = vet[tamanhoVetor-1-i];
vet[tamanhoVetor-1-i] = aux;
aux = vet[i];
}
}
8a Questão (Ref.: 201307463923)
Pontos: 1,0 / 1,0
Existem basicamente dois tipos de variáveis que podem ser declaradas em um código: variáveis locais e
variáveis globais. Para que um programador possa escolher a melhor maneira de declarar as variáveis em seu
programa é necessário que ele tenha domínio sobre elas.
Assinale a alternativa que contém apenas características das variáveis globais.
Declaradas fora do escopo de todas as funções e poderá ser manipulado por qualquer função.
Declaradas dentro do escopo de todas as funções e não poderá ser manipulado por qualquer função.
Declaradas fora ou dentro do escopo de todas as funções e não poderá ser manipulado por qualquer
função.
Declaradas fora do escopo de todas as funções e não poderá ser manipulado por qualquer função.
Declaradas dentro do escopo de todas as funções e poderá ser manipulado por qualquer função.
9a Questão (Ref.: 201307354458) Pontos: 1,0 / 1,0
Na criação de uma rotina de manipulação de equipamentos para perfuração de poços, o programador
precisava apenas pegar alguns dados existentes em um arquivo do equipamento para efeitos de cálculos e
fechá-lo.
Das opções abaixo marque a que descreve a forma mais adequada, com a qual o programador deveria
acessar o arquivo, segundo sua necessidade.
Não precisa abrir o arquivo
Para leitura e edição
Para leitura e gravação
Somente para gravação
Somente para leitura
10a Questão (Ref.: 201307793569) Pontos: 0,0 / 1,0
Considere que as bibliotecas necessárias foram devidamente declaradas.
int main() {
FILE *arq ;
int i;
_____ c ;
arq = _____ ( " jornal.txt " , " r " ) ;
if ( arq == NULL ){
printf ( " Erro na abertura do arquivo " ) ;
system ( " pause " ) ;
exit ( 1 ) ;
} else
for ( i = 0; i<5; i++){
c = fgetc ( arq ) ;
printf( "%c", c ) ;
}
_____( arq ) ;
system ( " pause " ) ;
return 0;
}
Complete as lacunas do código para que o programa funcione corretamente.
A ordem em que as palavras são dispostas na resposta, devem preencher respectivamente as lacunas.
int - open - close
char - fopen - fechar
int - abrir - fopen
float - fopen - fclose
char - fopen - fclose
1a Questão (Ref.: 201401289444) Fórum de Dúvidas (0) Saiba (0)
Um lojista gostaria de desenvolver um programa que pudesse armazenar os códigos(valores inteiros), os
valores de compra(valores reais), os valores de vendas(valores reais) e a quantidade(valores inteiros) de todos
os mil produtos.
Pensou em declarar algumas matrizes unidimensionais para tornar isso possível.
Qual das opções abaixo declara as matrizes necessárias para que o programa possa ser desenvolvido a partir
delas e seguindo, rigorosamente, as sugestões do texto acima?
int codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
double codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
double codigos[999], qtdade[999], valorC[999], valorV[999];
int codigos[999], qtdade[999]; float valorC[999], valorV[999];
double codigos[1000], qtdade[1000], valorC[1000], valorV[1000
2a Questão (Ref.: 201401320745) Fórum de Dúvidas (0) Saiba (0)
Analise as sentenças abaixo sobre a declaração de vetores e, em seguida, assinale a alternativa correta:
I. Na linguagem C++, uma string é um vetor de caracteres terminado com um caracter nulo cujo valor inteiro
é igual a zero (código ASCII igual a 0).
II. O terminador nulo também pode ser escrito usando a convenção de barra invertida do C++ como sendo
'\0'.
III. Como precisamos reservar duas posições para o terminador (a barra e o zero), sempre iremos declarar o
tamanho necessário menos um.
Somente a sentença II está correta
Somente as sentenças I e II estão corretas
Somente as sentenças II e III estão corretas
Somente as sentenças I e III estão corretas
Todas as sentenças estão corretas
3a Questão (Ref.: 201401326831) Fórum de Dúvidas (0) Saiba (0)
Observe as declarações abaixo e assinale a opção correta.
I int idades[]={5,16,27,19};
II float CR[3]={6.1, 8.9, 9.3};
III char letras[]={"A","E", "I", "O", "U"};
IV char letras[]={"Linguagem de "};
Somente as declarações I e II estão corretas
Somente as declarações I , II e IV estão corretas
As declarações III e IV estão erradas
Todas as declarações estão corretas
A declaração I está errada e a declaração II está correta
4a Questão (Ref.: 201401625059) Fórum de Dúvidas (0) Saiba (0)
Uma empresa possui uma série de programas desenvolvidos em C que acessam um mesmo arquivo. Um dos
problemas constatados é a falta de padronização no armazenamento de dados neste arquivo. Alguns
aplicativos gravam em caixa alta (letras maiúsculas), outros em caixa baixa (letras minúsculas) e alguns não
administram isto.
Para tanto, foi definido, por padrão, que todos os caracteres lidos devem ser convertidos para caixa alta
imediatamente após a leitura do mesmo. Qual função do C devo incluir nos programas para efetuar a
conversão de caractere a caractere?
upper
convertUp
toupper
toupr
convertUpper
5a Questão (Ref.: 201401326825) Fórum de Dúvidas (0) Saiba (0)
Um desenvolvedor precisava armazenar matrícula, nome e CR de um aluno. Sabe-se que a matrícula é um
número inteiro e que o CR é um número real. Observe as alternativas abaixo e assinale qual foi a escolhida
por atender a todas as exigências.
char[30] nome; int matricula[12]; float CR;
char nome; int matricula[12]; double CR;
char nome[30]; int matricula; float CR;
char[30] nome; int matricula; double CR;
char nome; int matricula; float CR;
6a Questão (Ref.: 201401326829) Fórum de Dúvidas (0) Saiba (0)
Observe as afirmativas abaixo sobre o terminador nulo e assinale a opção correta.
I Devemos sempre acrescentar mais uma posição ao vetor de char quando ele for dimensionado;
II Ele deve ser incluído ao final de todo vetor independente do tipo;
III O terminador nulo é identificado pelo caracter \0;
As afirmativas II e III são verdadeiras
Todas as afirmativas são verdadeiras
Somente a III é verdadeira
As afirmativas I e III são verdadeiras.
Somente a afirmativa I é verdadeira
7a Questão (Ref.: 201401249627) Fórum de Dúvidas (0) Saiba (0)
O professor de Matemática armazena as notas dos quatro bimestres e da média dos seus 47 alunos em cinco
vetores.
Ele pretende agrupar esses vetores em uma matriz bidimensional de nome NOTAS na linguagem C.
Assinale a opção que possibilitará fazer o que o professor deseja.
float NOTAS[47,5];
float NOTAS[47][5];
float notas[5][47];
float Notas[47][47];
float NOTAS[47][47];
8a Questão (Ref.: 201401193812) Fórum de Dúvidas (0) Saiba (0)
Para resolver um determinado problema um programador escreveu um código para trabalhar com um
vetor conforme apresentado na questão:
int vetn[10];
for (int i=1; i <= 10; i++){
vetn[i -1] = i * 13;
i = i + 1;
}
Desconsiderando a necessidade do programa completo e levando em conta apenas o código descrito, das
opções apresentadas em relação ao vetor, qual afirmativa está correta.
Serão armazenados 10 valores inteiros.
O terceiro valor armazenado será o 60.
O décimo valor armazenado será o 117.
O segundo valor armazenado será o 26.
Serão armazenados 5 valores inteiros.
9a Questão (Ref.: 201401193810) Fórum de Dúvidas (0) Saiba (0)
Para resolver um determinado problema um programador escreveu um código para trabalhar com um
vetor conforme apresentado na questão:
float vetn[20];
for (int i=0; i < 20; i++){
vetn[i] = ( i+1) * 0.1;
i = i + 2;
}
Desconsiderando a necessidade do programa completo e levando em conta apenas o código descrito, das
opções apresentadas, qual afirmativa está correta.
O vigésimo valor armazenado será o 2.0.
O terceiro valor armazenado será o 0.6.
O segundo valor armazenado será o 0.2.
Serão armazenados 20 valores reais.
Serão armazenados 7 valores reais.
10a Questão (Ref.: 201401193815) Fórum de Dúvidas (0) Saiba (0)
Para resolver um determinado problema um programador escreveu um código para trabalhar com um
vetor conforme apresentado na questão:
int vetn[3][2];
for (int i=0; i < 3; i++){
for (int j=0; j < 2; j++){
vetn[i][j] = i + j;
}
}
Desconsiderando a necessidade do programa completo e levando em conta apenas o código descrito, das
opções apresentadas, qual afirmativa está correta.
Serão armazenados os valores 0,1,2,2,3,3.
Serão armazenados os valores 0,0,1,1,2,2.
Serão armazenados os valores 0,1,1,2,2,3.
O trecho apresentado possui erro e apenas um valor será armazenado.
O trecho apresentado possui erro e nenhum valor será armazenado.
11a Questão (Ref.: 201401193804) Fórum de Dúvidas (0) Saiba (0)
As matrizes, em geral, são caracterizadas por se tratarem de uma única variável de determinado tamanho
que guarda várias informações do mesmo tipo.
Desconsiderando a necessidade do programa principal e levando em conta apenas a linha de comando,
das opções apresentadas em relação à manipulação de vetores marque a resposta correta.
int vetinteiros[5]=[1,2,3,4,5];
char vetnome[5]= "Maria";
float array[4]=[1.0,2.4,3.5,4.5];
char vet[5]={a,b,c,d,e};
float vetreais[4]={1.0,2.4,3.5,4.5};
12a Questão (Ref.: 201301273643) Pontos: 0,0 / 1,0
Matrizes é um dos conceitos mais largamente usado em programação nos dias de hoje.
Identifique a opção que ocorrerá um erro:
int matriz[2][3]= {{2,4,6},{7,8,9}};
int matriz[][3]= {{2,4,6},{7,8,9}};
int matriz[2][3]= {{2,4,6};{7,8,9}};
int matriz[][3]= {{2,4,6}};
int matriz[2][3]; matriz[0][0]=2; matriz[0][1]=4;
13a Questão (Ref.: 201401193819) Fórum de Dúvidas (0) Saiba (0)
Um programador durante a construção de um código precisava converter o texto correspondente a um
ano em um número inteiro, para poder executar alguns cálculos a partir deste ano.
Das opções apresentadas, qual função apresenta a solução para o programador?
atoi( ).
strcat( ).
strlen( ).
strlength( ).
strcont( ).
14a Questão (Ref.: 201401326850) Fórum de Dúvidas (0) Saiba (0)
Os alunos foram desafiados pelo professor para construir uma linha em linguagem C que pudesse exibir no
display o algarismo da casa das dezenas simples de um número dado na chamada das funções.
O professor disse que eles não precisavam fazer nenhuma proteção, mas deixou claro que tinham que usar
somente as duas funções que foram disponibilizadas para eles.
Observe os protótipos abaixo e os comentários sobre o que cada função retorna e depois escolha a opção que
possibilita o que foi pedido, supondo que o número seja : 987234.
Função 1: int retornaUltimo(int num); /* Retorna o algarismo da casa das unidades simples*/
Função 2: int retornaDezenas(int num); /* Retorna o número de dezenas de um número */
15a Questão (Ref.: 201401326846) Fórum de Dúvidas (0) Saiba (0)
Um engenheiro gostaria de definir uma função para resolver um determinado problema.
Observe o código abaixo e identifique a opção que exibe o que é retornado pela função.
Retorna 0 caso o número digitado seja negativo
Nada retorna porque tem erro na função, uma vez que não testa se o número é negativo
Retorna 1 se o número digitado for divisível por 10
Retorna o total de números digitados e divisíveis por 10
Retorna o total de algarismos do número digitado independente do sinal
16a Questão (Ref.: 201401289479) Fórum de Dúvidas (0) Saiba (0)
Observe o programa abaixo e escolha a opção que apresenta o que retorna da função chamada.
O valor retornado corresponde ao deslocamento mais um em relação ao endereço base da variável que
contem o menor número
O valor retornado corresponde ao índice da variável que contem o menor número
O menor número é retornado
O maior número é retornado
Nada retorna porque o nome do vetor da função main é diferente do nome do vetor da função
descobre
17a Questão (Ref.: 201401625200) Fórum de Dúvidas (0) Saiba (0)
A língua portuguesa realmente é surpreendente. Além derica em fonemas e vocabulário, possui muitas
curiosidades. Entre elas o conceito de palíndromo, que é uma palavra ou um número que se lê da mesma
maneira nos dois sentidos como, por exemplo, OVO.
Dado o código abaixo, qual das opções complementa o programa para identificar este curioso conceito?
int ePalindromo(char vet[],int tam);
void main(int argc, char *argv[]) {
char texto[] = "arara";
int i;
if(ePalindromo(texto, strlen(texto)))
printf("Eh palindromo");
else
printf("Nao eh palindromo");
system("PAUSE");
}
int ePalindromo(char vet[],int tam){
int i; int aux=1;
for(i=0; i < tam/2; i++){
if(vet[i]!=vet[tam-i]){
aux = 0;
break;
}
}
return aux;
}
int ePalindromo(char vet[],int tam){
int i; int aux=1;
for(i=0; i < tam-1; i++){
if(vet[i]!=vet[tam-i]){
aux = 0;
break;
}
}
return aux;
}
int ePalindromo(char vet[],int tam){
int i; int aux=1;
for(i=0; i < tam; i++){
if(vet[i]!=vet[tam+1-i]){
aux = 0;
break;
}
}
return aux;
}
int ePalindromo(char vet[],int tam){
int i; int aux=1;
for(i=0; i < tam/2; i++){
if(vet[i]!=vet[tam-1-i]){
aux = 0;
break;
}
}
return aux;
}
int ePalindromo(char vet,int tam){
int i; int aux=1;
for(i=0; i < tam-1; i++){
if(vet[i]!=vet[tam-i]){
aux = 0;
break;
}
}
return aux;
}
18a Questão (Ref.: 201401303309) Fórum de Dúvidas (0) Saiba (0)
Existem basicamente dois tipos de variáveis que podem ser declaradas em um código: variáveis locais e
variáveis globais. Para que um programador possa escolher a melhor maneira de declarar as variáveis em seu
programa é necessário que ele tenha domínio sobre elas.
Assinale a alternativa que contém apenas características das variáveis globais.
Declaradas fora do escopo de todas as funções e poderá ser manipulado por qualquer função.
Declaradas fora do escopo de todas as funções e não poderá ser manipulado por qualquer função.
Declaradas dentro do escopo de todas as funções e não poderá ser manipulado por qualquer função.
Declaradas fora ou dentro do escopo de todas as funções e não poderá ser manipulado por qualquer
função.
Declaradas dentro do escopo de todas as funções e poderá ser manipulado por qualquer função.
19a Questão (Ref.: 201401678899) Fórum de Dúvidas (0) Saiba (0)
Na manipulação de arquivos na linguagem C, podemos utilizar várias funções da linguagem. Cada uma delas
tem um propósito específico.
Das afirmativas apresentadas qual define corretamente qual a finalidade da função fgets() .
Funções para leitura formatada.
Função para ler uma linha.
Função que detecta o fim do arquivo.
Função que fecha um arquivo.
Funções para ler um caractere.
20a Questão (Ref.: 201401692040) Fórum de Dúvidas (0) Saiba (0)
Observe a linha abaixo e diga qual será o resultado obtido:
result = fprintf(arq,"Linha %d\n",i);
Se a função fprintf for executada com sucesso, devolve a constante EOF. Se a função NÃO for
executada com sucesso, retorna o número de caracteres gravados.
Se a função fprintf for executada com sucesso, devolve o número de caracteres gravados. Se a função
NÃO for executada com sucesso, retorna a constante EOF.
Se a função fprintf for executada com sucesso, devolve o número de caracteres gravados. Se a função
NÃO for executada com sucesso, retorna a constante BOF.
Se a função fprintf NÃO for executada com sucesso, devolve o número de caracteres gravados. Se a
função for executada com sucesso, retorna a constante EOF.
Se a função fprintf for executada com sucesso, devolve os caracteres gravados. Se a função NÃO for
executada com sucesso, retorna a constante EOF.
21a Questão (Ref.: 201401692037) Fórum de Dúvidas (0) Saiba (0)
A função _________ funciona como a função scanf(), porém, ao invés de ler os dados de teclado, estes dados
são lidos de um arquivo.
fgetc()
fprint()
fgets()
fscanf()
sscanf()
22a Questão (Ref.: 201401684430) Fórum de Dúvidas (0) Saiba (0)
Observe o programa abaixo e assinale a alternativa que corresponde a sua execução.
#include < stdio.h >
#include < stdlib.h >
int main( void) {
char c;
FILE *entrada;
entrada = fopen( "dados.txt", "r");
if (entrada == NULL) exit( EXIT_FAILURE);
c = getc( entrada);
if (c != EOF)
putc( c, stdout);
else
printf( "\nO arquivo terminou!");
fclose( entrada);
return EXIT_SUCCESS;
}
O programa lê o primeiro e o segundo caracteres do arquivo dados.txt e exibe esses caracteres na tela
do monitor.
O programa lê todos os caracteres do arquivo dados.txt e exibe esses caracteres na tela do monitor.
O programa lê o último caractere do arquivo dados.txt e exibe esse caractere na tela do monitor.
O programa lê o segundo caractere do arquivo dados.txt e exibe esse caractere na tela do monitor.
O programa lê o primeiro caractere do arquivo dados.txt e exibe esse caractere na tela do monitor.
23a Questão (Ref.: 201401692031) Fórum de Dúvidas (0) Saiba (0)
Para se ler uma string num arquivo podemos usar fgets() cujo protótipo é:
char *fget (char *str, int tamanho,FILE *fp);
char *fgets (char str, int tamanho,FILE *fp);
int *fgets (char *str, int tamanho,FILE *fp);
char *fgets (char *str, int tamanho,FILE fp);
char *fgets (char *str, int tamanho,FILE *fp);
24a Questão (Ref.: 201401692051) Fórum de Dúvidas (0) Saiba (0)
A função fgets():
lê um arquivo inteiro de uma vez.
imprime um caracter de cada vez.
imprime uma linha inteira de uma vez.
lê uma linha inteira de uma vez.
lê um caracter de cada vez.
25a Questão (Ref.: 201401679038) Fórum de Dúvidas (0) Saiba (0)
Uma das ultimas funções estudadas foi a remove( ). Suponha que o nome do arquivo é (pessoa) e é constante.
Assinale a alternativa que apresenta a sintaxe correta para a função.
remove( "pessoa" ) ;
remove( "pessoa", "arq" ) ;
remove( "pessoa", arq ) ;
remove( pessoa ) ;
remove(pessoa, arq) ;
26a Questão (Ref.: 201401679005) Fórum de Dúvidas (0) Saiba (0)
A função fseek() possui três parâmetros em sua sintaxe.
Assinale a alternativa que contém a afirmação correta sobre o segundo parâmetro (long offset) desta função.
É a posição de referência para o deslocamento.
Para este parâmetro só três valores poderão ser usados.
Indica a posição reposicionada do indicador de fluxo.
Para arquivo do tipo binário, o número de bytes que deverá ser deslocado a partir da origem.
Identifica o fluxo, isto é, o nome da variável ponteiro do tipo file.
27a Questão (Ref.: 201401193806) Fórum de Dúvidas (0) Saiba (0)
As matrizes, em geral, são caracterizadas por se tratarem de uma única variável de determinado tamanho
que guarda várias informações do mesmo tipo.
Desconsiderando a necessidade do programa principal e levando em conta a programação adequada,
declaração e respectiva manipulação das matrizes, das opções apresentadas a respeito das matrizes
bidimensionais marque a resposta correta.
char mat[2][2]; mat[0][2] = A;
char mat[2][2]; mat[0][2] = "A";
int mat[3][3]; mat[0][3] = 5;
int mat[3][3]; mat[0][2] = 5;
int mat[3][3]; mat[0][2] = 5.0;
28a Questão (Ref.: 201401678957) Fórum de Dúvidas (0) Saiba (0)
Na aula 10 vimos sobre as funções de localização e posicionamento.
Aassinale a alternativa que contêm apenas esses tipos de função.
ftell(), fwrite(),fread().
fwrite(), fseek(), rewind().
ftell(), fseek(), rewind().
ftell(), fseek(), fread().
fwrite(), fread(), rewind()
29a Questão (Ref.: 201401692060) Fórum de Dúvidas (0) Saiba (0)
O protótipo da função fwrite() é:
void fwrite(void *buffer,int numero_de_bytes,int count,FILE *fp);
int fwrite(void *buffer,int numero_de_bytes,int count,FILE *fp);
unsigned fwrite(void *buffer,int numero_de_bytes,int count,FILE *fp);
signed fwrite(void *buffer,int numero_de_bytes,int count,FILE *fp);
real fwrite(void *buffer,int numero_de_bytes,int count,FILE *fp);
30a Questão (Ref.: 201401678948) Fórum de Dúvidas (0) Saiba (0)
Nasaulas aprendemos sobre as funções de leitura e gravação.
A respeito da função fwrite assinale a alternativa correta.
fwrite(quantidade, ptrArq, endreçoElemento,tamanho);
fwrite(endreçoElemento, ptrArq, quantidade);
fwrite(endreçoElemento, tamanho, quantidade);
fwrite(endreçoElemento, tamanho, quantidade, ptrArq);
fwrite( tamanho, endreçoElemento, ptrArq);
31a Questão (Ref.: 201302029147) Pontos: 0,5 / 1,5
Considere que você foi contratado para trabalhar em um avançado laboratório de engenharia. Este laboratório
precisa desenvolver programas em liguagem C para conversões de medidas para automatizar os seus
processos. Codifique um programa em linguagem C que obtenha uma medida em quilômetros como entrada
de dados do usuário através da função scanf, converta a medida para milhas e exiba a medida convertida
através da função printf. Defina o fator de conversão como uma constante chamada fator de valor igual a
1.61, que deve ser usado no cálculo da conversão. Defina as variáveis como numéricos reais em ponto
flutuante de menor precisão para ocupar menos espaço de memória.
Gabarito:
#include
#include
int main(int argc, char** argv) {
const float fator = 1.61;
float medida;
scanf("%f", &medida);
medida = medida / fator;
printf("%f", medida);
return (0);
}
32a Questão (Ref.: 201302021867) Pontos: 0,5 / 0,5
Sabemos que para a utilização de funções da linguagem C precisamos declarar suas respectivas bibliotecas.
De acordo com a Linguagem C marque a opção em que o descritivo da biblioteca está correto.
math.h - Funções matemáticas
string.h - Funções para concatenação de strings com inteiros.
stdio.h - Funções para gráficos.
stdlib.h - Funções de entrada e saida.
time.h - Funções para manipulação de tempo, apenas horas, minutos e segundos.
33a Questão (Ref.: 201302170038) Pontos: 0,0 / 1,5
Desenvolva um programa que leia uma matriz 3 x 3 de inteiros e exiba sua diagonal principal e secundária.
Gabarito:
#include
#include
void main(){
int minhaMatriz[3][3];
int linha,coluna;
for (linha=0; linha<3;linha++){
for (coluna=0; coluna<3;coluna++){
printf("Linha e Coluna: [%d][%d] ",linha,coluna);
scanf("%d",&minhaMatriz[linha][coluna]);
}
}
printf("\n\n");
printf("-----------------------------\n");
printf("DIAGONAL PRINCIPAL Digitada:\n");
printf("-----------------------------\n");
for (linha=0; linha<3;linha++){
for (coluna=0; coluna<3;coluna++){
if (coluna == linha){
printf("%5d ", minhaMatriz[linha][coluna]);
}
}
}
printf("\n\n");
printf("-----------------------------\n");
printf("DIAGONAL SECUNDARIA Digitada:\n");
printf("-----------------------------\n");
for (linha=0; linha<3;linha++){
for (coluna=0; coluna<3;coluna++){
if (coluna == (3 - 1 - linha )){
printf("%5d ", minhaMatriz[linha][coluna]);
}
}
}
printf("\n\n");
system("PAUSE");
}
34a Questão (Ref.: 201302166221) Pontos: 0,5 / 0,5
Observe o código abaixo:
#include < stdio.h >
#include < stdlib.h>
int main(){
int x,y,z;
x=6;
y=2;
z = (x%2)+8;
puts(z);
system("PAUSE");
return 0;
}
Dentre as opções abaixo é correto afirmar:
O programa exibirá 11
Ocorrerá um erro
O programa exibirá 0
O programa exibirá 8
O programa exibirá 16
35a Questão (Ref.: 201302163331) Pontos: 0,5 / 0,5
Para que possamos criar nossos programas na linguagem C, iniciamos por criar o ______________, o qual
pode ser feito através de um editor de texto não formatado e salvo com a ______________ ou mesmo utilizar
um editor da linguagem, como o DEV C++. De acordo com o sistema operacional isto pode ser um pouco
diferente. Após esta etapa, devemos ___________ e linkeditar o programa gerando o
arquivo _____________, o qual após ser executado apresenta o resultado de nosso programa.
Das opções apresentadas, marque aquela que completa respectivamente e corretamente os espaços em branco
destacados do texto, segundo os conceitos da linguagem C apresentados no material didático da disciplina.
Código base - extensão .c - compilar - fonte
Código de texto - extensão .txt - editar - fonte
Fonte - extensão .txt - editar - executável
Executável - extensão .c - compilar - fonte
Código fonte - extensão .c - compilar - executável
36a Questão (Ref.: 201302163347) Pontos: 0,0 / 0,5
O desenvolvimento de um programa precisa atender as necessidades do usuário final, para isto o
desenvolvedor conta com algumas estruturas que facilitam a construção de seu código fonte. Uma delas é a
estrutura condicional if.
Das opções apresentadas marque a qual melhor define esta estrutura.
Compara os valores de algumas variáveis dependendo do resultado permite que o programa possa
fazer um caminho diferente repetidamente.
Testa uma expressão e dependendo do resultado permite que o programa siga por caminhos diferentes.
Testa uma condição e dependendo do resultado permite que o programa siga por caminhos diferentes
repetidamente.
Compara os valores de algumas variáveis e dependendo do resultado permite que o programa siga por
caminhos diferentes.
Compara os valores possíveis para uma variável e dependendo do resultado permite que o programa
siga por caminhos diferentes.
37a Questão (Ref.: 201302021828) Pontos: 0,5 / 0,5
Arquivos em C podem representar tanto arquivos do sistema quanto dispositivos periféricos, verifique se está
correto os arquivos pré-definidos:
stdin = Dispositivo de entrada padrão (normalmente o teclado)
stdaux = Dispositivo de saída principal (normalmente a porta usb)
stderr = Dispositivo de saída padrão (normalmente o monitor)
stdout = Dispositivo de saída de erro padrão (normalmente o monitor)
stdprn = Dispositivo de abertura de txt padrão (normalmente a porta paralela)
38a Questão (Ref.: 201302065115) Pontos: 1,0 / 1,0
Baseado nos conceitos de Matrizes, no que tange em relação a declaração, dentre as afirmações que se
seguem, assinale a que não contem erros sobre as matrizes multidimensionais- 1 e matrizes não
dimensionadas- 2 respectivamente.
1- Tipo nome [linha][coluna] e 2 - O tamanho não é especificado.
1- Tipo nome [tamanho1][tamanho2][tamanho3]...[tamanho n] e 2 - O tamanho não é especificado.
1- Tipo nome [tamanho1][tamanho2][tamanho3]...[tamanho n] e 2 - Tipo nome [tamanho]
1- O compilador cria uma matriz grande para conter todos os seus elementos e 2-Tipo nome
[tamanho1][tamanho2][tamanho3]...[tamanho n].
1- Tipo nome [linha][coluna] e 2 - O compilador cria uma matriz grande para conter todos os seus
elementos.
39a Questão (Ref.: 201302174604) Pontos: 0,0 / 0,5
Na linguagem C os vetores são um assunto de grande relevância, por isso o programador deve saber bem
como utilizar, declarar e utilizar.
Sabendo que as notas dos alunos de uma escola variam entre 0.0 e 10.0 com uma casa decimal e que é
necessário criar um vetor que armazene até 150 notas, qual alternativa declara de forma correta este vetor
para atender a necessidade citada.
int notas[150];
integer notas[150];
float notas[150];
float %.1f notas[150];
real notas[150];
40a Questão (Cód.: 135623) Pontos:0,0 / 0,5
Na linguagem C++, no processo de manipulação de memória temos a possibilidade de utilizar os ponteiros.
Quando as seguintes linhas de código forem executadas: (desconsidere a necessidade do restante do
programa)
float *x, pos;
pos = 5.5;
x = &pos
Podemos afirmar que:
A variável pos aponta para x
O conteúdo do endereço para o qual x aponta é 5.5
Não é possível trabalhar com ponteiros do tipo real.
O conteúdo de &pos é 5.5
O conteúdo de x é 5.5
41a Questão (Cód.: 134172) Pontos:0,5 / 0,5
A linguagem C/C++ utiliza variáveis, que podem ser classificadas como globais ou locais.
Dentre as opções, assinale a que expressa corretamente à definição de "variável global" da linguagem C/C++.
Mantêm seu valor em todo o programa e suas variáveis são escritas fora do escopo das funções.Não mantêm seu valor em todo o programa e suas variáveis são escritas dentro do escopo das funções.
São declaradas no início de um bloco. Seus escopos estão restritos aos blocos em que essas variáveis
foram declaradas.
São declaradas no final de um bloco. Seus escopos não estão restritos aos blocos em que essas
variáveis foram declaradas.
São declaradas dentro do main(). E suas variáveis são escritas dentro do escopo das funções.
42a Questão (Cód.: 135601) Pontos:0,0 / 0,5
Na definição de estruturas, funções, variáveis, etc. devemos seguir suas respectivas Sintaxes.
Das opções apresentas, qual é SINTAXE correta da definição de um vetor bidimensional.
tipo nome_vetor[numero_colunas][numero_linhas];
nome_matriz[numero_linhas][numero_colunas];
tipo nome_matriz[numero_colunas][numero_linhas];
tipo nome_matriz[numero_linhas][numero_colunas];
tipo nome_matriz[][];
43a Questão (Cód.: 135610) Pontos:0,0 / 1,0
Um programador durante a construção de um código precisava obter a quantidade de caracteres contido
em um determinado texto.
Na manipulação de textos na linguagem C++ é necessário a utilização de funções da biblioteca < string >.
Das opções apresentadas, qual função apresenta a solução para o programador?
atoi( ).
strlength( ).
strcat( ).
strlen( ).
strcont( ).
44a Questão (Cód.: 135613) Pontos:1,0 / 1,0
Um programador durante a construção de um código precisava retirar de um texto que continha uma data
completa, com dia, mês e ano, apenas o ano.
Das opções apresentadas, qual função apresenta a solução para o programador?
substr( );
strlen( ).
strlength( ).
strcat( ).
strcont( ).
45a Questão (Cód.: 188713) Pontos:1,0 / 1,0
As funções existem para decompor um problema em partes menores, simplificando e organizando o
programa como um todo. Tendo em vista o que foi exposto, assinale a opção que apresenta uma afirmativa
ERRADA em relação aos conceitos de funções.
O protótipo de uma função informa ao compilador o tipo de retorno, o nome e a lista de
parâmetros da função.
As variáveis declaradas no corpo de uma função são chamadas variáveis locais.
Todas as funções apresentam na declaração de seu cabeçalho um par de parênteses.
Além do valor de uma variável é possível passar para uma função o endereço da variável como
por exemplo, das matrizes.
O comando return encerra a execução de uma função e pode retornar vários valores para a
função chamadora da função.
46a Questão (Ref.: 201202297998)
Um engenheiro elétrico desenvolveu um programa para que possa, entre outras funções, ler de um arquivo
txt dados coletados durante um dia de um usina elétrica.
Cada arquivo é salvo seguindo o modelo abaixo:
ddmmaaaa.txt (onde tem dd( digita o dia com dois algarismos), mm(digita o mês com dois algarismos)
e aaaa(ano com 4 algarismos).
O chefe dele quando deseja fazer uma consulta, clica no executável e escolhe a opção leitura e quando lhe é
perguntado, digita o nome do arquivo conforme falado acima.
Para que isso seja possível, deverá estar presente na função consulta() uma das linhas abaixo. Selecione-a.
fp=fopen("ddmmaaaa.txt", "r");
fp=fopen(nomeArq, "w");
fp=fopen(nomeArq, "r");
fp=fopen(ddmmaaaa.txt, "w+");
fp=fopen("nomeArq", "a"); "
46a Questão (Cód.: 191422) Pontos:0,5 / 0,5
O chefe do departamento do pessoal da Empresa YYY gostaria de declarar matrizes bidimensionais para
armazenar nomes dos 20 funcionários e 14 salários de cada um deles.
Assinale a linha onde a declaração atende ao que ele deseja.
char nomes[20][31]; float salarios[20][20];
char nomes[19][31]; float salarios[19][13];
char nomes[20]; float salarios[19][13];
char nomes[20][31]; float salarios[20][14];
float nomes[20][31], salarios[20][14];
47a Questão (Cód.: 191479) Pontos:0,0 / 0,5
Uma das dificuldades da estrutura escolha/ caso é o fato das restrições variarem para cada linguagem,
dificultando a fixação. Na linguagem C, essa estrutura recebe o nome de switch() e tem suas restrições.
Observe os trechos abaixo e assinale o que é possível ser usado na linguagem C, supondo que se espera
encontrar na variável de nome a, inteira, alguns valores e entres eles está o número 90. Analise as linhas
abaixo e assinale que foi escrita corretamente para testar o número 90 na estrutura switch().
90: printf("Pode"); stop;
90: printf("Pode");
case 90: printf("Pode") ; break;
case a > 90: printf("Pode") ;break;
case a=90: printf("Pode") ;break;
48a Questão (Cód.: 188744) Pontos:0,0 / 1,0
Um programa pode ser formado por uma, ou mais funções. Quando existir mais de uma função, onde poderão
se posicionar as demais funções em relação à função main()?
Observe as afirmativas abaixo e assinale a resposta CORRETA
I Antes ou depois, depende do programador, pois a posição não gera, nunca, problema.
II Depois, desde que os protótipos sejam colocados antes da main().
III Antes para não ter que colocar os protótipos e nunca ocasionar erros.
IV Antes ou depois, desde que sejam colocados os protótipos.
II e III estão corretas
I e III estão corretas
Só a II está correta
I e IV estão corretas
II e IV estão corretas
49a Questão (Cód.: 93831) Pontos:0,0 / 0,5
Dado o trecho de lógica utilizando o conceito da linguagem de programação C. Diga o resultado das variáveis
x, y e z depois da seguinte sequência de operações:
int x,y,z;
x=y=10;
z=++x;
x=-x;
y++;
x=x+y-(z--);
x = -13
y = 11
z = 13
x = -11
y = 11
z = 10
x = 11
y = 11
z = 15
x = -01
y = 01
z = 10
x = -20
y = 20
z = 10
50a Questão (Cód.: 188843) Pontos:0,0 / 1,5
Um engenheiro civil gostaria de construir uma função que pudesse ajudar a quem precisa construir uma cerca
para um terreno de forma retangular.
Deverá ser informado a quantidade de fios da cerca, o preço do metro linear do arame farpado, a largura e o
comprimento do terreno.
Por medida de segurança, serão comprados 10% a mais do total de metros lineares. A função retornará o
custo total da cerca.
Gabarito:
float valorFinal(int quantidadeFios, float preco, float largura, float comprimento)
{
return ((largura + comprimento) * 2)*1.1 * quantidadeFios * preco;
}
Pontos: 0,0 / 1,5
51a Questão (Cód.: 187941)
Um comerciante resolveu dar descontos em sua loja porque as vendas tinham diminuído muito nos últimos
quinze dias.
Teve uma idéia de confeccionar um cartaz informando que:
COMPRAS COM VALORES MENORES QUE R$ 40,00 - desconto de 5%
DEMAIS VALORES - desconto de 10%
Construa um programa que deixe entrar com o valor da compra e exiba o valor já com desconto.
Gabarito:
int main()
{
float valor;
printf("\nValor da compra:");
scanf("%f", &valor);
if( valor < 50)
printf("\nValor com desconto: %.2f\n",valor*0.95);
else
printf("\nValor com desconto: %.2f\n",valor*0.9);
}
52a Questão (Ref.: 201201971778) Pontos: 0,5 / 0,5
Alguns iniciantes na linguagem C sentem dificuldades de usar a estrutura dos ifs encadeados. Sabemos que
algumas afirmativas abaixo não produziriam um resultado errado, mas que tornaria o programa com menor
qualidade, visto que testes seriam realizados sem necessidade.
Então, leia com atenção e só escolha a afirmativa poderá ajudá-los a construir programas com qualidade,
usando todos os recursos da estrutura if ... else if .....
Posso substituir ifs encadeados por ifs simples sem prejuízo de qualidade.
Melhor seria substituir, sempre, os ifs encadeados pela estrutura do switch().
O número de ifs encadeados é igual ao número de respostas possíveis, não considerando a
resposta errada do usuário, pois essa seria criticada no else.
O número de ifs encadeados é igual ao número de respostas possíveis, considerando a resposta
errada do usuário e não usaria else.
Posso substituir por vários ifs simples e um if composto, ao final, para criticar a resposta errada
do usuário.
53a Questão (Ref.: 201201914489) Pontos: 1,0 / 1,0
Uma parte bastante importante no estudo da linguagem C é ter o conhecimentodas suas bibliotecas. As
respectivas categorias das funções das bibliotecas #include ctype.h e #include math.h são:
Funções para teste de caracteres e conversão de letras maiúsculas em minúscula e vice-versa; funções
para entrada e saída de dados.
Funções para entrada e saída de dados; funções para conversão de números e alocação na memória.
Funções para entrada e saída de dados; funções matemáticas que possibilitam arredondamento de um
numero.
Funções para conversão de números e alocação na memória; funções matemáticas que possibilitam
arredondamento de um numero.
Funções para teste de caracteres e conversão de letras maiúsculas em minúscula e vice-versa; funções
matemáticas que possibilitam arredondamento de um numero.
54a Questão (Ref.: 201201957856) Pontos: 0,5 / 0,5
Qual dos comandos abaixo permite que um bloco de comandos seja executado enquanto a variável num seja
diferente de 0?
while (num == 0)
for ( i = 0; i == num; i++)
enquanto (num > 0)
while (num != 0)
for (i = num; i > 0; i++)
55a Questão (Ref.: 201201970602) Pontos: 0,0 / 0,5
Um engenheiro elétrico desenvolveu um programa para que possa, entre outras funções, abrir um arquivo txt
para alteração.
Quando existe a possibilidade de alteração, ele precisa conferir os dados antes de alterar. Dessa forma, ele
opta pelo trecho de alteração que possibilita a leitura antes de alterar e por ter incluído um trecho de proteção
que possibilita, se for necessário, desistir de alterar.
Os arquivos com dados são salvos todos os dias e segue um modelo para nomeá-los conforme mostrado
abaixo:
ddmmaaaa.txt (onde tem dd( digita o dia com dois algarismos), mm(digita o mês com dois algarismos)
e aaaa(ano com 4 algarismos).
Para que isso seja possível, deverá estar presente na função altera() uma das linhas abaixo.Selecione-a.
fp=fopen(ddmmaaaa.txt, "r");
fp=fopen("nomeArq", "a");
fp=fopen(nomeArq, "w");
fp=fopen(nomeArq, "a+");
fp=fopen("ddmmaaaa.txt" "r");
57a Questão (Ref.: 201201968216) Pontos: 0,0 / 1,5
Construa um programa que informe ao usuário que ele deverá entrar com um número inteiro de três
algarismos.
Se o número tiver três algarismos, deverão ser exibidos o algarismo da casa das centenas e o algarismo da
casa das unidades.
Caso contrário, aparecerá a mensagem: O numero não tem tres algarismos.
Observação: Lembre-se de que existem números negativos com tres algarismos.
Gabarito:
int main()
{
int num;
printf("\nDigite um numero com tres algarismos:");
scanf("%d", &num);
if( abs(num)>=100 && abs(num)<=999)
printf("\nCentenas: %d\tUnidades: %d\n",abs(num)/100, abs(num)%10);
else
printf("\nO numero nao tres algarismos\n");
}
58a Questão (Ref.: 201201879974) Pontos: 0,0 / 1,5
Considere que você foi contratado para trabalhar em uma empresa de trading (comércio) de commodities.
Tendo em vista o crescimento do mercado chinês, a empresa em que você trabalha deseja aumentar o
comércio de commoditties com o mercado chinês. Para que a empresa se torne competitiva, ela precisa
desenvolver programas em liguagem C para conversões de medidas para agilizar os seus processos e evitar
possíveis erros com o uso de calculadoras eletrônicas. Codifique um programa em linguagem C que obtenha
uma medida em Ku ping, unidade chinesa de medida de massa, como entrada de dados do usuário através da
função scanf, converta a medida para toneladas e exiba a medida convertida através da função printf. Defina
o fator de conversão como uma constante chamada fator de valor igual a 26797,96. Este fator deve ser usado
no cálculo da conversão, sabendo-se 1 tonelada equivale a 26797,96 Ku ping. Defina a constante chamada
fator e a variável chamada medida como numéricos reais em ponto flutuante de menor precisão para ocupar
menos espaço de memória.
Gabarito: #include
#include
int main(int argc, char** argv) {
const float fator = 26797.96;
float medida;
scanf("%f", &medida);
medida = medida / fator;
printf("%f", medida);
return (0);
}
59a Questão (Ref.: 201201883671) Pontos: 0,0 / 0,5
Qual é a saída de tela, deste trecho de programa?
int x=4,
y=8;
if (x < 2)
printf ("%d \n", x);
else
printf ("%d \n", y);
9
8
12
\n4
\n8
60a Questão (Ref.: 201102293872) Pontos: 0,5 / 0,5
A estrutura do if na linguagem C, como em toda linguagem, tem uma sintaxe. Observe as afirmações abaixo e
escolha a opção ERRADA.
I As chaves de abertura e fechamento, sempre, não são obrigatórias.
II No teste unimos expressões relacionais com operadores lógicos quando necessário.
III A palavra then está presente na estrutura.
IV O uso do else poderá não ser necessário.
IV está correta e a I não está correta.
I e III estão corretas.
II e IV estão corretas.
II está correta e a III não está correta.
I está errada.
61a Questão (Ref.: 201102291136) Pontos: 0,0 / 1,0
Na linguagem C, uma variável pode ser classificada como LOCAL ou GLOBAL. De acordo com as
características das variáveis LOCAIS, marque a alternativa ERRADA.
A função main() pode acessar qualquer variável local de qualquer função.
Duas, ou mais funções, podem declarar variáveis locais com os mesmos nomes.
As variáveis locais não podem ser acessadas de fora do escopo em que foram criadas.
Uma variável local só é visualizada pela função onde foi declarada.
Existem funções que não têm variáveis locais.
62a Questão (Ref.: 201102291319) Pontos: 1,0 / 1,0
Muitas séries matemáticas podem ser geradas pela estrutura do for. Analise o código abaixo e escolha a opção que contém a
série exibida pelo código.
0 1 1 2 3 4 5 6
1 1 2 3 5 8 13 21
0 1 1 3 2 4 5 7
0 1 1 2 3 5 8 13 21
1 3 4 7 9 11 13
Respostas de outras questões iguais
Muitas séries matemáticas podem ser geradas pela estrutura do for... 1 1 2 3 5 8 13 21
Muitas séries matemáticas podem ser geradas pela estrutura do for... 2 4 6 10 16 26 42
Muitas séries matemáticas podem ser geradas pela estrutura do for... 1 1 2 4 7 13 24 44
63a Questão (Ref.: 201301273637) Pontos: 0,5 / 0,5
Dentre as estruturas de Dados mais utilizadas em programação, se encontram os vetores.
Baseado neste conceito, identifique a opção incorreta:
Na declaração int[50]; o índice da ultima posição é 49.
Permite agrupar vários elementos em uma mesma variável indexada.
Um vetor de caracteres terminado com um caracter nulo é uma string na linguagem C.
Deve ser declarado antes de acessado em seu programa.
Podem ser formado por elementos de tipos diferentes.
64a Questão (Ref.: 201301220969) Pontos: 0,8 / 1,5
Uma nova regra foi criada para as finais das Olimpíadas; duas provas para decidir o campeão olímpico. Na
primeira prova, os três nadadores com melhores tempos iriam participar e somente os dois com melhores
tempos iriam para segunda.
Construa um programa, somente para a primeira prova, que deixe entrar com os tempos e os números de
inscrição e exiba os números de inscrição dos dois melhores tempos, assumindo que os tempos serão
diferentes.
Gabarito:
int main()
{
int matric1, matric2, matric3;
float tempo1, tempo2, tempo3;
printf("\nDigite tres numeros de inscricao: ");
scanf("%d %d %d",&matric1, &matric2, &matric3) ;
printf("\nDigite tres tempos: ");
scanf("%f %f %f", &tempo1, &tempo2, &tempo3) ;
if( tempo1 > tempo2 && tempo1 > tempo3 )
printf("\n%d\t%d\n", matric2 ,matric3);
else if( tempo2 > tempo3 )
printf("\n%d\t%d\n", matric1 ,matric3);
else
printf("\n%d\t%d\n",matric1,matric2);
}
65a Questão (Ref.: 201301221171) Pontos: 0,5 / 0,5
Um engenheiro precisava calcular o valor do imposto a ser pago no carnê leão.
Sabe-se que o imposto é calculado sobre o salário bruto.
Acompanhe o programa codificado na linguagem C, supondo que você digitou 4000 para primeira solicitação
de entrada e 1000, para segunda solicitação. Escolha a opção onde está presente o valor do imposto.
Valor do imposto a ser pago: 1000.00
Valor do imposto a ser pago: 800.00
Valor do imposto a ser pago: 650.00
Valor do impostoa ser pago: 850.00
Valor do imposto a ser pago: 750.00
66a Questão (Ref.: 201301101344) Pontos: 0,5 / 0,5
Qual o nome da função matemática que calcula a potenciação de um número?
elevado
pow
sqrt
double
pot
67a Questão (Ref.: 201301167349) Pontos: 0,5 / 0,5
A linguagem C/C++ apresenta vantagens e desvantagens em sua utilização. Considere as seguintes
afirmativas:
|) Possibilidade em programação de alto e baixo nível;
||) Grande período para o aprendizado.
|||) Adequação a grandes projetos;
Assinale a alternativa que contem apenas vantagens da linguagem C++.
Apenas |
Apenas |||
| e ||
| e |||
|| e |||
68a Questão (Ref.: 201301125465) Pontos: 0,0 / 1,5
Faça um programa em C que dado um número inteiro positivo n, imprimir os n primeiros naturais ímpares.
Exemplo: Para n=4 a saída deverá ser 1,3,5,7.
Gabarito: #include
int main() {
int n, i, impar;
printf("\n\tGerador de numeros impares\n");
printf("\nDigite o valor de n: ");
scanf("%d", &n);
i = 0;
impar = 1;
printf("Os %d primeiros impares sao:\n", n);
while (i < n) {
printf ("%d\n", impar);
impar = impar + 2;
i = i + 1;
}
return 0;
}
69a Questão (Cód.: 135611) Pontos: 0,0 / 1,0
Um programador durante a construção de um código precisava unir o nome e a matricula de um
servidor.
Na manipulação de textos na linguagem C++ é necessário a utilização de funções da biblioteca < string
>.
Das opções apresentadas, qual função apresenta a solução para o programador?
atoi( ).
strcat( ).
strlen( ).
strcont( ).
strlength( ).
70a Questão (Cód.: 135634) Pontos: 0,0 / 0,5
Quando uma função e chamada e recebe como parâmetro o endereço de uma variável, damos o nome a
esta forma de passagem de parâmetros de Passagem por:
valor
endereço
ponteiro
referência
memória
71a Questão (Ref.: 201202259850) Pontos: 1,0 / 1,0
Quanto aos códigos de formatação (especificadores de formato) usados com a função printf() e tendo em vista
o trecho do programa, qual deveria ser a linha usada para exibir a saída abaixo:
Observação: A sequência de números que aparece na saída representa as colunas da tela.
Trecho
int num= 12; float med=9.8;
printf("\n12345678901234");
printf("\n%4d\t%f\n", num, med);
printf("\n%d\t%6.2f\n", num, med);
printf("\n%d\t%06.2f\n", num, med);
printf("\n%04d\t%.2f\n", num, med);
printf("\n%d\t06.2f\n", num, med);
72a Questão (Ref.: 201202207909) Pontos: 0,0 / 0,5
Na linguagem C/C++ existem três loops ou estruturas de repetição, sendo elas, for, while e do-while.
Considere as afirmações abaixo.
I) O loop for é usado para repetir um comando ou bloco de comandos diversas vezes, podendo ser baseado
em um contador interno da estrutura e uma condição que o encerra.
II) A estrutura do-while executa inicialmente todos os comandos internos do laço, depois testa a condição, se
esta for verdadeira, retorna e faz tudo novamente.
III) A estrutura while testa uma condição, se esta for falsa, as instruções dentro do laço não serão executadas,
e o teste será feito novamente até que a condição seja atingida.
As assertivas corretas são:
Apenas a ||
| e ||
|| e |||
Apenas a |||
73a Questão (Ref.: 201202208129) Pontos: 0,0 / 0,5
Na criação de uma rotina de manipulação de equipamentos para perfuração de poços, o programador
precisava apenas pegar alguns dados existentes em um arquivo do equipamento para efeitos de cálculos e
fechá-lo.
Das opções abaixo marque a que descreve a forma mais adequada, com a qual o programador deveria
acessar o arquivo, segundo sua necessidade.
Somente para gravação
Para leitura e gravação
Não precisa abrir o arquivo
Para leitura e edição
Somente para leitura
74a Questão (Ref.: 201202140650) Pontos: 0,5 / 0,5
Qual a estrutura de repetição usada para quantidade indeterminada de repetições?
struct
for
while
if-else
Switch
75a Questão (Ref.: 201302049360) Pontos: Sem Correç. / 1,5
Supondo que seja necessário saber em relação a dois números inteiros quais quer:
a)O resto da divisão do maior pelo menor;
b)O quociente da divisão do maior pelo menor;
c)E o resultado da subtração do maior pelo menor.
Faça um programa em C que, permita ao usuário informar os dois valores e exibir o que foi citado, sendo que
o programa permite a entrada desses dois valores várias vezes e para encerrar o programa, o usuário deverá
digitar um valor negativo.
Gabarito:
#include < stdio.h >
#include < stdlib.h >
int main() {
int n1,n2,aux;
do{
printf("Digite dois valores interios: ");
scanf("%d%d",&n1,&n2);
if((n1>0) && (n2>0)) {
if(n1 < n2){
aux = n1;
n1 = n2;
n2 = aux;
}
printf("Resto: %d",n1%n2);
printf("Quociente: %d",n1/n2);
printf("Sub: %d",n1-n2);
}
} while((n1>0) && (n2>0));
return 0;
}
76a Questão (Ref.: 201301981217) Pontos: 0,5 / 0,5
Um programa de cadastro deve solicitar cpf,nome e telefone de alunos até que o cpf seja igual a 0. Que
estrutura em C melhor representa esta tarefa?
for (cpf=0; cpf !=0; cpf++)
{ // [bloco de comandos] }
do{ // [bloco de comandos] }
while (cfp !=0);
while{ // [bloco de comandos] }
do (cfp !=0);
do while (cfp !=0)
{ // [bloco de comandos] }
if (cpf != 0)
{ // [bloco de comandos] }
77a Questão (Ref.: 201301992495) Pontos: 0,0 / 1,5
Sabe-se que o dominó é um jogo milenar e que tem 28 peças. Os valores dessas peças, poderíamos dizer,
usando uma linguagem Matemática, que seriam resultados da combinação 2 a 2 dos números de 0 a 6,
incluindo peças onde o número esteja presente duas vezes.
Construa uma função que exiba os valores das peças do dominó.
Gabarito:
void domino()
{
int x, y;
for( x=0 ; x <= 6 ; x++)
{
for( y = x; y <= 6 ; y++)
printf("%d - %d\t", x,y);
printf("\n");
}
}
78a Questão (Ref.: 201302048761) Pontos: 1,0 / 1,0
As matrizes, assim como os vetores, são muito importantes para facilitar o trabalho de um programador, por
isso é extremamente importante saber como utiliza-la.
Assinale a alternativa em que há uma matriz bidimensional, do tipo inteiro, com 10 linhas e 20 colunas,
declarada de forma correta.
matrizExemplo int[10][20];
int matrizExemplo[10,20];
int matrizExemplo[10][20];
matrizExemplo float[20][10];
float matrizExemplo[20][10];
79a Questão (Cód.: 188769) Pontos: 1,0 / 1,0
Um Engenheiro de Produção que gostava de programar resolveu definir uma função para facilitar seu
trabalho, uma vez desejava dar um premio de produtividade para sua equipe.
O premio seria calculado de forma variada e iria se basear na avaliação de cada funcionário (valores de 1 a 5).
Ele escreveu o protótipo abaixo.
float premio(float salario, int avaliacao);
Tendo em vista esse protótipo é CORRETO afirmar que a função:
Recebe dois valores, salário e a avaliação, passados por referência.
Retornará dois valores para a função chamadora.
Não retorna nenhum valor para a função chamadora.
Recebe dois valores, salário e a classificação, passados por valor.
Retornará o salário somado ao percentual
80a Questão (Cód.: 187951) Pontos: 0,0 / 0,5
Na lista de exercícios que foi liberada pela professora de Linguagem de Programação I, na questão 3, estava
presente o programa abaixo. No enunciado, era solicitado que fosse feito o acompanhamento da execução do
programa no Teste de Mesa, supondo que tivesse sido digitada a seguinte data: 11151918.
Assinale a opção CORRETA para a saída desse programa.
1918 / 15 / 11
1918 / 11 / 15
15 / 11 / 1918
11 / 1918 / 15
11 / 15 / 1918
81a Questão (Cód.: 135633) Pontos:0,0 / 0,5
Durante a execução de um programa o operador delete pode desalocar memória, criada pelo operador new.
Esse tipo de manipulação de variáveis com este operador é chamado de:
Alocação dinâmica
Alocação por endereço
Passagem por valor
Alocação estática
Passagem por endereço
82a Questão (Ref.: 201102289806) Pontos: 1,5 / 1,5Um professor de Linguagem de Programação I pediu a um aluno que desenvolvesse um programa codificado
na linguagem C para que ele pudesse calcular a nota da AV1 que seria composta de duas notas: prova e
seminário. Entretanto, ele informou que, se a nota da prova fosse menor do que 4.0, então, não valeria a nota
do seminário, ficando a nota da AV1 só com a nota da prova. Caso contrário, Seria feita a média aritmética
para compor a nota da AV1.
Ajude ao aluno, escrevendo esse código.
Resposta: #include<stdio.h> #include<stdlib.h> intmain() { float prova, seminario, media; printf("\n nota da
prova:\n"); scanf("%f",&prova); printf("\n nota do seminario:\n"); scanf("%f", & seminario); if(prova ɜ) 
printf("\n nota da av1: %.1f\n,"prova); else { media=(prova+seminario)/2; printf("\nnota da av1:%.1f\n",
media); } }
Gabarito:
int main()
{
float prova, seminario,media;
printf("\nNota da prova: \n") ;
scanf("%f", &prova);
printf("\nNota do seminario: \n") ;
scanf("%f", &seminario);
if ( prova < 4)
printf("\nNota da AV1: %.1f\n", prova) ;
else
{
media=(prova+seminario)/2;
printf("\nNota da AV1: %.1f\n", media) ;
}
}
83a Questão (Ref.: 201102279951) Pontos: 0,5 / 0,5
Os operadores lógicos servem para combinar resultados de expressões, retornando se o resultado final é
verdadeiro ou falso. Marque a alternativa que contém o operador lógico que deve ser utilizado quando as duas
proposições lógicas necessitam ser verdadeiras para que o resultado da combinação seja verdadeiro.
((pontos>=10) || (pontos <=20))
((pontos>=10) % (pontos <=20))
((pontos>=10) ! (pontos <=20))
((pontos>=10) # (pontos <=20))
((pontos>=10) && (pontos <=20))
1a Questão (Ref.: 201308335664)
Na solução de problemas precisamos utilizar funções associados às rotinas do programa principal, para que o
mesmo se torne mas legível e fácil de reutilizar. Baseado nisto, crie um programa na linguagem C de forma
que:
 Possua uma função que calcule a área de um retângulo e retorne o resultado. O valor dos lados devem
ser lidos dentro da função.
 O programa permitirá calcular várias áreas até que o usuário escolha encerrar o programa.
 O programa principal chama a função e exibe o resultado recebido com duas casas decimais.
Sua Resposta: SFD
Compare com a sua resposta: #include < stdio.h > #include < stdlib.h > float retangulo(void){ float L1, L2,
area; printf("Digite um numero: "); scanf("%f",&L1); printf("Digite um numero: "); scanf("%f",&L2); area =
L1 * L2; return area; } int main() { int opc; opc= 1; while(opc == 1){ printf("Area: %.2f", retangulo( ) );
printf("\nContinuar - 1 Sair - 2 :"); scanf("%d",&opc); } return 0; }
2a Questão (Ref.: 201308710644) Pontos: 0,0 / 1,0
Na manipulação de arquivos na linguagem C, no processo de abertura do mesmo, podemos ter erros: devido a
não existência do arquivo; ao arquivo estar corrompido; etc, não sendo possível abrir o mesmo.
Das afirmativas apresentadas qual define corretamente o que pode ser feito em relação ao erro na abertura,
segundo o que foi apresentado nas aulas.
Não é possível tratar este tipo de erro, pois precisamos da estrutura Try ... Catch que consegue prevenir
e evitar o fechamento do programa.
Não é necessário tratar, pois não existindo o arquivo ele simplesmente cria um novo e nunca terá
problema.
A palavra chave FILE, que permite fazer a associação do arquivo, mantem o valor NULL caso não
seja possível abrir o arquivo, desta forma, utilizando o if, o usuário pode mandar uma mensagem
adequada para o usuário.
A função fopen, retorna NULL quando não consegue abrir o arquivo e o usuário pode tratar o
conteúdo da variável associada ao arquivo, comparando com o valor NULL.
O tratamento é feito com um if, e tendo havido problemas no arquivo de texto, o mesmo é eliminado e
retornado uma mensagem padrão para o usuário.
3a Questão (Ref.: 201308710623) Pontos: 0,0 / 1,0
Para a manipulação de arquivos na linguagem C, primeiro precisamos abrir o mesmo. Sabendo-se que o
arquivo tem o nome de texto.txt, que foi associado com a variável de nome: arq, e que é do tipo texto, avalie
cada uma das afirmativas e marque a que faz a abertura para ler e/ou gravar dados no fim do
arquivocorretamente seguindo as regras da linguagem.
arq = fopen("texto.txt", "a+");
arquivo = fopen("material.dat", "a+");
arquivo = fopen("material.dat", "w+");
arq = fopen("texto.txt", "w");
arquivo = fopen("material.dat", "r+");
4a Questão (Ref.: 201308182247)
Faça um programa em C que dado um número inteiro positivo n, imprimir os n primeiros naturais ímpares.
Exemplo: Para n=4 a saída deverá ser 1,3,5,7.
Sua Resposta: FD
Compare com a sua resposta: #include
int main() {
int n, i, impar;
printf("\n\tGerador de numeros impares\n");
printf("\nDigite o valor de n: ");
scanf("%d", &n);
i = 0;
impar = 1;
printf("Os %d primeiros impares sao:\n", n);
while (i < n) {
printf ("%d\n", impar);
impar = impar + 2;
i = i + 1;
}
return 0;
}
5a Questão (Ref.: 201308710652) Pontos: 1,0 / 1,0
Na manipulação de arquivos na linguagem C, podemos utilizar várias funções da linguagem. Cada uma delas
tem um propósito específico.
Das afirmativas apresentadas qual define corretamente qual a finalidade da função feof() .
Funções para ler um caractere.
Funções para gravar uma linha.
Função que detecta o fim do arquivo.
Função que fecha um arquivo.
Funções para leitura formatada.
6a Questão (Ref.: 201308330452) Pontos: 0,0 / 1,0
A linguagem C possui vários modos de abertura de arquivo. Para tanto, correlacione as colunas abaixo:
i. "r"
ii. "w"
iii. "a"
iv. "r+"
v. "w+"
vi. "a+"
( ) Abrir um arquivo texto para gravação. Os dados serão adicionados no fim do arquivo ("append"), se ele já
existir, ou um novo arquivo será criado, no caso de arquivo não existente anteriormente
( ) Cria um arquivo texto para leitura e gravação. Se o arquivo existir, o conteúdo anterior será destruído. Se
não existir, será criado.
( ) Abre um arquivo texto para leitura. O arquivo deve existir antes de ser aberto.
( ) Abre um arquivo texto para gravação e leitura. Os dados serão adicionados no fim do arquivo se ele já
existir, ou um novo arquivo será criado, no caso de arquivo não existente anteriormente
( ) Abrir um arquivo texto para gravação. Se o arquivo não existir, ele será criado. Se já existir, o conteúdo
anterior será destruído.
( ) Abre um arquivo texto para leitura e gravação. O arquivo deve existir e pode ser modificado.
Dentre as opções abaixo é correto afirmar:
vi, i, ii, iii, v, iv
iii, ii, iv, vi, v, i
vi, v, i, iii, ii, iv
iii, v, i, vi, ii, iv
vi, ii, iv, iii, v, i
7a Questão (Ref.: 201308716206) Pontos: 0,0 / 1,0
Suponha que o arquivo dados.txt contém a cadeia de caracteres "ABCYDEF" e nada mais. O que o seguinte
programa imprime?
int main( void) {
FILE *entrada;
int c;
entrada = fopen( "dados.txt", "r");
while ((c = getc( entrada)) != EOF)
printf( "%c ", c);
fclose( entrada);
return EXIT_SUCCESS;
}
DEF
ABCYDEF
ABCDEF
ABC
ABCDEFY
8a Questão (Ref.: 201308710599) Pontos: 0,0 / 1,0
Para a manipulação de arquivos na linguagem C, primeiro precisamos abrir o mesmo. Sabendo-se que o
arquivo tem o nome de material.dat, que foi associado com a variável de nome: arquivo, e que é do tipo texto,
avalie cada uma das afirmativas e marque a que faz a abertura apenas para leitura corretamente seguindo as
regras da linguagem.
arquivo = fopen("material.dat", "r");
arq = fopen("texto.txt", "a");
arquivo = fopen("material.dat", "r+");
arq = fopen("texto.txt", "r+");
arq = fopen("texto.txt", "r");
9a Questão (Ref.: 201308723800) Pontos: 1,0 / 1,0
A função _________ funciona como a função scanf(), porém, ao invés de ler os dados de teclado, estes dados
são lidos de um arquivo.
fgetc()
fscanf()
sscanf()
fprint()
fgets()
10a Questão (Ref.: 201308723806) Pontos: 0,0 / 1,0
Observe a linha de um programa abaixo e assinalea alternativa que representa o seu resultado:
result = fputs(Str, arq);
Se a função for executada com sucesso, fputs retorna a constante EOF.
Se a função NÃO for executada com sucesso, fputs retorna a variável EOF.
Se a função NÃO for executada com sucesso, fputs não retorna nada.
Se a função NÃO for executada com sucesso, fputs retorna a constante EOF.
Se a função NÃO for executada com sucesso, fputs retorna a constante NULL.
1a Questão (Ref.: 201308321342)
Um professor gostaria de saber quantos alunos conseguiram uma determinada nota na avaliação.
Construa uma função que receba um vetor com notas reais, seu tamanho e a nota que se deseja procurar. A
função deverá retornar o total de notas iguais à fornecida.
Lembre-se de que a função pode receber vetor de tamanho variado.
Sua Resposta: int main() { FILE *arq ; int i; _____ c ; arq = _____ ( " jornal.txt " , " r " ) ; if ( arq == NULL
){ printf ( " Erro na abertura do arquivo " ) ; system ( " pause " ) ; exit ( 1 ) ; } else for ( i = 0; iɝ i++){ c = 
fgetc ( arq ) ; printf( "%c", c ) ; } _____( arq ) ; system ( " pause " ) ; return 0; }
Compare com a sua resposta:
2a Questão (Ref.: 201308664718) Pontos: 0,0 / 1,0
Considere que as bibliotecas necessárias foram devidamente declaradas.
int main() {
FILE *arq ;
int i;
_____ c ;
arq = _____ ( " jornal.txt " , " r " ) ;
if ( arq == NULL ){
printf ( " Erro na abertura do arquivo " ) ;
system ( " pause " ) ;
exit ( 1 ) ;
} else
for ( i = 0; i<5; i++){
c = fgetc ( arq ) ;
printf( "%c", c ) ;
}
_____( arq ) ;
system ( " pause " ) ;
return 0;
}
Complete as lacunas do código para que o programa funcione corretamente.
A ordem em que as palavras são dispostas na resposta, devem preencher respectivamente as lacunas.
int - abrir - fopen
float - fopen - fclose
char - fopen - fclose
char - fopen - fechar
int - open - close
3a Questão (Ref.: 201308225571) Pontos: 0,0 / 1,0
Na definição de estruturas, funções, variáveis, etc. devemos seguir suas respectivas Sintaxes.
Das opções apresentas, qual é SINTAXE correta da definição de um vetor bidimensional.
tipo nome_matriz[][];
tipo nome_vetor[numero_colunas][numero_linhas];
tipo nome_matriz[numero_colunas][numero_linhas];
nome_matriz[numero_linhas][numero_colunas];
tipo nome_matriz[numero_linhas][numero_colunas];
4a Questão (Ref.: 201308723794) Pontos: 1,0 / 1,0
Para se ler uma string num arquivo podemos usar fgets() cujo protótipo é:
char *fgets (char *str, int tamanho,FILE fp);
char *fgets (char *str, int tamanho,FILE *fp);
char *fgets (char str, int tamanho,FILE *fp);
char *fget (char *str, int tamanho,FILE *fp);
int *fgets (char *str, int tamanho,FILE *fp);
5a Questão (Ref.: 201308723803) Pontos: 1,0 / 1,0
Observe a linha abaixo e diga qual será o resultado obtido:
result = fprintf(arq,"Linha %d\n",i);
Se a função fprintf for executada com sucesso, devolve a constante EOF. Se a função NÃO for
executada com sucesso, retorna o número de caracteres gravados.
Se a função fprintf for executada com sucesso, devolve o número de caracteres gravados. Se a função
NÃO for executada com sucesso, retorna a constante EOF.
Se a função fprintf for executada com sucesso, devolve o número de caracteres gravados. Se a função
NÃO for executada com sucesso, retorna a constante BOF.
Se a função fprintf NÃO for executada com sucesso, devolve o número de caracteres gravados. Se a
função for executada com sucesso, retorna a constante EOF.
Se a função fprintf for executada com sucesso, devolve os caracteres gravados. Se a função NÃO for
executada com sucesso, retorna a constante EOF.
6a Questão (Ref.: 201308182338)
Faça um programa em C que dado um número inteiro positivo n, calcular a soma dos n primeiros números
naturais.
Compare com a sua resposta:
#include
int main() {
int n, soma;
printf("\n\tCalculo da soma dos n primeiros numeros naturais\n");
printf("\nDigite o valor de n: ");
scanf("%d", &n);
soma = (n * (n + 1)) / 2;
printf("A soma dos %d primeiros numeros naturais e' %d\n", n, soma);
return 0;
}
7a Questão (Ref.: 201308723814) Pontos: 0,0 / 1,0
A função fgets():
lê uma linha inteira de uma vez.
imprime uma linha inteira de uma vez.
imprime um caracter de cada vez.
lê um arquivo inteiro de uma vez.
lê um caracter de cada vez.
8a Questão (Ref.: 201308716193) Pontos: 0,0 / 1,0
Observe o programa abaixo e assinale a alternativa que corresponde a sua execução.
#include < stdio.h >
#include < stdlib.h >
int main( void) {
char c;
FILE *entrada;
entrada = fopen( "dados.txt", "r");
if (entrada == NULL) exit( EXIT_FAILURE);
c = getc( entrada);
if (c != EOF)
putc( c, stdout);
else
printf( "\nO arquivo terminou!");
fclose( entrada);
return EXIT_SUCCESS;
}
O programa lê todos os caracteres do arquivo dados.txt e exibe esses caracteres na tela do monitor.
O programa lê o segundo caractere do arquivo dados.txt e exibe esse caractere na tela do monitor.
O programa lê o primeiro caractere do arquivo dados.txt e exibe esse caractere na tela do monitor.
O programa lê o último caractere do arquivo dados.txt e exibe esse caractere na tela do monitor.
O programa lê o primeiro e o segundo caracteres do arquivo dados.txt e exibe esses caracteres na tela
do monitor.
9a Questão (Ref.: 201308710669) Pontos: 0,0 / 1,0
Na manipulação de arquivos na linguagem C, podemos utilizar várias funções da linguagem. Cada uma delas
tem um propósito específico.
Das afirmativas apresentadas qual define corretamente qual a finalidade da função fputc() .
Funções para gravação formatadas.
Função que detecta o fim do arquivo.
Função para gravar um caractere.
Função que fecha um arquivo.
Funções para gravar uma linha.
10a Questão (Ref.: 201308710655) Pontos: 0,0 / 1,0
Na manipulação de arquivos na linguagem C, podemos utilizar várias funções da linguagem. Cada uma delas
tem um propósito específico.
Das afirmativas apresentadas qual define melhor e corretamente qual a finalidade da função fprintf() .
Funções para gravação formatada.
Função que detecta o fim do arquivo.
Função que fecha um arquivo.
Funções para gravar uma linha.
Funções para gravar um caractere.
6a Questão (Cód.: 134172) Pontos: 0,0 / 0,5
A linguagem C/C++ utiliza variáveis, que podem ser classificadas como globais ou locais.
Dentre as opções, assinale a que expressa corretamente à definição de "variável global" da linguagem C/C++.
São declaradas no início de um bloco. Seus escopos estão restritos aos blocos em que essas variáveis
foram declaradas.
Não mantêm seu valor em todo o programa e suas variáveis são escritas dentro do escopo das funções.
Mantêm seu valor em todo o programa e suas variáveis são escritas fora do escopo das funções.
São declaradas no final de um bloco. Seus escopos não estão restritos aos blocos em que essas
variáveis foram declaradas.
São declaradas dentro do main(). E suas variáveis são escritas dentro do escopo das funções.
7a Questão (Cód.: 135603) Pontos: 0,0 / 0,5
Para resolver um determinado problema um programador escreveu um código para trabalhar com um
vetor conforme apresentado na questão:
float vetn[20];
for (int i=0; i < 20; i++){
vetn[i] = ( i+1) * 0.1;
i = i + 2;
}
Desconsiderando a necessidade do programa completo e levando em conta apenas o código descrito, das
opções apresentadas, qual afirmativa está correta.
Serão armazenados 20 valores reais.
Serão armazenados 7 valores reais.
O vigésimo valor armazenado será o 2.0.
O terceiro valor armazenado será o 0.6.
O segundo valor armazenado será o 0.2.
8a Questão (Cód.: 135623) Pontos: 0,0 / 0,5
Na linguagem C++, no processo de manipulação de memória temos a possibilidade de utilizar os
ponteiros. Quando as seguintes linhas de código forem executadas: (desconsidere a necessidade do restante
do programa)
float *x, pos;
pos = 5.5;
x = &pos
Podemos afirmar que:
O conteúdo do endereço para

Outros materiais