정보처리기사 실기
1. C
#include <stdio.h>
void main(){
int n[5]={5, 4, 3, 2, 1};
int i;
for(i=0; i<5; i++){
printf("%d", n[(i+1)%5]);
}
}
// 4 3 2 1 5
2. C
#include <stdio.h>
void main(){
int n[3]={73, 95, 82};
int i, sum=0;
for(i=0; i<3; i++){
sum += n[i];
}
switch(sum/30){
case 10:
case 9: printf("A");
case 8: printf("B");
case 7:
case 6: printf("C");
default: printf("D");
}
}
// BCD
3. C
#include <stdio.h>
#define MAX_SIZE 10
int isWhat[MAX_SIZE];
int pointer=-1;
int isEmpty(){
if(point==-1) return 1;
return 0;
}
int isFull(){
if(point==10) return 1;
return 0;
}
void into(int num){
if(point>=10) printf("Full");
isWhat[++point]=num;
}
int take(){
if(isEmpty()==1) printf("Empty");
return isWhat[point--];
}
void main(){
into(5);
into(2);
while(!isEmpty()){
printf("%d", take());
into(4);
into(1);
printf("%d", take());
into(3);
printf("%d", take());
printf("%d", take());
into(6);
printf("%d", take());
printf("%d", take());
}
}
// 213465
5. C
%s: null을 만나기 전까지 출력
gets(): 이전 호출에서 입력된 문자열이 현재 호출에서 입력된 문자열로 덮어써짐
#include <stdio.h>
// 전역변수
char n[30];
char *soojebi(){ // return type: char *
gets(n);
// gets(): 지운 다음 다시 입력
return n;
}
void main(){
char *p1 = soojebi();
// pointer 변수는 주소값 입력 받음
char *p2 = soojebi();
// 전역변수를 사용하므로 새로 입력된 값으로 덮어쓰기 됨
char *p3 = soojebi();
printf("%s\n", p1);
// %s: null을 만나기 전까지 출력
printf("%s\n", p2);
printf("%s\n", p3);
}
/*
박영희
박영희
박영희
*/
7. C
#include <stdio.h>
void main(){
int m = 4620;
int a, b, c, d;
a = m/1000;
b = (m%1000)/500;
c = (m%500)/100;
d = (m%100)/10;
printf("1000원: %d개\n", a);
printf("500원: %d개\n", b);
printf("100원: %d개\n", c);
printf("10원: %d개\n", d);
}
9. C
#include <stdio.h>
void main(){
int arr[] = {65, 25, 12, 22, 11};
int n = sizeof(arr)/sizeof(arr[0]);
int i=0, j, tmp;
do{
j=i+1;
do{
if(arr[i]>arr[j]){
tmp = arr[i];
arr[i] = arr[j];
arr[j] = tmp;
}
j++;
} while(j<n);
i++;
} while(i<n-1);
for(i=0; i<=4; i++)
printf("%d", arr[i]);
}
14. C
#include <stdio.h>
void main(){
int c=0;
int i;
for(i=1; i<=2023; i++){
if(i%4==0) c++;
}
printf("%d", c);
}
// 505
18. Python
a="engineer information programming";
b=a[:3]; # eng
c=a[4:6]; # ne
d=a[29:]; # ing
e=b+c+d;
print(e);
# engneing
19. Java
String 동일한 문자열은 같은 주소값을 참조
문자열 리터럴을 사용하면 Java는 문자열 상수 풀(string pool)이라는 곳에 문자열을 저장하고, 동일한 문자열 리터럴을 가리키는 다른 문자열 변수들은 같은 메모리 위치를 참조
그러나 new String("soojebi")와 같이 new 키워드를 사용하여 명시적으로 새로운 String 객체를 생성하면, 새로운 메모리 공간에 문자열을 저장
class Soojebi{
public static void main(String[] args){
String str1="soojebi";
String str2="soojebi";
String str3= new String("soojebi");
System.out.println(str1==str2); // true
System.out.println(str1==str3); // false
System.out.println(str1.equals(str3)); // true
System.out.println(str2.equals(str3)); // true
}
}
📚 참고 자료
'Certificate > 정보처리기사' 카테고리의 다른 글
[정보처리기사] 2023년 1회차 실기 (1) | 2023.10.05 |
---|---|
[정보처리기사] 2022년 3회차 실기 (0) | 2023.09.12 |
[정보처리기사] 2022년 2회차 실기 (0) | 2023.09.11 |
[정보처리기사] 2022년 1회차 실기 (0) | 2023.09.10 |
[정보처리기사] 2021년 3회차 실기 (0) | 2023.09.08 |