Questões de Concurso
Comentadas sobre c em programação
Foram encontradas 188 questões
bool busca(int vetor[ ], int n, int tam)
{
int ini=0, mid;
while (ini <= tam)
{
mid = (ini + tam)/2;
if (vetor[mid] == n)
return true;
else
if (n > vetor[mid])
ini = mid+1;
else
tam = mid-1;
}
return false;
}
Essa função implementa o algoritmo de busca
int main()
{
int x = 25, y = 5, z;
for (z = 0; x >= y; x = x - y, z++);
printf("x=%d, y=%d, z=%d\n", x, y, z);
return 0;
}
Após a execução do programa, o que aparecerá na tela será
Ao executar os métodos “carro.aumentaVelocidade(20)" e “meio.aumentaVelocidade(20)", o conteúdo de “carro. velocidade" e “meio.velocidade", respectivamente, serão:
# include< stdio.h >
int main (void)
{
char val = 40 ;
val = val<<2 ;
printf ("%d \n",val) ;
return 0 ;
}
Sabendo-se que esse programa será executado por um processador cuja Unidade Lógica e Aritmética representa números inteiros através da técnica de complemento de dois, o que será exibido no console quando da sua execução?
public class Prova
{
public static void Main ( )
{
int [ ] a =new int[10];
int i =0;
while ( i<10) {
a [i] = i + ( i >0 ? a[i-1] : 0);
i ++ ;
}
Console.WriteLine (a [ 9] );
}
}
O que ocorre com o programa C#, apresentado acima, quando é compilado e posteriormente executado?
A = 0011 1100
B = 0000 1101
Nesse caso, as expressões
A&B
A|B
têm por valores, respectivamente:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
}
}
}
A diretiva using.System.Linq refere-se a um conjunto de padrões e artefatos destinados à:
typedef unsigned char uchar;
uchar XOR (uchar pacote[ ], int tam)
{ int i; uchar b = 0;
for (i = 0; i < tam; i++) b = b ^ pacote[i]; /* ^ é OU EXCLUSIVO */
return b; }
Um pacote de dois bytes, sendo o primeiro deles 2F (em hexadecimal), é submetido à função XOR, que produz o byte FF como resultado. Logo, o segundo byte do pacote é:
Considere a seguinte classe desenvolvida em C#.
class Teste { static void Main() { int num = 1; while (num++ < 6) { Console.WriteLine ("num é = {0}", num); } } }
Nessa situação, essa classe produz o seguinte resultado:
num é = 1
num é = 2
num é = 3
num é = 4
num é = 5
int pesquisa (int vet[], int n, int chave)
{
int ind;
vet[n] = chave; /* sentinela */
ind = 0;
while (vet[ind] != chave)
ind = ind + 1;
if (ind == n)
return –1; /* Não encontrou * /
else
return ind; /* Encontrou */
}
Sobre essa implementação do algoritmo de busca com sentinela, analise as afirmativas a seguir:
I. Para que ela funcione corretamente, é necessário que o vetor vet contenha, pelo menos, n+1 posições, sendo as n primeiras (de 0 a n-1) ocupadas pelos elementos e a última, vaga, que abrigará a sentinela.
II. Nesta implementação, o algoritmo tem seu pior desempenho quando o valor de chave não se encontra em nenhuma das posições de 0 a n-1 de vet; em outras palavras, quando chave não pertence à lista.
III. Se o valor de chave se encontra armazenado na posição t de vet, sendo 0 ≤ t < n, são realizadas exatamente t comparações envolvendo chave até localizá-la.
Está correto somente o que se afirma em:
int F (int a, int b)
{
while (a > 0 && b > 0)
{
if (a > b)
a = a – b;
else
b = b – a;
}
return a + b;
}
Na execução da função F, o maior número de iterações ocorre com a chamada:
void G (int n, int x, int y)
{
int i, z;
printf ("%d %d", x, y);
i = 0;
while (i < n-2)
{
z = x + y;
printf (" %d", z);
x = y;
y = z;
i = i + 1;
}
printf ("\n");
}
Para que sejam impressos os 10 primeiros termos da Sequência de Fibonacci
0 1 1 2 3 5 8 13 21 34,
a chamada correta para a função G é:
Para que a máquina entenda os comandos de um programa desenvolvido na linguagem C, o programa deve ser compilado e traduzido para a linguagem da máquina.
O comando em linguagem C apresentado abaixo é um tipo de laço que pode ser finalizado com o comando break; portanto, esse comando não tem garantia de laço infinito.
for (;;) printf ("Exemplo de laço infinito.\n") ;