c언어 알고리즘

· Language/C
#define _CRT_SECURE_NO_WARNINGS #include struct point { int x; int y }; struct rect { struct point p1; struct point p2; }; int main(void) { struct rect r; int w, h, area, peri; struct point p1 = { 1,1 }; struct point p2 = { 6,6 }; printf("왼족 상단의 좌표를 입력하시오: "); scanf("%d %d", &r.p1.x, &r.p1.y); printf("오른쪽 상단의 좌표를 입력하시오: "); scanf("%d %d", &r.p2.x, &r.p2.y); w = r.p2.x - r.p1.x; h = r.p2.y - r.p1..
· Language/C
#define _CRT_SECURE_NO_WARNINGS #include struct student { int number; char name[10]; double grade; }; int main(void) { struct stduent s; printf("학번을 입력하시오: "); scanf("%d", &s.number); printf("이름을 입력하시오: "); scanf("%s", s.name); printf("학점을 입력하시오: "); scanf("%f", &s.grade); printf("학번: %d\n", s.number); printf("이름: %s\n", s.name); printf("학점: %f\n", s.grade); return 0; }
· Language/C
구조체를 이용하여 학생 정보를 간편하게 입력하는 알고리즘을 구현해 보았다. #include struct student { int number; char name[10]; double grade; }; int main(void) { struct student s = { 2021350017, "김은서", 4.3 }; printf("학번: %d\n", s.number); printf("이름: %s\n", s.name); printf("학점: %f\n", s.grade); return 0; } 구조체에서 배열을 초기화할 때 두 가지 방법을 사용할 수 있는데, 위처럼 배열을 초기화하는 것처럼 할 수 있고, 아래처럼 .뒤에 붙일 수 있다. s.number = 2021350017; strcpy(s.name, "김은서..
· Language/C
주어진 메뉴를 출력하는 알고리즘을 구현해 보았다. 문자열을 배열로 나타내면 너무 많은 배열의 크기가 필요하기 때문에 포인터를 이용하여 표현한다. 여기서 유의할 점은, 포인터 배열에 문자열이 들어갈 경우 출력할 때 *menu[i]로 하지 않고 menu[i]라고 한다. #include int main(void) { char* menu[5] = { "init", "open", "close", "read", "write" }; for (int i = 0; i < 5; i++) printf("%d 번째 메뉴: %s\n", i, menu[i]); return 0; } 출력하면 다음과 같은 결과가 나온다.
· Language/C
두 점 (x1, y1), (x2, y2)를 지나는 일차함수의 기울기와 y절편을 구하는 알고리즘을 구현해 보았다. #include int get_line_parameter(int x1, int y1, int x2, int y2, float* slope, float* yintercept) { if (x1 == x2) return -1; else { *slope = (float)(y2 - y1) / (float)(x2 - x1); *yintercept = y1 - (*slope) * x1; return 0; } } int main(void) { float s, y; if (get_line_parameter(2, 6, 5, 20, &s, &y) == -1) printf("에러\n"); else printf("기..
· Language/C
배열로 입력받은 값을 거꾸로 출력하는 알고리즘을 구현해보았다. #include void print_reverse(int a[], int n); int main(void) { int a[] = { 10, 20, 30, 40, 50 }; print_reverse(a, 5); return 0; } void print_reverse(int a[], int n) { for (int i = n - 1; i >= 0; i--) { printf("%d\n", a[i]); } } print_reverse 함수를 포인터로 구현할 수도 있다. #include void print_reverse(int a[], int n); int main(void) { int a[] = { 10, 20, 30, 40, 50 }; print_..
je1att0
'c언어 알고리즘' 태그의 글 목록