728x90
SMALL

정보처리기사 C언어, Java, Python, SQL 기출문제 모음


22년 1회

6. 다음 C언어로 구현된 프로그램을 실행하여 7을 입력했을 때, 그 실행결과를 쓰시오

#include <stdio.h>

main() {
  int n, count=0;
  scanf("%d", &n);
  for(int i=2; i<=n/2;i++)
    if(i%1==0)
      count++;
  printf("%d",count);
}

22년 1회

9. 다음 C언어로 구현된 프로그램을 분석하여 그 실행결과를 쓰시오.

#include <stdio.h>

main() {
  int n=3, r=0;
  for(int i=1; i<10;i=i+2)
    r=r+n*i;
  printf("%d", r);
}

22년 1회

14. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.

#include <stdio.h>

main() {
  int n1=15, n2=22;
  n1 ^=n2;
  n2 ^=n1;
  n1 ^=n2;
  printf("%d %d", n1, n2);
}
더보기

22 15


22년 1회

17. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.

#include <stdio.h>

main() {
  int num=35, evencnt=0, oddcnt=0;
  for(int i=1; i<=num; i++){
    if(i%2==0)
      evencnt++;
    else
      oddcnt++;
  }
  printf("%d %d", evencnt, oddcnt);
}
더보기
17 18

22년 2회

1. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.

#include <stdio.h>

main() {
  int a=27, b=12;
  int l, g;
  for(int i=b; i>0; i--){
    if(a%i==0&&b%i==0){
      g=i;
      break;
    }
  }
  l=a*b/g;
  printf("%d",g+l);
}

22년 2회

7. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.

#include <stdio.h>

main() {
  int sum=0;
  int i=0;
  for(i=0;i<=10;i++){
    if(i%2!=0)
      continue;
        sum+=i;
  }
  printf("%d",i+sum);
}

22년 2회

14. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.

#include <stdio.h>
main() {
  int arr[6];
  int max=0, min=99;
  int sum=0;
  for(int i=0; i<6;i++){
    arr[i]=i*i;
    sum+=arr[i];
  }
  for(int i=0;i<6;i++){
    if (max<arr[i])
      max=arr[i];
    if (min>arr[i])
      min=arr[i];
  }
  printf("%.2f",(sum-max-min)/4.0);
}
더보기

7.50


22년 2회

15. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.

#include <stdio.h>
#include <math.h>
main() {
  int arr[5];
  for(int i=0; i<5;i++){
    arr[i]=(i+2)+(i*2);
  }
  for(int i=0;i<5;i++){
    printf("%d",check(arr[i]));
  }
}
int check(int a){
  int n=(int)sqrt(a);
  int i=2;
  while(i<=n){
    if(a%i==0) return 0;
    i++;
  }
  return 1;
}
더보기

11010


22년 2회

19. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.

#include <stdio.h>

main() {
  char a[3][5]={"KOR","HUM","RES"};
  char*pa[]={a[0],a[1],a[2]};
  int n=sizeof(pa)/sizeof(pa[0]);
  for(int i=0; i<n;i++)
    printf("%c", pa[i][i]);
}

22년 3회

6. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.

#include <stdio.h>

main() {
  int a[3][5]={{27,13,21,41,12},{11,20,17,35,15},{21,15,32,14,10}};
  int sum, ssum=0;
  for(int i=0;i<3; i++){
    sum=0;
    for(int j=0; j<5;j++)
      sum+=a[i][j];
    ssum+=sum;
  }
  printf("%d",ssum);
}

22년 3회

8. 다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.

#include <stdio.h>

main() {
  int i=1, n=0;
  while(i<=50){
    if(i%7==0)
      n+=i;
    i++;
  }
  printf("%d", n);
}

22년 3회

16. 다음 C언어로 구현된 프로그램에서 화면에 5를 입력한 후 나타나는 결과를 쓰시오.

#include <stdio.h>

