#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <string.h> #define MAX_SIZE 100 void main() { char name[MAX_SIZE]; char s1 [MAX_SIZE]; /* 문자열 입력 *Parameter 1 : 티켓 변수 *Parameter 2 : 버퍼 사이즈, 배열 사이즈 */ printf("이름 입력>>"); gets(name); printf("%s\n", name); strcpy(name, "Hello"); strcpy(s1, "World"); strcat(name, s1); printf("%s\n", name); strncpy(s1, name, 2); s1[2] = '\n'; printf("%s\n", s1); } |
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <string.h> #define MAX_SIZE 100 void main() { char str1[MAX_SIZE]; char str2[MAX_SIZE]; printf("첫번째 문자열 입력>"); gets(str1); printf("두번째 문자열 입력>"); gets(str2); strcat(str1, str2); printf("%s", str1); strrev(str1); printf("%s", str1); } |
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <string.h> #define MAX_SIZE 100 void main() { char str1[MAX_SIZE]; char str2[MAX_SIZE]; printf("첫번째 문자열 입력>"); gets(str1); char* tokens = strtok(str1, " "); while (tokens != NULL) { printf("%s\n", tokens); tokens = strtok(NULL, " "); }; } |
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <string.h> #define MAX_SIZE 100 void strnins(char* s, char* t, int i); void main() { char s[MAX_SIZE] = "Hello"; char t[MAX_SIZE] = "A"; strnins(s, t, 2); printf("%s", s); } void strnins (char*s,char* t, int i) { // 스트링 s의 i번째 위치에 스트링 t를 삽입 char string[MAX_SIZE], *temp = string; if (i < 0 && i > strlen(s)) { fprintf(stderr, "Position is out of bounds\n"); exit(1); } if (!strlen(s)) strcpy(s,t); else if (strlen(t)) { strcat(t, s+i); // Allo // printf("%s\n", s+i); strcpy(s + i, t); } } |
문제 : Hello라는 문자열에 홀수 번째 인덱스에다가 띄어쓰기를 삽입
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <string.h> #define MAX_SIZE 100 void strnins(char* s, char* t, int i); void main() { // 문제 : Hello라는 문자열에 홀수 번째 인덱스에다가 띄어쓰기를 삽입 char s[MAX_SIZE] = "Hello"; char t[MAX_SIZE] = " "; int len = strlen(s); for (int i = 1; i <strlen(s)*2; i+=2) { strnins(s, t, 2); strcpy(t, " "); } printf("%s", s); } |
아래와 같이 나오도록 코드를 작성
I Love You.
.I Love You
u.I Love Yo
ou.I Love Y
You.I Love
You.I Love
e You.I Lov
ve You.I Lo
ove You.I L
Love You.I
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <string.h> #define MAX_SIZE 100 void main() { char tempStr[MAX_SIZE]; int i, j = 0; char tempChar = "\n"; printf("문자열을 입력하세요 >> "); gets(tempStr); for(i = 0; i < strlen(tempStr)-1; i++) { printf("%s\n", tempStr); tempChar = tempStr[strlen(tempStr) -1]; for(j = strlen(tempStr)-1; j >0; j--){ tempStr[j] = tempStr[j-1]; } tempStr[0] = tempChar; } } |
// 원하는 문자 부터 끝까지 출력
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <string.h> #define MAX_SIZE 100 // 원하는 문자 부터 끝까지 출력 void substr (int s, int e, char* str); void main() { char str[MAX_SIZE] = "Hello"; char findStr[MAX_SIZE]; int starCharldx = 0; int count = 0; substr(1, 3, str); // 여기 3 자리에 숫자를 넣어 몇번째 문자열 부터 출력할건지 결정 // 문자열 : "Hello" 인덱스 : 01234 s = 1, e = 3 이라면 ell로 서브스트링 된다 // } void substr(int s, int e, char* str) { char temp[MAX_SIZE]; strncpy(temp, str + s, e - s + 1); temp [e - s + 1] = 0; printf("%s\n", temp); } |
#include <stdio.h> #include <string.h> #define MAX_SIZE 10000 #define TRUE 1 #define FALSE 0 //int substr(int s, int e, char* str, char* findStr); void substr(int s, int e, char* str); void main() { char str[MAX_SIZE] = "Hello"; char findStr[MAX_SIZE]; int startCharIdx = 0; int count = 0; } void substr(int s, int e, char* str) { char temp[MAX_SIZE]; strncpy(temp, str + s, e - s + 1); temp[e - s + 1] = 0; printf("%s\n", temp); } |
'자료구조' 카테고리의 다른 글
자료구조 ( 실습 1 ) (0) | 2021.10.17 |
---|