본문 바로가기
GM Library/☆ 기말시험 Data

방송대 방통대 C프로그래밍 기말시험 기출문제 2019년도 1학기 1학년 / 올에이클래스 모의고사

by HAN, URI / ΛΙΙΛ™ 2024. 7. 1.
0-썸네일-C프로그래밍-기말-19-1-1
0-썸네일-C프로그래밍-기말-19-1-1
2019 학년도  1 학기  1 학년  25 문항
C프로그래밍
시험종류   :기말시험
출제위원   :방송대 김형근
출제범위   :교재전체(특히 4, 5, 6장) (해당 멀티미디어강의 포함)
자료출처   :한국방송통신대학교
웹앱제작   :올에이클래스 김현수
01다음 중 원시 프로그램이 번역되어 실행될 때의 파일 확장자로서 올바른 것은? (2점)
해설)
02다음 중 상수에 대한 설명으로 올바르지 않는 것은? (2점)
해설)
(3∼4) 다음과 같은 프로그램이 있을 때 물음에 답하시오.
(여기서 'A'의 ASCII값은 65이다.)
#include <stdio.h>
void main() {
  char var='A';  
  printf("var1=%d var2=%c", var, var);  ----  ㉠
  putchar(var+2) ;  ----  ㉡
}
03위에서 ㉠의 결과로 올바른 것은? (3점)
해설)
04위에서 ㉡의 결과로 올바른 것은? (3점)
해설)
05다음 프로그램의 ㉠, ㉡, ㉢에서 각각 10진수, 8진수, 16진수를 출력하려고 한다. 출력양식변환기호가 순서대로 올바르게 나열된 것은? (3점)
#include <stdio.h>
void main() {
  int a = 8086
  print(" ㉠ \n", a);
  print(" ㉡ \n", a);
  print(" ㉢ \n", a);
}
해설)
06다음과 같은 프로그램의 실행결과로서 올바른 것은? (3점)
#include <stdio.h>
void main() {
  int a=10;
  static int b=20;
  {
    int a=5;
    b=a+10;
  }
  printf("a=%d   b=%d\n", a, b);
}
해설)
07다음과 같은 프로그램의 실행결과로서 올바른 것은? (2점)
#include <stdio.h>
void main() {
  int a=10, b=3 ;
  a*=(b-1);
  b=(a>15)? (a+1):(a-1);
  printf("a=%d b=%d", a, b);
}
해설)
08다음 프로그램의 출력결과로 올바른 것은? (3점)
#include <stdio.h>
void main() {
  int i, j;
  i=j=4;
  if(i==3)
    if(i==4)
      printf("\n%d", i=i+j);
    else
      printf("\n%d", i=i-j);
  printf("\n%d", i);   
}
해설)
09다음과 같은 프로그램의 실행결과로서 올바른 것은? (3점)
#include <stdio.h>
void main() {
  int i=1, j=2;
  {
    int i=3;
    {
      int i=4;
    }
    printf("i=%d", i); 
  }
  printf("i=%d", i); 
}
해설)
10다음 프로그램의 출력결과로 올바른 것은? (3점)
#include <stdio.h>
void main() {
  int a, b, sum=0;
    for (a=0; a<10; a++)
      for(b=5; b>1; b--)
        sum+=1
        printf("%d", sum);
}
해설)
11다음과 같은 프로그램의 결과로 올바른 것은? (4점)
#include <stdio.h>
void main() {
  int array[3][4]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
  printf("%d", array[2][3]);
}
해설)
(12∼14) 다음과 같은 프로그램이 있을 때 물음에 답하시오.
#include <stdio.h>  ----  ㉠
void display_line(void);  ----  ㉡
void main() {
  display_line();  ----  ㉢
  printf("\n This is an Example program!\n");
    display_line();
}
/* print asterisk line */  ----  ㉣
void display_line(void) {  ----  ㉤
  int counter;  ----  ㉥
  for(counter=0; counter<20; counter++)
    printf("*");
}
12위에서 설명문은 어느 부분인가? (2점)
해설)
13위에서 사용자 정의 함수의 원형선언이 이루어지는 부분은 어디인가? (2점)
해설)
14위에서 사용자 정의 함수의 호출이 일어나는 부분은? (2점)
해설)
15다음과 같은 배열을 선언할 때 배열의 크기는 어떻게 되는가? (2점)
char name[ ]="HONG GIL DONG";
해설)
16다음의 포인터에 대한 설명으로 올바르지 않은 것은? (2점)
해설)
17다음 프로그램의 실행결과로서 올바른 것은? (3점)
#include <stdio.h>
void main() {
  char *names[4]={"Korea", "National", "Open", "University"};
  printf("%s", names[2]);
}
해설)
(18∼19) 다음과 같은 프로그램이 있을 때 물음에 답하시오.
#include <stdio.h>
void main() {
  static int a[ ]={10, 20, 30, 40, 50};
  int *pt, b, c;
  pt=a;
  b=*pt + *(pt+2);
  pt=pt+2;
  c=*pt + *(pt+2);
    printf("b=%d\n", b);  ----  ㉠
    printf("c=%d\n", c);  ----  ㉡
}
18위에서 ㉠의 결과로서 올바른 것은? (3점)
해설)
19위에서 ㉡의 결과로서 올바른 것은? (3점)
해설)
20다음과 같은 배열이 선언되어 있을 때 *(cp+2)의 값은? (3점)
char *cp, s[ ]="computer";
  cp=s;
해설)
21다음과 같은 구조체가 선언되어 있을 때 초기화 방법으로 알맞은 것은? (4점)
struct person {
  char name[8];
  int age;
  char gender;
};
struct person x;
해설)
22다음과 같은 프로그램의 결과로 올바른 것은? (3점)
#include <stdio.h>
struct student {
  char name[10];
  int kor;
  int math;
};
void main() {
  struct student hs[4] = {{"KIM HG",90,95},
                         {"LEE SY",85,90},
                         {"PARK GS",70,85},
                         {"CHOI HJ",95,75}};
  struct student *p;
  p=hs;
  p+=2;
  printf("%s %d %d\n",
         p->name, p->kor, p->math); 
}
해설)
(23∼24) 다음과 같은 프로그램이 있을 때 물음에 답하시오.
#include <stdio.h>
#include <stdlib.h>
void main() {
  FILE ( ㉠ );
  int c;
  if((fp= ㉡ ("oldname.dat", "rb")) == NULL) {
    exit(1);
  }
  while((c=fgetc(fp)) != EOF)
    fprintf(stdout, "%c", c);
  fclose(fp);
}
23위에서 빈칸 ㉠에 들어갈 내용으로 올바른 것은? (4점)
해설)
24위에서 빈칸 ㉡에 들어갈 내용으로 올바른 것은? (4점)
해설)
25다음 기억공간 할당함수들에 대한 설명으로 잘못된 것은? (2점)
해설)
문제답안
1414231312432341334323122

댓글