벚꽃의 꽃말은 중간고사라는 말이 있듯, 꽃이 피는 계절이 되었고 중간고사도 어김없이 돌아왔다.
대학에 처음 와서 문제가 예상되지 않는 컴퓨터공학과 신입생들을 위해 1학년 1학기 기초 프로그래밍 중간고사 예상 문제를 작성해보았다.
모든 문제는 C언어를 기반으로 작성되었다.
컴퓨터 공학과 1학년 1학기 기초 프로그래밍 중간고사 예상 문제
1. 코드의 가독성을 높이고, 개발자의 피로를 덜 수 있는 설정에 대해 3가지 이상 서술하시오.
IDE 검은 배경 설정, TAB 일정하게 넣기, 주석 작성, 적절한 엔터 활용, 표기법 통일 등등
2. 다음 연산자들의 의미가 무엇인지 서술하시오.
1) &
2) ||
3) a++ (a는 변수)
& - 비트 AND 연산자로 두 비트가 모두 1일 때 1이 반환됨
|| - 논리 OR 연산자로 양쪽 값 중 하나 이상이 true일 때 true가 반환됨
++ - 후위 증감 연산자로 먼저 연산을 진행한 후, 피연산자 값을 1 증가시킴
3. for 과 while의 차이점에 대해 서술하시오.
for는 초기화, 조건문, 증감식 모두 포함하는 반면 while은 조건문만 포함함
4. 다음 연산의 결과와 그 이유를 서술하시오.
11 | (1 << 2)
1(true)
11은 이진수로 1011로 표현된다. 1의 비트를 두 자리 이동시켜 OR 연산을 진행하는 식으로 0과 1을 OR 하면 1(true)이 나오게 된다.
5. null과 0의 차이를 서술하시오.
null - 값이 없음을 의미
0 - 정수 0 이라는 값을 의미
6. 다음 코드의 출력 결과를 작성하시오. (IDE 사용금지)
#include <stdio.h>
int main() {
int a = 9;
int b = 3;
if (a > b) {
printf("%d", a * b);
}
else if (a < b) {
printf("%d", a / b);
}
return 0;
}
27
7. 다음 코드의 출력 결과를 작성하시오. (IDE 사용금지)
#include <stdio.h>
int main() {
int i;
for (i = 10; i > 0; i -= 2) {
printf("%d\n", i);
if (i == 4) {
break;
}
}
return 0;
}
10
8
6
4
8. 다음 코드의 출력 결과를 작성하시오. (IDE 사용금지)
#include <stdio.h>
int main() {
int a = 10;
int i = 20;
while (a != 0) {
if (a % 2) {
printf("%d\n", a);
i--;
--a;
}
else {
printf("%d\n", i);
a--;
}
}
return 0;
}
20
9
19
7
18
5
17
3
16
1
9. 다음 코드의 출력 결과를 작성하시오. (IDE 사용금지)
#include <stdio.h>
int main() {
int a = 10;
int b = 20;
int c;
c = a > b ? a : b;
switch (c) {
case 10:
printf("Hello");
break;
case 20:
printf("World");
break;
case 30:
printf("SAMSUNG GOOD");
break;
}
return 0;
}
World
10. 다음의 내용을 출력하는 코드를 작성하시오. (IDE 사용금지)
*
***
*****
*******
#include <stdio.h>
int main() {
int a;
int i;
int blank = 4;
for (a = 1; a < 5; a++) {
for (i = blank - a; i > 0; i--) {
printf(" ");
}
for (i = 1; i < a * 2; i++) {
printf("*");
}
printf("\n");
}
return 0;
}
혹은
#include <stdio.h>
int main() {
printf(" *\n");
printf(" ***\n");
printf(" *****\n");
printf("*******");
return 0;
}
이 외에도 답과 동일한 출력이 되면 정답 인정
이상으로 문제 10가지를 마무리하겠다. 도움이 되길 바라며 질문은 공개 댓글로만 받도록 하겠다.
'잡담' 카테고리의 다른 글
화면 클릭 매크로 (0) | 2022.03.09 |
---|---|
추첨기 (0) | 2021.06.17 |
카카오톡 채팅 수 분석 (0) | 2021.04.23 |
꾸욱꾸우욱의 이야기 (0) | 2019.06.17 |