1. 출력 값을 작성하시오.
#include <stdio.h>
int len(char* p);
int main() {
char* p1 = "12004";
char* p2 = "20240123";
int a = len(p1);
int b = len(p2);
printf("%d", a + b);
return 0;
}
int len(char* p) {
int r = 0;
while (*p != '\0') {
p++;
r++;
}
return r;
}
정답
13
2. 출력 값을 작성하시오.
#include <stdio.h>
int len(char* p);
int main() {
char* p1 = "20120104";
char* p2 = "20240123";
int a = len(p1);
int b = len(p2);
printf("%d", a + b);
return 0;
}
int len(char* p) {
if (*p == '\0') {
return 0;
} else {
return 1 + len(p + 3);
}
}
정답
11
3. 출력 값을 작성하시오.
#include <stdio.h>
int main(int argc, char *argv[]) {
int a[5] = {0, 2, 4, 8, 10};
int b[3] = {};
int i = 1;
int sum = 0;
int *p1;
for (i; i < 5; i++) {
p1 = a + i;
b[i - 1] = p1 - (a + i - 1);
sum = sum + b[i - 1] + a[i];
}
printf("%d", sum);
return 0;
}
정답
28
4. 출력 값을 작성하시오.
#include <stdio.h>
int main(int argc, char *argv[]) {
int a[5] = {0, 4, 4, 16, 10};
int b[3] = {};
int i = 1;
int sum = 0;
int *p1;
for (i; i < 4; i++) {
p1 = a + i;
b[i - 1] = p1 - (a + i - 3);
sum = sum + b[i - 1] + a[i];
}
printf("%d", sum);
return 0;
}
정답
33
5. 출력 값을 작성하시오.
#include <stdio.h>
int main(int argc, char *argv[]) {
int a[5] = {0, 1, 3, 5, 10};
int b[3] = {};
int sum = 0;
int *p1;
for (int i = 1; i < 5; i++) {
p1 = a + i;
b[i - 1] = p1 - (a + i - 1);
sum = sum + b[i - 1] + a[i];
}
printf("%d\n", sum);
return 0;
}
정답
23
6. 출력 값을 작성하시오.
#include <stdio.h>
int func(int a) {
if (a <= 1) return 1;
return a * func(a - 1);
}
int main() {
int a = 6;
printf("%d", func(a));
return 0;
}
정답
720
7. 출력 값을 작성하시오.
#include <stdio.h>
int main() {
int number = 1234;
int div = 10;
int result = 0;
while (number > 0) {
result = result * div;
result = result + number % div;
number = number / div;
}
printf("%d", result);
return 0;
}
정답
4321
8. 출력 값을 작성하시오.
#include <stdio.h>
int isPrime(int number)
{
if (number <= 1) return 0;
for (int i = 2; i * i <= number; i++)
{
if (number % i == 0) return 0;
}
return 1;
}
int main(void)
{
int number = 12375, max_div = 1;
for (int i = 2; i * i <= number; i++)
{
if (number % i == 0 && isPrime(i))
{
max_div = i;
}
}
printf("%d", max_div);
return 0;
}
정답
11
9. 출력 값을 작성하시오.
#include <stdio.h>
int main()
{
int *arr[3];
int a = 31, b = 62, c = 311;
arr[0] = &a;
arr[1] = &b;
arr[2] = &c;
printf("%d\n", *arr[1] + **arr + 1);
}
정답
94
10. 출력 값을 작성하시오.
#include <stdio.h>
struct sut
{
char name[12];
int os, db, hab, hhab;
};
int main()
{
struct sut st[3] = {{"데이터1", 95, 38}, {"데이터2", 24, 91}, {"데이터3", 46, 15}};
struct sut* p;
p = &st[0];
(p + 1)->hab = (p + 1)->os + (p + 2)->db;
(p + 1)->hhab = (p+1)->hab + p->os + p->db;
printf("%d\n", (p+1)->hab + (p+1)->hhab);
}
정답
211