• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

SitoMan

Exame -> 10 perguntas [Iniciante]

4 mensagens neste tópico

Viva!

Resolvi hoje fazer um programa que funciona como um exame! Utilizei perguntas e respostas básicas, no entanto o que interessa não é as perguntas ou as respostas, mas sim a maneira como o programa foi feito!

Acrescentei também uma contagem de 0 a 10, cada ponto para cada pergunta! Espero que gostem, e apelo a que relatem da vossa justiça no que melhorar, etc!

É a primeira versão do terceiro programa que faço em C.

#include <stdio.h>
#include <stdlib.h>

int main()
{
   //Antes do exame, clicar "s" para o iniciar***
printf("Bem-Vindo ao meu 3 programa feito em Linguagem C!\n");
printf("O programa tem como objectivo escolheres 1 das 3 respostas propostas!\n");
printf("Espero que gostes! \n\nClica \"s\" para comecares o exame|\n");
while (getchar()!='s');
printf("\n\n\n");
getchar ();

int contador;
contador =0;
//Inicio das perguntas e respostas***
char resposta1,resposta2,resposta3,resposta4,resposta5,resposta6,resposta7,resposta8,resposta9,resposta10;
printf("Pergunta 1: Indica o SO mais conhecido:\n");
printf("a) Windows\n");
printf("b) Linux\n");
printf("c) Mac c\n");
scanf("%c",&resposta1);

switch(resposta1)
   {
	case 'a':
	printf("Muito bem!A resposta esta certa!\n\n\n\n");
	contador = contador +1;
	break;
	case 'b':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	case 'c':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	default:
	printf("Resposta invalida\n\n\n\n");
	break;
		}
getchar ();
//Inicio da pergunta numero 2
printf("Indica o browser pre-definido com o Windows:\n");
printf("a) Mozilla FireFox\n");
printf("b) Opera\n");
printf("c) Internet Explorer\n");
scanf("%c",&resposta2);

switch(resposta2)
   {
	case 'a':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	case 'b':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	case 'c':
	printf("Muito bem!A resposta esta certa!\n\n\n\n");
	contador = contador +1;
	break;
	default:
	printf("Resposta invalida\n\n\n\n");
	break;
}
getchar ();

//Inicio da pergunta numero 3
printf("Indica o browser mais utilizado pelos informaticos:\n");
printf("a) Internet Explorer\n");
printf("b) Mozilla FireFox\n");
printf("c) Opera\n");
scanf("%c",&resposta3);

switch(resposta3)
   {
	case 'a':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	case 'b':
	printf("Muito bem!A resposta esta certa!\n\n\n\n");
	contador = contador +1;
	break;
	case 'c':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	default:
	printf("Resposta invalida\n\n\n\n");
	break;
}
getchar ();

//Inicio da pergunta numero 4
printf("O que entendes por WWW?\n");
printf("a) World Web Wide\n");
printf("b) World Wide Web\n");
printf("c) Web wide World\n");
scanf("%c",&resposta4);

switch(resposta4)
   {
	case 'a':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	case 'b':
	printf("Muito bem!A resposta esta certa!\n\n\n\n");
	contador = contador +1;
	break;
	case 'c':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	default:
	printf("Resposta invalida\n\n\n\n");
	break;
}
getchar ();

//Inicio da pergunta numero 5
printf("Qual a primeira linguagem de programacao?\n");
printf("a) Plankalkul\n");
printf("b) C\n");
printf("c) Python\n");
scanf("%c",&resposta5);

switch(resposta5)
   {
	case 'a':
	printf("Muito bem!A resposta esta certa!\n\n\n\n");
	contador = contador +1;
	break;
	case 'b':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	case 'c':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	default:
	printf("Resposta invalida\n\n\n\n");
	break;
}
getchar ();

//Inicio da pergunta numero 6
printf("Qual a primeira linguagem de programacao de alto nivel?\n");
printf("a) Plankalkul\n");
printf("b) Python\n");
printf("c) Fortran\n");
scanf("%c",&resposta6);

switch(resposta6)
   {
	case 'a':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	case 'b':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	case 'c':
	printf("Muito bem!A resposta esta certa!\n\n\n\n");
	contador = contador +1;
	break;
	default:
	printf("Resposta invalida\n\n\n\n");
	break;
}
getchar ();

//Inicio da pergunta numero 7
printf("Ate que ponto pode ir um virus?\n");
printf("a) Desligar o computador\n");
printf("b) Mandar o computador ao lixo\n");
printf("c) Nao acontece nada\n");
scanf("%c",&resposta7);

switch(resposta7)
   {
	case 'a':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	case 'b':
	printf("Muito bem!A resposta esta certa!\n\n\n\n");
	contador = contador +1;
	break;
	case 'c':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	default:
	printf("Resposta invalida\n\n\n\n");
	break;
}
getchar ();

//Inicio da pergunta numero 8
printf("Quais os melhores sites para fazermos downloads?\n");
printf("a) Emule\n");
printf("b) Nao existe na internet\n");
printf("c) Trackers\n");
scanf("%c",&resposta8);

switch(resposta8)
   {
	case 'a':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	case 'b':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	case 'c':
	printf("Muito bem!A resposta esta certa!\n\n\n\n");
	contador = contador +1;
	break;
	default:
	printf("Resposta invalida\n\n\n\n");
	break;
}
getchar ();

//Inicio da pergunta numero 9
printf("Indica em que linguagem de programacao esta feito este programa:\n");
printf("a) Basic\n");
printf("b) C\n");
printf("c) Fortran\n");
scanf("%c",&resposta9);

switch(resposta9)
   {
	case 'a':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	case 'b':
	printf("Muito bem!A resposta esta certa!\n\n\n\n");
	contador = contador +1;
	break;
	case 'c':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	default:
	printf("Resposta invalida\n\n\n\n");
	break;
}
getchar ();

//Inicio da pergunta numero 10
printf("Quantas linhas pensas que este programa tem aproximadamente?\n");
printf("a) De 50 a 150\n");
printf("b) De 150 a 200\n");
printf("c) De 200 a 300\n");
scanf("%c",&resposta10);

switch(resposta10)
   {
	case 'a':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	case 'b':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	case 'c':
	printf("Muito bem!A resposta esta certa!\n\n\n\n");
	contador = contador +1;
	break;
	default:
	printf("Resposta invalida\n\n\n\n");
	break;
}
getchar ();

//Fim do programa
printf("\n\n\n\n");
   printf("Respondeste correctamente a %d de 10 questoes.\n",contador);
printf("Clica E (Maiusculo) para fechares o programa!");
printf("\nPrograma criado por SitoMan\n");
while (getchar()!='E');
return 0;
}

Qualquer dúvida, podem relatar!!! ;)

Um Abraço,

SitoMan! ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Se queres que relatem, então vou ser franco. Não está muito elegante.

Devias ter criado uma função genérica para cada pergunta, que recebe um array da pergunta, as repostas possíveis, a certa, e faz o resto.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites


switch(resposta4)
{
	case 'a':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	case 'b':
	printf("Muito bem!A resposta esta certa!\n\n\n\n");
	contador = contador +1;
	break;
	case 'c':
	printf("Que pena!A resposta esta errada!\n\n\n\n");
	break;
	default:
	printf("Resposta invalida\n\n\n\n");
	break;
}

se fose a ti fazia isto

if(resposta4==b)

{
printf("Muito bem!A resposta esta certa!\n\n\n\n");
contador = contador +1;
}

else

printf("Que pena!A resposta esta errada!\n\n\n\n");

}

Ivitavas de ter essa confução toda

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

E o teu programa está todo na função main.

Devia estar mais bem organizado.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora