[컴퓨팅과 문제해결]

다음 보기의 수 중에서 23으로 나누어 떨어지는 수는?


① 342
② 343
③ 344
④ 345
⑤ 346

생물학자들이 한 종류의 야생 동물들에게 추적장치를 부착하였다. 추적장치는 일정한 시간을 간격으로 아래의 데이터를 각 개체별로 수집하였다. 추적장치로부터 수집된 데이터만을 분석하여 답변할 수 있는 질문만을 고른 것은 무엇인가? 단, 수집하는 데이터 이외는 고려하지 않는다.

수집하는 데이터 : 시간(시/분), 날짜(월/일), 동물의 위치

  • ㄱ. 한 주에 한 개체가 대략 몇 km를 이동 하였는가?
  • ㄴ. 한 개체는 추적장치를 단 다른 개체들과 그룹으로 이동하였는가?
  • ㄷ. 한 개체의 이동은 날씨에 따른 패턴을 보이는가?
  • ㄹ. 어떤 지리적 특징을 가진 지역에 어떤 종류의 동물이 주로 이동하는가?

① ㄱ,ㄴ
② ㄴ,ㄷ
③ ㄷ,ㄹ
④ ㄱ,ㄴ,ㄷ
⑤ ㄴ,ㄷ,ㄹ

의견 (1개)

8명이 가위바위보 게임을 하여 1등, 2등 및 3등을 결정하고자 한다. 최소한 몇 번의 가위바위보 게임을 해야 하는가? 단, 가위바위보는 2명이 하고, 비기는 경우와 부전승은 생각하지 않는다.


① 4번
② 6번
③ 7번
④ 8번
⑤ 9번

다음과 같은 4가지의 사실이 있다고 가정하자.

  • 사실1-1. 나는 아침에 늦게 일어난다.
  • 사실1-2. (가)
  • 사실2-1. 나는 아침에 늦게 일어나거나 뛰어서 학교에 간다.
  • 사실2-2. 나는 아침에 늦게 일어나지 않았다.

   처음 두 개의 사실 1-1, 1-2와 나중 두 개의 사실 2-1, 2-2 로부터 생각해낸 결과가 같기 위해 (가)에 들어갈 수 있는 것은?


① 나는 아침에 늦게 일어났다.
② 나는 뛰어서 학교에 가지 않는다.
③ 나는 아침에 늦게 일어나면, 뛰어서 학교에 간다.
④ 나는 아침에 늦게 일어나지 않았다.
⑤ 나는 아침에 늦게 일어나면, 뛰어서 학교에 가지 않았다

의견 (1개)

다음은 수들을 일정 규칙에 따라 나열한 것이다. 빈칸에 가장 알맞은 수는?

1, 2, 6, 15, 31, (     )


① 55
② 56
③ 57
④ 58
⑤ 59

의견 (3개)

n=1에서 시작해서 다음과 같은 연산을 10번 반복했을 때 얻어지는 수는?

현재 수 n이 2의 배수이면 3을 더하고 아니면 2를 곱한다


① 95
② 103
③ 125
④ 126
⑤ 130

의견 (1개)

3 원짜리 동전 네 개와 9원 짜리 동전 세 개가 있다. 다음 중 이 동전들을 사용하여 지불 할 수 없는 금액은?


① 15
② 18
③ 20
④ 21
⑤ 30

0에서 6까지의 자연수를 한 번씩만 사용하여 만들 수 있는 세 자리의 자연수는 모두 몇 가지인가? 


① 180
② 190
③ 200
④ 210
⑤ 220

의견 (3개)

12378 과 3054 의 최대공약수는?


① 4
② 6
③ 12
④ 14
⑤ 18

의견 (1개)

동네의 어려운 아이들에게 매주 조금씩 용돈을 나눠주는 것을 즐기는 마음씨 좋은 할아버지가 있었다. 하루는 이 할아버지가 다음 주에 네 명이 더 오게 된다면 용돈을 천원씩 덜 줄 수 밖에 없겠구나 라고 얘기했다. 그랬더니 다음 주에는 더 어려운 친구들에게 용돈을 주라며 그 지난주 보다 다섯 명이 덜 오게 되었다. 그래서 모인 아이들은 이천원씩을 더 받아가게 되었다. 한 명이 받아간 돈은? 단, 할아버지가 매주 아이들에게 나누어 주는 용돈의 총합은 같다.


① 4 천원
② 5 천원
③ 6 천원
④ 7 천원
⑤ 8 천원

의견 (2개)

[알고리즘과 프로그래밍]

다음 중 C나 C++의 연산자가 아닌 것은? 


① &&
② %
③ ^
④ !=
⑤ #

다음중 변수의 이름으로 사용할 수 없는 것은 무엇인가?


① sum1
② sum
③ short
④ short1
⑤ total

의견 (3개)

C언어 프로그램 !(3 > 2) 의 결과는 무엇인가?


① -1
② 0
③ 1
④ 2
⑤ 3

의견 (1개)

다음 프로그램의 출력 결과는 무엇인가? 

int x = 9, y = 11;
if (x < 10)
  if (y > 10)
    printf("A");
  else
    printf("B");
printf("C");

① A
② AB
③ BC
④ AC
⑤ ABC

다음 프로그램의 출력 결과는 무엇인가? 

int a = 1;
float b = 1.3;
double c;
c = a + b;
printf("%.2lf", c);

① 2.30
② 2.3
③ 2.
④ .30
⑤ 정답없음

의견 (1개)

다음 프로그램에서 India 가 출력되는 횟수는?

int x;
for(x=-1; x<=20; x++) {
  if(x < 10)
    continue;
  else
    break;
  printf("India\n");
}

① 0 회
② 10 회
③ 20 회
④ 21 회
⑤ 무한 반복

의견 (1개)

다음 프로그램의 출력 결과는 무엇인가?

int x = 'A' + 128;
x += 129;
printf("%c\n", x);

① A
② B
③ Z
④ @
⑤ 정답없음

의견 (2개)

다음 프로그램의 출력 결과는 무엇인가? 

char s[] = "C++";
printf("%s ",s);
printf("%s ",s+1);

① C++ C++
② C++ ++
③ ++ ++
④ ++ C++
⑤ C++ +

다음 프로그램의 출력 결과는 무엇인가?

void f(int n, int a[]) {
  int t;
  while (n > 0) {
    t = n % 10;
    a[t] = a[t] + 1;
    n = n / 10;
  }
}
int main() {
  int a[] = {0,1,2,0};
  f(1202,a);
  printf ("%d\n", a[2]);
}

① 0
② 1
③ 2
④ 3
⑤ 4

다음 프로그램의 출력 결과는 무엇인가?

int f(int x, int y, int z) {
  if (x > y) {
    if (x > z) {
      return x;
    }
    else {
      return z;
    }
  }
  else {
   if (y > z) {
     return y;
   }
   else {
     return z;
   }
  }
}
int main() {
  printf("%d %d %d\n", f(2,3,4), f(4,3,2), f(3,2,4));
  return 0;
}

① 2 4 3
② 3 3 2
③ 4 2 4
④ 2 2 2
⑤ 4 4 4

다음 프로그램의 출력 결과는 무엇인가?

int f(int n) {
  if (n < 2)
    return 0;
  for(int d = n - 1; d > 1; d--) {
    if (n % d == 0)
      return 0;
  }
  return 1;
}
int main() {
  printf("%d ", f(1));
  printf("%d ", f(11));
  printf("%d ", f(21));
  printf("%d ", f(31));
  return 0;
}

① 0 0 1 1
② 0 0 1 0
③ 0 1 1 0
④ 0 1 0 1
⑤ 1 0 1 0

다음 프로그램의 출력 결과는 무엇인가?

const int n = 10;
int a[n] = {16,12,17,48,89,21,97,59,30,16};
int i, j, t, res=0;
for (i = 0; i < n; i++){
  for (j = i + 1; j < n; j++){
    if (a[i] > a[j]){
      t = a[i];
      a[i] = a[j];
      a[j] = t;
    }
  }
}
printf ("%d\n",a[2]);

① 16
② 18
③ 24
④ 32
⑤ 36

의견 (2개)

다음 프로그램에서 출력되는 x와 y값은 각각 무엇인가?

int x,y;
x= 10;
y= 10;
y=++x;
x=y++;
printf("%d, %d", x, y);

① x=10, y=11
② x=11, y=11
③ x=12, y=11
④ x=11, y=12
⑤ x=12, y=12

x=9, y=11일 때, 다음 프로그램의 출력 결과는 무엇인가?

if (x < 10)
if (y > 10)
  printf("A,");
else
  printf("B,");
printf("C");

① A,
② A,B,
③ B,C
④ A,C
⑤ C

의견 (3개)

다음 프로그램의 출력은 무엇인가?

int i,j,cnt=0;
for(i=0 ; i<10 ; i++)
{
  for(j=i ; j<20 ; j+=3)
    cnt++;
}
printf ("%d",cnt);

① 60
② 59
③ 49
④ 53
⑤ 55

다음 프로그램의 출력 결과는 무엇인가?

int x;
for ( x = 1; x <= 5; x++) {
  if ( x == 2 ) {
    continue;
  }
  if ( x == 4 ) {
    break;
  }
  printf(“%d ”, x);
}

① 1 2 3 4 5
② 1 3
③ 1 2 3
④ 1 2 3 4
⑤ 1 3 5

함수 f를 구현했을 때, 문자열 “koi”를 출력하는 경우 무엇인가?

void f(int a, int b) {
  int c, d, e;
  c = a + 5;
  if (a + b < c) {
    if (a == b) {
      printf("koi");
    }  
  }
}

① f(3,3)
② f(3,5)
③ f(4,10)
④ f(10,10)
⑤ f(10,20)

다음과 같이 함수 f를 구현했을 때, f(2018)의 값은?

