출처 : 반크_가상독도전시관
참고풀이]
//Dev-C++ 5.11로 작업함.
#include <stdio.h>
#include <stdlib.h> //srand(),rand()
#include <string.h> //strlen()
#include <time.h> //time()
#include <windows.h>
#define SIZE 100
void gotoxy(int x, int y)
{
COORD Pos={x,y};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),Pos);
}
struct QUESTION {
char question[SIZE];
char item1[SIZE];
char item2[SIZE];
char item3[SIZE];
char item4[SIZE];
int solution;
};
struct QUESTION bank[12] = {
{"임베디드 장치에 가장 적합한 프로그래밍 언어는?", "1. Python", "2. Java", "3. C", "4. Javascript", 3 },
{"서로 다른 자료형을 모을 수 있는 구조는?", "1. 배열", "2. 변수", "3. 구조체", "4. 포인터", 3 },
{"컴퓨터는 내부적으로 몇 진법을 사용하는가?", "1. 2진법", "2. 8진법", "3. 10진법", "4. 16진법", 1 },
{"C언어로 작성된 프로그램을 기계어로 변환하는 도구는 무엇인가?", "1. 링커", "2. 컴파일러", "3. 에디터", "4. 디버거", 2 },
{"다음의 식별자 중에서 잘못된 것은?", "1. _number", "2. sales_ex", "3. 1st_number", "4. logical", 3 },
{"다음 중 C언에서 지원하는 자료형의 이름이 아닌 것은?", "1. double", "2. long", "3. float", "4. real", 4 },
{"다음의 상수 중에서 올바르지 않은 상수를 고르시오?", "1. \'abc\'", "2. \"A\"", "3. 0x10", "4. .1", 1 },
{"C프로그램에서 수식 7/9*9의 결과값은?", "1. 1", "2. 0.08642", "3. 0", "4. 10", 3 },
{"int x=10; int y=20;에서 올바른 수식이 아닌 것은?", "1. x=10+y;", "2. 30=x+y;", "3. x+=20;", "4. x=1=2;", 2 },
{"두 개의 피연산자가 모두 참인 경우에만 참이 되는 논리 연산자는?", "1. &&", "2. ||", "3. !", "4. >", 1 },
{"수식 !(1+1>=2)의 결과값은 얼마인가?", "1. 0", "2. 1", "3. 2", "4. 3", 1 },
{"int x; for(x=0;x<10;x++){}이 종료되었을 때 x의 최종값은?", "1. 0", "2. 1", "3. 9", "4. 10", 4 },
};
int main(void)
{
int select, i, j;
int x, y;
int count;
int chk[12]={0,};//문제 출제여부 체크할 배열변수
srand(time(NULL));
count=0;j=0;
do{
//중복된 문제가 출제되지 않도록 한다.
while(1)
{
i=rand()%12;
if(chk[i]==0) break;
}
chk[i]=1;
printf("문제%2d] ",++j);
printf("%s\n", bank[i].question);
printf("%s ", bank[i].item1);
printf("%s ", bank[i].item2);
printf("%s ", bank[i].item3);
printf("%s ", bank[i].item4);
x=strlen(bank[i].question)+9;
y=(j-1)*4;
gotoxy(x,y); scanf("%d", &select);
x=0;
y+=2;
gotoxy(x,y);
if (select == bank[i].solution)
{
printf("맞았습니다.\n\n");
count++;
}
else
printf("틀렸습니다.\n\n");
}while(j<12);
printf("수고하셨습니다.\n");
printf("총 12문제 중 %d문제를 맞추었습니다.\n",count);
return 0;
}
참고풀이 결과]
대한민국의 아름다운 영토, 독도의 가을
'프로그램 > C언어 1000제' 카테고리의 다른 글
C언어 102제] C언어 콘서트 CHAPTER 11 Programming 2 구조체 활용하여 이메일 표현하기 p455 (0) | 2022.01.14 |
---|---|
C언어 101제] C언어 콘서트 CHAPTER 11 Programming 1 구조체 안에 공용체 사용한 구조체 선언하기 p455 (0) | 2022.01.14 |
C언어 99제] C언어 콘서트 CHAPTER 11 p434 도전문제 2 맞춘문제 카운트 하기 (0) | 2022.01.11 |
C언어 98제] C언어 콘서트 CHAPTER 11 p434 도전문제 1 10문제 더 추가하기 (0) | 2022.01.11 |
C언어 97제] C언어 콘서트 CHAPTER 10 Programming 12 p416 (0) | 2022.01.10 |
댓글