코드업 C언어 기초 100제 문제의 정답입니다.
문제 링크 : http://codeup.kr/problemsetsol.php?psid=23

1001
[ 기초 / 출력 ] 출력하기 1
| #include <stdio.h> int main() {
printf("Hello"); return 0;
} | cs |
1002
[ 기초 / 출력 ] 출력하기 2
| #include <stdio.h> int main() { printf("Hello World"); return 0; } | cs |
1003
[ 기초 / 출력 ] 출력하기 3
| #include <stdio.h> int main() { printf("Hello\nWorld"); return 0; } | cs |
1004
[ 기초 / 출력 ] 출력하기 4
| #include <stdio.h> int main() { printf("\'Hello\'"); return 0; } | cs |
1005
[ 기초 / 출력 ] 출력하기 5
| #include <stdio.h> int main() { printf("\"Hello\""); return 0; } | cs |
1006
[ 기초 / 출력 ] 출력하기 6
| #include <stdio.h> int main() { printf("\"!@#$%^&*()\""); return 0; } | cs |
1007
[ 기초 / 출력 ] 출력하기 7
| #include <stdio.h> int main() { printf("\"C:\\Download\\hello.cpp\""); return 0; } | cs |
1009
[ 기초 / 출력 ] 출력하기 9
| #include <stdio.h> int main() { printf("#include <stdio.h>\n"); printf("int main()\n"); printf("{\n"); printf("\tprintf(\"Hello World\\n\");\n"); printf("return 0;\n"); printf("}"); return 0; } | cs |
1010
[ 기초 / 입출력 ] 정수 한 개 입력받아 그대로 출력하기
| #include <stdio.h> int main() { int n; scanf("%d", &n); printf("%d", n); } | cs |
1011
[ 기초 / 입출력 ] 문자 한 개 입력받아 그대로 출력하기
| #include <stdio.h> int main() { char x; scanf("%c", &x); printf("%c", x); } | cs |
1012
[ 기초 / 입출력 ] 실수 한 개 입력받아 그대로 출력하기
| #include <stdio.h> int main() { float x; scanf("%f", &x); printf("%f", x); return 0; } | cs |
1013
[ 기초 / 입출력 ] 정수 두 개 입력받아 그대로 출력하기
| #include <stdio.h> int main() { int a, b; scanf("%d %d", &a, &b); printf("%d %d", a, b); return 0; } | cs |
1014
[ 기초 / 입출력 ] 문자 두 개 입력받아 순서 바꿔 출력하기
| #include <stdio.h> int main() { char a,b; scanf("%c %c", &a, &b); printf("%c %c", b, a); return 0; } | cs |
1015
[ 기초 / 입출력 ] 실수 한 개 입력받아 소수점 이하 둘째 자리까지 출력하기
| #include <stdio.h> int main() { double x; scanf("%lf",&x); printf("%.2lf",x); return 0; } | cs |
1017
[ 기초 / 입출력 ] 정수 한 개 입력받아 세 번 출력하기
| #include <stdio.h> int main() { int a; scanf("%d", &a); printf("%d %d %d", a, a, a); return 0; } | cs |
1018
[ 기초 / 입출력 ] 시간 입력받아 그대로 출력하기
| #include <stdio.h> int main() { int h, m; scanf("%d:%d", &h, &m); printf("%d:%d", h, m); return 0; } | cs |
1019
[ 기초 / 입출력 ] 년월일 입력받아 형식에 맞게 출력하기
| #include <stdio.h> int main() { int a, b, c; scanf("%d.%d.%d", &a, &b, &c); printf("%04d.%02d.%02d", a, b, c); return 0; } | cs |
1020
[ 기초 / 입출력 ] 주민번호 입력받아 형태 바꿔 출력하기
| #include <stdio.h> int main() { int a, b; scanf("%d-%d", &a, &b); printf("%06d%07d", a, b); return 0; } | cs |
1021
[ 기초 / 입출력 ] 단어 한 개 입력받아 그대로 출력하기
| #include <stdio.h> int main() { char chr[100]; scanf("%s", chr); printf("%s", chr); return 0; } | cs |
1022
[ 기초 / 입출력 ] 문장 한 개 입력받아 그대로 출력하기
| #include <stdio.h> int main() { char chr[2100]; gets(chr); printf("%s", chr); return 0; } | cs |
1023
[ 기초 / 입출력 ] 실수 한 개 입력받아 부분별로 출력하기
| #include <stdio.h> int main() { int a, b; scanf("%d.%d",&a,&b); printf("%d\n%d",a,b); } | cs |
1024
[ 기초 / 입출력 ] 단어 한 개 입력받아 나누어 출력하기
| #include <stdio.h> int main() { int i; char n[21]; scanf("%s",&n); for(i=0; n[i] != '\0'; i++) { printf("\'%c\'\n", n[i]); } return 0; } | cs |
1025
[ 기초 / 입출력 ] 정수 한 개 입력받아 나누어 출력하기
| #include <stdio.h> int main() { int a, b, c, d, e; scanf("%1d%1d%1d%1d%1d", &a, &b, &c, &d, &e); printf("[%d]\n", a*10000); printf("[%d]\n", b*1000); printf("[%d]\n", c*100); printf("[%d]\n", d*10); printf("[%d]\n", e); return 0; } | cs |
1026
[ 기초 / 입출력 ] 시분초 입력받아 분 만 출력하기
| #include <stdio.h> int main() { int a, b, c; scanf("%d:%d:%d", &a, &b, &c); printf("%d", b); return 0; } | cs |
1027
[ 기초 / 입출력 ] 년월일 입력받아 형태 바꿔 출력하기
| #include <stdio.h> int main() { int a, b, c; scanf("%d.%d.%d", &a, &b, &c); printf("%02d-%02d-%04d", c, b, a); return 0; } | cs |
1028
[ 기초 / 데이터형 ] 정수 한 개 입력받아 그대로 출력하기 2
| #include <stdio.h> int main() { long long int a; scanf("%lld", &a); printf("%lld", a); return 0; } | cs |
1029
[ 기초 / 데이터형 ] 실수 한 개 입력받아 그대로 출력하기 2
| #include <stdio.h> int main() { double f; scanf("%lf", &f); printf("%.11lf", f); return 0; } | cs |
1030
[ 기초 / 데이터형 ] 정수 한 개 입력받아 그대로 출력하기 3
| #include <stdio.h> int main() { long long int n; scanf("%lld", &n); printf("%lld", n); return 0; } | cs |
1031
[ 기초 / 출력변환 ] 10진수 한 개 입력받아 8진수로 출력하기
| #include <stdio.h> int main() { int n; scanf("%d", &n); printf("%o", n); return 0; } | cs |
1032
[ 기초 / 출력변환 ] 10진 정수 한 개 입력받아 16진수로 출력하기 1
| #include <stdio.h> int main() { int n; scanf("%d", &n); printf("%x", n); return 0; } | cs |
1033
[ 기초 / 출력변환 ] 10진 정수 한 개 입력받아 16진수로 출력하기 2
| #include <stdio.h> int main() { int n; scanf("%d", &n); printf("%X", n); return 0; } | cs |
1034
[ 기초 / 출력변환 ] 8진 정수 한 개 입력받아 10진수로 출력하기
| #include <stdio.h> int main() { int n; scanf("%o", &n); printf("%d", n); return 0; } | cs |
1035
[ 기초 / 출력변환 ] 16진 정수 한 개 입력받아 8진수로 출력하기
| #include <stdio.h> int main() { int n; scanf("%x", &n); printf("%o", n); return 0; } | cs |
1036
[ 기초 / 출력변환 ] 영문자 한 개 입력받아 10진수로 출력하기
| #include <stdio.h> int main() { char c; scanf("%c", &c); printf("%d", c); return 0; } | cs |
1037
[ 기초 / 출력변환 ] 정수 한 개 입력받아 아스키 문자로 출력하기
| #include <stdio.h> int main() { char c; scanf("%d", &c); printf("%c", c); return 0; } | cs |
1038
[ 기초 / 산술연산 ] 정수 두 개 입력받아 합 출력하기
| #include <stdio.h> int main() { int a, b; scanf("%d%d", &a, &b); printf("%d", a+b); return 0; } | cs |
1039
[ 기초 / 산술연산 ] 정수 두 개 입력받아 합 출력하기 2
| #include <stdio.h> int main() { long long int n,k; scanf("%lld%lld", &n, &k); printf("%lld", n+k); return 0; } | cs |
1040
[ 기초 / 산술연산 ] 정수 한 개 입력받아 부호 바꿔 출력하기
| #include <stdio.h> int main() { int n; scanf("%d", &n); printf("%d", -n); return 0; } | cs |
1041
[ 기초 / 산술연산 ] 문자 한 개 입력받아 다음 문자 출력하기
| #include <stdio.h> int main() { char n; scanf("%c", &n); printf("%c", n+1); return 0; } | cs |
1042
[ 기초 / 산술연산 ] 정수 두 개 입력받아 나눈 몫 출력하기
| #include <stdio.h> int main() { int a, b; scanf("%d%d", &a, &b); printf("%d", a/b); return 0; } | cs |
1043
[ 기초 / 산술연산 ] 정수 두 개 입력받아 나눈 나머지 출력하기
| #include <stdio.h> int main() { int a, b; scanf("%d%d", &a, &b); printf("%d", a%b); return 0; } | cs |
1044
[ 기초 / 산술연산 ] 정수 한 개 입력받아 1 더해 출력하기
| #include <stdio.h> int main() { long long int a; scanf("%lld", &a); printf("%lld", ++a); return 0; } | cs |
1045
[ 기초 / 산술연산 ] 정수 두 개 입력받아 자동 계산하기
| #include <stdio.h> int main() { int a, b; scanf("%d %d", &a, &b); printf("%d\n", a+b); printf("%d\n", a-b); printf("%d\n", a*b); printf("%d\n", a/b); printf("%d\n", a%b); printf("%.2lf", (double)a/b); return 0; } | cs |
1046
[ 기초 / 산술연산 ] 정수 세 개 입력받아 합과 평균 출력하기
| #include <stdio.h> int main() { int a, b, c; scanf("%d%d%d", &a, &b, &c); printf("%d\n", a+b+c); printf("%.1lf", (a+b+c)/3.0); return 0; } | cs |
1047
[ 기초 / 비트시프트연산 ] 정수 한 개 입력받아 2 곱해 출력하기
| #include <stdio.h> int main() { int a; scanf("%d", &a); printf("%d\n",a << 1); return 0; } | cs |
1048
[ 기초 / 비트시프트연산 ] 한 번에 2의 n제곱으로 출력하기
| #include <stdio.h> int main() { int a, b; scanf("%d%d", &a, &b); printf("%d\n", a<<b ); return 0; } | cs |
1049
[ 기초 / 비교연산 ] 두 정수 입력받아 비교하기 1
| #include <stdio.h> int main() { int a, b; scanf("%d%d", &a, &b); printf("%d", a>b ); return 0; } | cs |
1050
[ 기초 / 비교연산 ] 두 정수 입력받아 비교하기 2
| #include <stdio.h> int main() { int a, b; scanf("%d%d", &a, &b); printf("%d\n", a==b); return 0; } | cs |
1051
[ 기초 / 비교연산 ] 두 정수 입력받아 비교하기 3
| #include <stdio.h> int main() { int a, b; scanf("%d%d", &a, &b); printf("%d\n", b >= a ); return 0; } | cs |
1052
[ 기초 / 비교연산 ] 두 정수 입력받아 비교하기 4
| #include <stdio.h> int main() { int a, b; scanf("%d%d", &a, &b); printf("%d\n",a != b); return 0; } | cs |
1053
[ 기초 / 논리연산 ] 참 거짓 바꾸기
| #include <stdio.h> int main() { int a; scanf("%d", &a); printf("%d\n", !a); return 0; } | cs |
1054
[ 기초 / 논리연산 ] 둘 다 참일 경우만 참 출력하기
| #include <stdio.h> int main() { int a, b; scanf("%d%d", &a, &b); printf("%d\n", a&&b); return 0; } | cs |
1055
[ 기초 / 논리연산 ] 하나라도 참이면 참 출력하기
| #include <stdio.h> int main() { int a, b; scanf("%d%d", &a, &b); printf("%d\n", a||b); return 0; } | cs |
1056
[ 기초 / 논리연산 ] 참 거짓이 서로 다를 때만 참 출력하기
| #include <stdio.h> int main() { int a, b; scanf("%d%d", &a, &b); printf("%d\n", a^b); return 0; } | cs |
1057
[ 기초 / 논리연산 ] 참 거짓이 서로 같을 때만 참 출력하기
| #include <stdio.h> int main() { int a, b; scanf("%d%d", &a, &b); printf("%d\n", !(a^b)); return 0; } | cs |
1058
[ 기초 / 논리연산 ] 둘 다 거짓일 경우만 참 출력하기
| #include <stdio.h> int main() { int a, b; scanf("%d%d", &a, &b); printf("%d\n", !(a||b)); return 0; } | cs |
1059
[ 기초 / 비트단위논리연산 ] 비트단위로 바꿔 출력하기
| #include <stdio.h> int main() { int a; scanf("%d", &a); printf("%d\n", ~a); return 0; } | cs |
1060
[ 기초 / 비트단위논리연산 ] 비트단위로 and 하여 출력하기
| #include <stdio.h> int main() { int a, b; scanf("%d%d", &a, &b); printf("%d\n", a&b); return 0; } | cs |
1061
[ 기초 / 비트단위논리연산 ] 비트단위로 xor 하여 출력하기
| #include <stdio.h> int main() { int a, b; scanf("%d%d", &a, &b); printf("%d\n", a^b); return 0; } | cs |
1062
[ 기초 / 비트단위논리연산 ] 비트단위로 or 하여 출력하기
| #include <stdio.h> int main() { int a, b; scanf("%d%d", &a, &b); printf("%d\n", a|b); return 0; } | cs |
1063
[ 기초 / 삼항연산 ] 두 정수 입력받아 큰 수 출력하기
| #include<stdio.h> int main() { int a, b; scanf("%d%d",&a, &b); printf("%d", a > b ? a : b); return 0; } | cs |
1064
[ 기초 / 삼항연산 ] 정수 세 개 입력받아 가장 작은 수 출력하기
| #include <stdio.h> int main() { int a, b, c; scanf("%d%d%c", &a, &b, &c); printf("%d\n", a<b ? (a<c?a:c) : (b<c?b:c) ); return 0; } | cs |
1065
[ 기초 / 조건 / 선택실행구조 ] 정수 세 개 입력받아 짝수만 출력하기
| #include <stdio.h> int main() { int a, b, c; scanf("%d%d%d", &a, &b, &c); if(a%2 == 0) printf("%d\n", a); if(b%2 == 0) printf("%d\n", b); if(c%2 == 0) printf("%d\n", c); return 0; } | cs |
1066
[ 기초 / 조건 / 선택실행구조 ] 정수 세 개 입력받아 짝홀 출력하기
<
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #include <stdio.h> int main() { int a, b, c; scanf("%d%d%d", &a, &b, &c); if(a%2 == 0) printf("even\n"); else printf("odd\n"); if(b%2 == 0)printf("even\n"); else printf("odd\n"); if(c%2 == 0)printf("even\n"); else printf("odd\n"); return 0; } | cs |
1067
[ 기초 / 조건 / 선택실행구조 ] 정수 한 개 입력받아 분석하기
| #include <stdio.h> int main() { int a; scanf("%d", &a); if(a > 0) printf("plus\n"); else printf("minus\n"); if(a%2 == 0) printf("even\n"); else printf("odd\n"); return 0; } | cs |
1068
[ 기초 / 조건 / 선택실행구조 ] 정수 한 개 입력받아 평가 출력하기
| #include <stdio.h> int main() { int a; scanf("%d", &a); if(a >= 90) printf("A\n"); else if(a >= 70) printf("B\n"); else if(a >= 40) printf("C\n"); else printf("D\n"); return 0; } | cs |
1069
[ 기초 / 조건 / 선택실행구조 ] 평가 입력받아 다르게 출력하기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #include <stdio.h> int main() { char a; scanf("%c",&a); switch(a) { case 'A': printf("best!!!"); break; case 'B': printf("good!!"); break; case 'C': printf("run!"); break; case 'D': printf("slowly~"); break; default: printf("what?"); } return 0; } | cs |
1070
[ 기초 / 조건 / 선택실행구조 ] 달 입력 받아 계절 출력하기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | #include <stdio.h> int main() { char a; scanf("%d",&a); switch(a) { case 12: case 1: case 2:printf("winter");break; case 3: case 4: case 5:printf("spring");break; case 6: case 7: case 8:printf("summer");break; case 9: case 10: case 11:printf("fall");break; } return 0; } | cs |
1071
[ 기초 / 반복실행구조 ] 0 입력될 때까지 무한 출력하기 1
| #include<stdio.h> int main() { int n; again: scanf("%d", &n); printf("%d\n", n); if(n != 0) goto again; return 0; } | cs |
1072
[ 기초 / 반복실행구조 ] 정수 입력받아 계속 출력하기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | #include <stdio.h> int main() { int cnt; int n; scanf("%d", &cnt); again: if(cnt-- != 0) { scanf("%d", &n); printf("%d\n", n); goto again; } return 0; } | cs |
1073
[ 기초 / 반복실행구조 ] 0 입력될 때까지 무한 출력하기 2
| #include <stdio.h> int main() { int a; while(1) { scanf("%d", &a); if(a != 0) printf("%d\n",a); else { printf("0"); return 0; } } } | cs |
1074
[ 기초 / 반복실행구조 ] 정수 한 개 입력받아 카운트다운 출력하기 1
| #include <stdio.h> int main() { int n; scanf("%d", &n); for(; n>=1; n--) printf("%d\n", n); return 0; } | cs |
1075
[ 기초 / 반복실행구조 ] 정수 한 개 입력받아 카운트다운 출력하기 2
| #include <stdio.h> int main() { int n, i; scanf("%d", &n); for(i=n-1; i>=0; i--) printf("%d\n", i); return 0; } | cs |
1076
[ 기초 / 반복실행구조 ] 문자 한 개 입력받아 알파벳 출력하기
| #include <stdio.h> int main() { char n, i; scanf("%c", &n); for(i='a'; i<=n; i++) printf("%c ",i); return 0; } | cs |
1077
[ 기초 / 반복실행구조 ] 정수 한 개 입력받아 그 수까지 출력하기
| #include <stdio.h> int main() { char n, i; scanf("%d", &n); for(i=0; i<=n; i++) printf("%d\n", i); return 0; } | cs |
1078
[ 기초 / 종합 ] 짝수 합 구하기
| #include <stdio.h> int main() { int n, i, s=0; scanf("%d", &n); for(i=1; i<=n; i++) if(i%2==0) s+=i; printf("%d", s); return 0; } | cs |
1079
[ 기초 / 종합 ] 원하는 문자 입력할 때까지 반복 출력하기
| #include <stdio.h> int main() { char a; while(1) { scanf("%c ", &a); if(a != 'q') printf("%c\n",a); else { printf("q"); return 0; } } } | cs |
1080
[ 기초 / 종합 ] 언제까지 더해야할까
| #include <stdio.h> int main() { int i, a, s=0; scanf("%d", &a); for(i=1; ;i++) { s += i; if (s>=a) break; } printf("%d", i); return 0; } | cs |
( ...... )
1096
[ 기초 / 종합 / 배열 ] 바둑판에 흰돌 놓기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | #include <stdio.h> int n, i, j, a, b; int map[20][20]; main() { scanf("%d", &n); for(i=0; i < n; i++) { scanf("%d%d", &a, &b); map[a][b] = 1; } for(i=1; i <= 19; i++) { for(j=1; j <= 19; j++) { printf("%d ", map[i][j]); } printf("\n"); } } | cs |
1097
[ 기초 / 종합 / 배열 ] 바둑알 십자 뒤집기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | #include <stdio.h> int main() { int a[20][20], i, x, y, j, n; for(i=1 ; i<=19 ; i++) { for(j=1 ; j<=19 ; j++) { scanf("%d",&a[i][j]); } } scanf("%d",&n); for(i=1 ; i<=n ; i++) { scanf("%d %d",&x,&y); for(j=1 ; j<=19 ; j++) { if(a[x][j]==0) a[x][j]=1; else a[x][j]=0; } for(j=1 ; j<=19 ; j++) { if(a[j][y]==0) a[j][y]=1; else a[j][y]=0; } } for(i=1 ; i<=19 ; i++) { for(j=1 ; j<=19 ; j++) { printf("%d ",a[i][j]); } printf("\n"); } } | cs |
1098
[ 기초 / 종합 / 배열 ] 설탕과자 뽑기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | #include <stdio.h> int main() { int h, w, n, l, d, x, y, i, j; int a[101][101]={0}; scanf("%d %d",&h,&w); scanf("%d",&n); for(i=1 ; i<=n ; i++) { scanf("%d %d %d %d",&l,&d,&x,&y); if(l==1) if(a[x][y]==0) a[x][y]=1; if(l!=1) { if(d==0) for(j=1 ; j<=l ; j++) a[x][y+j-1]=1; else if(d==1) for(j=1 ; j<=l ; j++) a[x+j-1][y]=1; } } for(i=1 ; i<=h ; i++) { for(j=1 ; j<=w ; j++) { printf("%d ",a[i][j]); } printf("\n"); } } | cs |
1099
[ 기초 / 종합 / 배열 ] 성실한 개미
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | #include <stdio.h> int main() { int map[11][11],x=2,y=2,i,j; for(i=1;i<=10;i++) for(j=1;j<=10;j++) scanf("%d",&map[i][j]); while(map[x][y]!=2) { map[x][y]=9; if(map[x][y+1]!=1) y+=1; else if(map[x+1][y]!=1) x+=1; else break; } map[x][y]=9; for(i=1;i<=10;i++) { for(j=1;j<=10;j++) printf("%d ",map[i][j]); printf("\n"); } return 0; } | cs |
나머지 문제들도 풀어줘요
감사해용