int f(int n) {
  if (n==0) return 0;
  else return f(n-1)+2;
}

① 4036
② 4092
③ 6054
④ 8072
⑤ 3064

다음 프로그램의 출력 결과는 무엇인가?

char str1[] = "abcde";
char str2[] = {'a','b','c','d','e','f','g'};
int len1 = sizeof(str1)-3;
int len2 = sizeof(str2)-3;

printf("%c%c",str1[len2],str2[len1]);

① dd
② ee
③ ed
④ ef
⑤ ff

다음 프로그램의 출력 결과는 무엇인가?

void swap(int a, int b) {
    int temp = a;
    a = b; b = temp;
    printf(“%d, %d, ”, a, b);
}
int main() {
    int a=2; int b=3;
    swap(a, b);
    printf(“%d, %d”, a, b);
}

① 2, 3, 3, 3
② 2, 3, 3, 2
③ 2, 3, 2, 3
④ 3, 2, 3, 2
⑤ 3, 2, 2, 3

다음 프로그램의 출력 결과는 무엇인가?

char str[] = "Lucky Boy";
int i, score = 0;
for (i = 0; str[i]; i++) {
  int ch = str[i];
  if (ch >= 'A' && ch <= 'Z') {
    score += ch - 'A' + 1;
  }
}
printf("%d\n", score);

① 14
② 114
③ 274
④ 306
⑤ 334

다음 프로그램의 출력 결과는 무엇인가?

int temp=0, i=1;
while(i<10)
{
  if( i%2==0 )
    i++;      
  if( temp>5 )
    break;
  temp += i;
}
printf("%d",temp);

① 2
② 3
③ 4
④ 5
⑤ 6

다음 프로그램의 출력 결과는 무엇인가?

int a=2;
int b=2;
while(b)
{ 
  a++; 
  b--;    
}
do{ 
  a--; 
  b++;
} while(a);
printf("%d", b);

① 3
② 4
③ 5
④ 6
⑤ 7

다음 프로그램에서 출력되는 x와 y값이 모두 1이 되기 위해서는 (A) 안에 들어갈 알맞은 코드는?

int x=1,y=1;
for (int i=1; i<=5; i++) {
   y=x+1;
   ( A )
   x=++y;
   printf("%d, %d", x, y);
}

① y= y % 2;
② y= y % 3;
③ y= y – 1;
④ y = 1;
⑤ y = y + 1;

다음과 같은 패턴을 생각하자.

*****
**▫**
*▫*▫*
**▫**
*****

이 패턴을 출력하기 위해서 함수를 아래와 같이 구현하였고 draw(5)를 호출하였다. 빈칸(a)에 들어갈 알맞은 코드는? 단, ▫는 띄어쓰기이다

void draw(int n) {
  for (int i=1; i<=n; i++) {
    for (int j=1; j<=n; j++)
      if (i==1 || i==n || j==1 || (a) || j == n) printf ("*");        else printf (" ");
    printf ("\n");
  }
}

① j==n-i
② j<n+1
③ j<i-1 || j==n-i
④ j==i || j==n-i+1
⑤ j==i || j==n-1

[단답형:컴퓨팅과 문제해결]

아래 표에 나타난 100개의 수 중에서 2 또는 3의 배수는 모두 몇 개인가?

1 2 3 4 5 6 7 8 9 10
2 3 4 5 6 7 8 9 10 11
3 4 5 6 7 8 9 10 11 12
4 5 6 7 8 9 10 11 12 13
5 6 7 8 9 10 11 12 13 14
6 7 8 9 10 11 12 13 14 15
7 8 9 10 11 12 13 14 15 16
8 9 10 11 12 13 14 15 16 17
9 10 11 12 13 14 15 16 17 18
10 11 12 13 14 15 16 17 18 19

한 농부가 시장에 가서 백마리의 동물을 구매하는데 총 일천만원이 들었다. 송아지 한마리에 오십만원, 새끼양 한마리에 일십만원, 그리고 토끼는 한마리에 오천원이 들었다면, 농부가 구매한 토끼는 몇 마리인가?


의견 (1개)

[단답형:알고리즘과 프로그래밍]

다음 프로그램이 출력하는 수들의 합은?

void f(int a[], int t, int l) {
  if (t >= l)
  return;
  printf("%d  ", a[t]);
  f(a, t + 1, l);
  printf("%d  ", a[t]);
}
int main() {
	int a[10] = {1,2,3,4,5,6,7,8,9};
	int n, i;
	n = 10;
	f(a, 0, n);
	printf("\n\n");
	return 0;
}

다음과 같이 함수 f를 구현했을 때, f(4)의 값은?

int f(int n) {
  if(n>=10) {
    return n%5;
  }
  else {
    return f(n+1) + f(n+3) + 1;
  }
}

다음과 같이 함수 f를 구현했을 때, f(10)의 값은?

int f(int n) {
  int i, j, s;
  s = 0;
  for (i=0;i<n;i+=2)
    for (j=0;j<i;j+=2)
      s += i + j; 
  return s;
}