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

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

by HAN, URI / ΛΙΙΛ™ 2024. 7. 1.
0-썸네일-C프로그래밍-기말-16-1-1
0-썸네일-C프로그래밍-기말-16-1-1
2016 학년도  1 학기  1 학년  25 문항
C프로그래밍
시험종류   :기말시험
출제위원   :방송대 김형근
출제범위   :교재전체(특히 4, 5, 6장) (해당 멀티미디어강의 포함)
자료출처   :한국방송통신대학교
웹앱제작   :올에이클래스 김현수
01다음 중 C 프로그램 완성과정의 순서로 올바른 것은? (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>
main(){
  int a=10;
  if(a>=0)
    if(a==0)  
      printf("첫번째 if");
    else
      printf("두번째 if");
  else
    printf("세번째 if");
}
해설)
07다음 프로그램 중 잘못된 문장은? (2점)
#include <stdio.h>  ----  ㉠
void main() {  ----  ㉡
  printf("This is a program with a"); 
  do_it("problem!");  ----  ㉢
  return;  ----  ㉣
}
해설)
08다음과 같은 프로그램의 실행결과로서 올바른 것은? (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);
}
해설)
09다음 프로그램이 수행되었을 때 sum의 값은? (3점)
#include <stdio.h>
void main()
{
  int a, b, sum=0;
  for(a=1; a<5; a++)
    for(b=5; b>1; b--)
      sum+=1;
}
해설)
10다음 프로그램을 조건 연산자를 사용하여 바꾼다면 가장 올바른 것은? (3점)
if(a>10)
  x=a*100;
else
  x=a*200;
해설)
11다음과 같은 프로그램의 실행결과로서 올바른 것은? (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);
}
해설)
12선행처리기(preprocessor)의 설명으로 올바르지 않은 것은? (3점)
해설)
13다음과 같은 프로그램의 실행결과로서 올바른 것은? (3점)
#include <stdio.h>
void main() {
  int n=29;
  switch(n%5) {
    case 0: printf("A\n");
    break;
    case 1: printf("B\n");
    break;
    case 2: printf("C\n");
    break;
    default: printf("D\n");
    break;
  }
}
해설)
14다음의 배열에 대한 설명 중 올바르지 않은 것은? (3점)
해설)
15다음과 같은 프로그램의 결과로 올바른 것은? (3점)
#include <stdio.h>
void main(){
int array[3][4]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
  printf("%d", array[1][3]);
}
해설)
(16~18) 다음과 같은 프로그램이 있을 때 물음에 답하시오.
#include <stdio.h>
void main() {
  int *p,*q;
  int a[ ]={10,20,30,40,50,60,70,80,90,100};
  p=&a[4];
  q=p+3;
    printf("%d %d\n", *p, *q);  ----  ㉠
    printf("*(p+3)=%d\n", *(p+3));  ----  ㉡
    printf("p-q= %d\n", p-q);  ----  ㉢
}
16위에서 ㉠의 결과로서 올바른 것은? (3점)
해설)
17위에서 ㉡의 결과로서 올바른 것은? (3점)
해설)
18위에서 ㉢의 결과로서 올바른 것은? (3점)
해설)
(19∼20) 다음과 같은 프로그램이 있을 때 물음에 답하시오.
#include <stdio.h>
void main() {
  static a[3][3] = {{10,20,30},{40,50,60},{70,80,90}};
  int *pt;
  pt=a[1];
    printf("%d ", *pt);  ----  ㉠
    printf("%d ", *(pt+5));  ----  ㉡
}
19위에서 ㉠의 결과로 올바른 것은? (2점)
해설)
20위에서 ㉡의 결과로 올바른 것은? (2점)
해설)
(21∼22) 다음과 같은 프로그램이 있을 때 물음에 답하시오.
#include <stdio.h>
struct person{
  char x[20];
  char y[20];
};
void main(){
  struct person MAN[3]={{"111", "222"},{"333", "444"},{"555", "666"}};
  printf("%s", MAN[0].x);  ----  ㉠
  printf("%s", MAN[1].y);  ----  ㉡
}
21위에서 ㉠의 결과로 올바른 것은? (2점)
해설)
22위에서 ㉡의 결과로 올바른 것은? (2점)
해설)
(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다음 중 그 성격이 다른 함수는? (4점)
해설)
문제답안
341422314332424442341212K

댓글