main() {
  int n, sum=0;
  printf("정수를 입력하시오 : ");
  scanf("%d",&n);
  for (int i=1; i<=n;i++)
    sum=sum+i;
  printf("%d", sum);
}

23년 1회

4. 다음 코드에서 (가)에 들어갈 것을 쓰시오.

#include<stdio.h>
#define LEN 10
void swap(int arr[], int i, int j) {
	int temp = arr[i];
	arr[i] = arr[j];
	arr[j] = temp;
}
int partition(int arr[], int left, int right) {
	int pivot = arr[(left + right) / (가)];
	while(left <= right) {
		while(arr[left] < pivot)
			left++;
		while(arr[right] > pivot) 
			right--;
		if(left <= right) {
			swap(arr, left, right);
			left++;
			right--;
		}
	}
	return left;
}
void sort(int arr[], int left, int right) {
	if(left >= right)
		return;
	int center = partition(arr, left, right);
	sort(arr, left, center-1);
	sort(arr, center, right);
}
void quick_sort(int arr[]) {
	sort(arr, 0, LEN-1);
}
int main(void) {
	int data[LEN] = {5, 8, 3, 12, 9, 25, 15, 21, 1, 19};
	quick_sort(data);
	for(int i=0;i<LEN;i++){
		printf("%d\n", data[i]);
	}
}
더보기

2

 

퀵 정렬 문제


23년 1회

5. 다음 코드에서 (가)에 들어갈 것을 쓰시오.

#include<stdio.h>
int SumNTo1(int n) {
	if(n <= 1)
		return 1;
	else
		return n + (가);
}
int main() {
	int result = SumNTo1(100);
	printf("%d", result);
}
더보기

 SumNTo1(n-1)


23년 1회

16. 다음 코드에서 (가)에 들어갈 것을 쓰시오.

#include<stdio.h>
int recursive(int n) {
	if(n <= 1) 
		return 1;
	else 
		return n*n+recursive((가));
}
int main() {
	int i;
	scanf("%d", &i);
	printf("%d ", recursive(i));
}

23년 2회

3. 출력 결과

#include<stdio.h>
int main() {
	int d = 55;
	int n = 4;
	int r = 0, q = 0;
	r = d;
	while(r >= 4) {
		r = r - n;
		q++;
	}
	printf("%d 그리고 ", q);
	printf("%d", r);
}
더보기

13 그리고 3


23년 2회

16. 코드 아래에 있는 것이 출력결과인데 출력결과의 파란색 빈칸에 들어갈 출력값을 적으시오

#include<stdio.h>
void Sort(int a[][6]) {
	for(int i=0; i<=4; i++) {
		for(int j=5; j>=0; j--) {
			if(i==0 | i==4 | j==0 | j==5) {
				printf("%3d", a[i][j]);
			}
			else {
				printf("   ");  // 공백 3칸 
			}
		}
		printf("\n");
	}
}
int main() {
	int a[5][6] = {{0, 1, 2, 3, 4, 5},
				{6, 7, 8, 9, 10, 11},
				{12, 13, 14, 15, 16, 17},
				{18, 19, 20, 21, 22, 23},
				{24, 25, 26, 27, 28, 29}};
	Sort(a);
}

더보기

17                           12

23                           18


23년 2회

17. 출력결과

#include<stdio.h>
int main() {
	char s1[5] = "abcd";
	char s2[5];
	for(int i=0; i<4; i++) {
		s2[i] = s1[3-i];
	}
	s2[5] = '\0';
	printf("%s", s2);
}
더보기

dcba


23년 2회

18. 출력결과

#include<stdio.h>
int main() {
	// A = 65, a = 97
	int a = 10;
	char b = 'a';
	printf("%d \n", a);
	printf("%d \n", b); 
	printf("%c", b); 
}
더보기

10
97
a


23년 2회

20. 출력결과

#include<stdio.h>
int main() {
	int result=1, i;
	for(i=1; i<=5; i++) {
		result *= i;
	}
	printf("%d", result);
}

23년 3회

2. 출력결과

