반응형

C_C++ 359

(C언어) 배열 요소를 앞으로 한 칸씩 이동하기(회전하기)

배열의 요소를 앞으로 한 칸씩 이동하는 C언어 코드입니다. 맨 처음 요소는 맨 뒤로 이동합니다. 이동 전 10 20 30 40 50 60 70 80 90 99 이동 후 20 30 40 50 60 70 80 90 99 10 C언어 코드 #include void print(int arr[], int n) { int i; for (i = 0; i < n; i++) printf("%d ", arr[i]); printf("\n"); } int main() { int i, j; int a[10] = { 10,20,30,40,50,60,70,80,90,99 }; print(a, 10); // 배열을 왼쯕으로 한 칸씩 이동하기 // 맨 처음 값은 맨 뒤로 이동 int temp = a[0]; // 맨 처음 값 보관 fo..

(C언어) 크기순으로 정렬된 배열에 값 삽입하기

#배열 #삽입 #insert #array 크기 순으로 정렬되어 있는 배열에 값을 삽입하는 순서 - 삽입한 위치를 찾는다. - 뒤에서부터 삽입할 위치까지 앞으로 한 칸씩 복사한다(이동한다) - 삽입할 위치에 새로운 값을 넣는다. 크기 순으로 정렬되어 있는 배열에 값을 삽입하는 C언어 코드입니다. C언어 #define _CRT_SECURE_NO_WARNINGS // Visual Studio #include void print(int a[], int n) { int i; for (i = 0; i < n; i++) printf("%d ", a[i]); printf("\n"); } int main() { int i, j; int p[10] = { 10,20,30,40,50,60,70,80,90, 0 }; int ..

(C언어) sprintf() 함수

#sprintf sprintf 지정된 형식(format)으로 출력을 문자열에 저장합니다. #include int sprintf(char *buffer, const char *format[..., argument, ...]) printf와 같은 출력의 결과를 문자열 buffer에 저장합니다. 반환값은 출력된 바이트 갯수이며, 오류가 발행하면 NULL를 반환합니다. 또, sprintf를 이용하면 숫자를 간단하게 문자열로 저장할 수 있습니다. 예제 1 #define _CRT_SECURE_NO_WARNINGS #include int main() { char s[20]; int a = 1234; double b = 123.456789; sprintf(s, "%d %.2f", a, b); printf("%s\n",..

C_C++ 2022.11.25

(C언어) 개미 수열 look and say sequence

#개미수열 #look and say sequence 1 11 12 1121 122111 112213 ... 개미 수열 읽고 말하는 대로 다음 항을 도출하는 수열이다. 보통은 초항이 1이지만, 다른 수를 초항으로 설정하기도 한다. 보고 말하기 수열이라고도 하며, 프랑스의 유명 소설가 베르나르 베르베르의 소설 에 등장한다고 하여 개미 수열이라고도 한다. 이 수열은 일상적 언어를 사용한 구술적인 방식으로 정의되기에, 엄밀한 수학적 표현으로 정의되는 여타 수열과 달리 일반항이나 점화식이 아직까지 알려지지 않았다. 콘웨이의 생명 게임으로 유명한 존 호튼 콘웨이가 만들었다. 개미수열은 [1행] 1입니다. [2행] 11 -- 이전 항에서 1이 1개 연속이라는 의미입니다. [3행] 12 -- 이전 항이 1이 2개 연속..

(C언어) 성적 데이터 파일 읽기 fscanf, fscanf_s

다음과 같은 형식의 성적 데이터를 읽어 들이는 C언어 코드입니다. 정재욱 100 100 100 이순신 90 91 92 홍길동 81 82 83 C언어 코드 #define _CRT_SECURE_NO_WARNINGS #include int main() { FILE* fp; char name[20]; int a, b, c, tot; if ((fp = fopen("score.txt", "r")) == NULL) { printf("파일을 열 수 없습니다.\n"); return -1; } while (!feof(fp)) { fscanf(fp, "%s %d %d %d", name, &a, &b, &c); tot = a + b + c; // 총점 구하기 printf("%s\t%3d %3d %3d %3d\n", name,..

C_C++ 2022.11.23

(C언어) 구조체를 이진파일에 저장하고 읽어오기 fread fwrite

#이진파일 #구조체 #저장 #읽기 #person #struct #fread #fwrite 구조체를 이진 파일에 저장하고 읽어오는 C언어 코드입니다. #define _CRT_SECURE_NO_WARNINGS // Visual Studio #include #include #define N4 typedef struct { char name[10]; int age; } person; int main() { FILE* fp; person list[N] = { { "홍길동", 20 }, { "이순신", 30 }, { "정재욱", 40 }, { "빌게이츠", 50} }; fp = fopen("person.dat", "wb"); if (fp == NULL) { printf("저장 오류\n."); exit(1); } f..

C_C++ 2022.11.22

(C언어) 문자열 뒤집기

#문자열 #역순으로 #거꾸러 #반대로 #뒤집기 문자열을 입력받고, 입력 받은 문자열의 순서를 뒤집는 C언어 코드입니다. #define _CRT_SECURE_NO_WARNINGS // Visual Studio #include #include // 문자열 뒤집기 // s: 원본, s2: 뒤집어진 문자열 // len: s 문자열의 길이 void reverse(char s[], char s2[], int len) { int i; for (i = 0; i < len; i++) s2[i] = s[len - i - 1]; s2[i] = '\0'; } int main() { char s[100], s2[100]; while (gets(s)) { reverse(s, s2, strlen(s)); printf("%s\n%s..

C_C++ 2022.11.22

(C언어) 문자열에서 모든 공백을 삭제하는 함수 ★★

#문자열 #공백 #스페이스 #제거 #삭제 #space #blank 문자열에서 모든 공백을 제거하는 del_space() 함수를 직접 만들었습니다. #define _CRT_SECURE_NO_WARNINGS // Visual Studio #include #include #include void del_space(char s[]) { char* str = (char*)malloc(sizeof(s)); int i, k = 0; for (i = 0; i < strlen(s); i++) if (s[i] != ' ') str[k++] = s[i]; str[k] = '\0'; strcpy(s, str); } int main() { char s[100]; while (gets(s)) { del_space(s); // 입..

C_C++ 2022.11.22
반응형