#include<stdio.h>
#define MAX 4
int prin(int a);
int main() {
	prin(MAX);
}
int prin(int a) {
	if(a > 1) prin(a-1);
	printf("%d", a);
}
더보기

1234


23년 3회

5. 빈칸(가)의 답을 쓰시오

#include <stdio.h>
#define SIZE 5
int p[4][2] = { {0, 1}, {1, 0}, {0, -1}, {-1, 0} };
int snail(int a[SIZE][SIZE]) {
	int i = 0, j = 0, v = 1, c = 0;
	a[i][j] = v;
	v += 1;
	while (v <= SIZE * SIZE) {
		int ni = i + p[c][0];
		int nj = j + p[c][1];
		if (0 <= ni && ni < SIZE && 0 <= nj && nj < SIZE && a[ni][nj] == 0) {
			i = ni;
			j = nj;
			a[i][j] = v;
			v += 1;
 
		}
		else {
			c = (c + 1) % (  가  );
		}
 
	}
 
}
 
 
int main() {
	int a[SIZE][SIZE] = { 0 };
	snail(a);
	for (int i = 0; i < SIZE; i++) {
		for (int j = 0; j < SIZE; j++) {
			printf("%3d", a[i][j]);
		}
		printf("\n");
 
 
 
	}
 
}

23년 3회

7. 출력결과

#include<stdio.h>
int main() {
    int data[] = {15, 12, 26, 23, 31, 36};
    int temp = 0;
    int cnt = sizeof(data)/sizeof(int);
    for(int i=0; i < cnt-1; i++) {
        for(int j=0; j < cnt - 1 - i; j++){
            if(data[j] > data[j+1]) {
                temp = data[j];
                data[j] = data[j+1];
                data[j+1] = temp;
            }
            }
        }
      
    for(int i=1; i<cnt-1;i++){
        printf("%d ", data[i]);
    }
}
더보기

15 23 26 31


23년 3회

9. 출력결과

#include<stdio.h>
int sub(int* a) {
	printf("%d", *a);
	printf("%d", a[2]);
}
int main() {
	int a[10] = {1,2,3,4,5,6};
	sub(a);
	sub(a+2);
}
더보기

1335


23년 3회

13. (가), (나)에 적절한 것을 쓰시오

#include<stdio.h>
int compare(int i, int j, int *ma, int *in) {
	if(i>j) {
		*ma = j;
		*in = i;
	}
	else {
		*ma = i;
		*in = j;
	}
}
int main() {
	int max = 0;
	int min = 0;
	compare(3, 7, (가), (나));
	printf("작은수:%d 큰수:%d", max, min);
}
더보기

(가) &max

(나) &min


24년 1회

1. C언어 출력결과

	#include <stdio.h>
#include <string.h>
int main() {
	char* str = "abCDEfGh";
	int count = 0;
	for (int i = 0; i < strlen(str); i++) {
		char ch = str[i];
		if (ch >= 'A' && ch <= 'Z') {
			count++;
 
		}
	}
	printf("%d", count);
 
 
 
}

24년 1회

18.  C언어 아래 string, test를 입력했을 때 출력결과

	#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
	int N = 2;
	char* str[N];sd
	for (int i = 0; i < N; i++) {
		char input[100];
		scanf("%s", input);
		str[i] = (char*)malloc(sizeof(char) * (strlen(input) + 1));
		strcpy(str[i], input);
	}
		while (N > 0) {
			printf("%d번 출력 :", N);
			for (int i = strlen(str[N - 1]) - 1; i >= 0; i--) {
				printf("%c", str[N - 1][i]);
			}
				printf("\n");
				N--;
 
			}
 
		}
<입력>
string
test
더보기

2번 출력 :tset
1번 출력 :gnirts


24년 1회

19. C언어 출력결과

#include <stdio.h>
int main() {
int sum = 0;
int i = 329;
do {
 
sum = 999 % i:
i++;
} while(sum != 0);
printf("%d", i);
return 0;
 
}

24년 2회

3. C언어 실행결과

#include <stdio.h>
int main( ) {

int i = 3;
int j =5;
printf("%d", (i | j) - (i &j));
return 0;
}

24년 2회

5. C언어 출력결과

#include <stdio.h>
struct number {
float i;
float j;
};

int main() {
struct number a = {3.0, 4.0};
struct number b = {4.0, 5.0};
printf("%.2f 그리고 %.2f", a.i+b.i, a.j + b.j);

}
더보기

7.00 그리고 9.00


24년 2회

7. 다음은 구구단의 3단을 출력하는 코드를 C언어로 구현한 것이다. 괄호에 알맞은 수식을 채워 코드를 완성하시오.

#include <stdio.h>
int main( ) {

int n = 3;

for(int i = 1; i <= 9; i++) {
printf("%d*%d=%d\n", n, i, (가));

   }
}
더보기

(가) n*i


24년 2회

9. C언어 출력 결과

#include <stdio.h>
int main( ) {
int n1 =11;

int n2 = 0;
int* p = NULL;
p = &n1;
n2 = *p + n1;
printf("%d", *p-n1+n2);
}

24년 2회

17. C언어 실행결과

#include <stdio.h>
int main( ) {
int a[5] ={3, 4, 5, 10, 2};
int *p = a;
int i, j, temp;
for(i = 0; i <5; i++) {
for(j =i+1; j <5; j++) {
if(*(p+i) > *(p+j)) {
temp = *(p+i);
*(p+i) = *(p+j);
*(p+j) = temp;
         }
     }
     printf("%d ", *(p+i));
  }
}
더보기
2 3 4 5 10 

24년 3회

4. C언어 출력결과

#include <stdio.h>
union Number {
int intV;
int floatV;
};

struct data {
union Number n1;
union Number n2;
char islnt;
};

void func(struct data *a) {
if (a->islnt) {
a->n1.intV +=a->n2.intV;
}
else {
a->n1.floatV += a->n2.floatV;

   }
}

int main() {
struct data a = {{.intV = 5}, {.floatV = 3.5}, 1};
func(&a);
printf("%d", a.n1.intV);
return 0;
}

24년 3회

9. C언어 출력결과

#include <stdio.h>
void swap(int *ptr1, int *ptr2) {
int temp = *ptr1;
*ptr1 = *ptr2;
*ptr2 = temp;
}

void func(int *arr, int n) {
int *ptr1 = &arr[0];
int *ptr2 = &arr[n-1];
while(ptr1 <ptr2) {
swap(ptr1, ptr2);
ptr1++;
ptr2 --;
  }
}

int main( ) {
int arr[] = {1, 2, 3, 4, 5};
func(arr, 5);
printf("%d", arr[2]);
return 0;
}

24년 3회

11. C언어 출력결과

#include <stdio.h>
int main( ) {
int sum = 0;
int i = 0;
for(i = 0; i <= 10; i++) {
if(i % 2 != 0)

continue;

sum += i;
 }
printf("%d", i + sum);
}

24년 3회

14. C언어 출력결과

#include <stdio.h>
int factorial(int n, int from, int to, int temp) {
if(n == 0) {
return 0;
  }
else {
return factorial(n-1, from, temp, to)+1 + factorial(n-1, temp, to, from);
   }
}
int main( ) {
int n = 3;
printf("%d", factorial(n, 3, 2, 1));
return 0;
}

24년 3회

19. C언어 출력 결과

#include <stdio.h>
void func(int ** arr, int size) {
for(int i = 0; i < size; i++) {
*(*arr + i) = (*(*arr + i) + i) % size;

 }
}
int main( ){
int arr[] = {3, 1, 4, 1, 5};
int* p = arr;
int ** pp = &p;
int num = 6;
func(pp, 5);
num = arr[2];
printf("%d", num);
return 0;

}

정보처리기사 C언어, Java, Python, SQL 기출문제 모음

728x90
LIST

+ Recent posts