코딩
-
두 문자열 비교코딩/C언어 2019. 4. 4. 15:25
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 int stringEqual(const char *s1, const char *s2) { int i; for (i = 0; *(s1 + i) != '\0'; i++) { if (*(s2 + i) == '\0') return 1; if (*(s1 + i) != *(s2 + i)) return 1; } if (*(s2 + i) != '\0') return 1; return 0; } int main(void) { char string1[50]; char string2[50]; printf("Enter the first string..
-
문자열 복사(포인터)코딩/C언어 2019. 4. 4. 15:17
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 #include int stringLength(char *s) { int i; for (i = 0; *(s + i) != '\0'; i++); return i; } void stringCopy(char *s1, const char *s2)// *s2는 바뀌지않으므로 const를 붙일 수 있다 { while (*s2) { *s1 = *s2; s1++; s2++; } *s1 = '\0'; } int main(void) { char copied[500]; char data1[] = "abcde"; char data2[] = "ABCDEFGH"; stringCopy(c..
-
난수의 합(포인터, 배열)코딩/C언어 2019. 4. 1. 16:32
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 #include void generateData(); void printData(); int totalData(); static int data[3][10]; // 계산 수행에 사용할 정적 변수 void main() { srand(200); // random 값 출력에 사용하는 함수. Seed 값을 부여 generateData(); printData(); printf("전체의 합은: %d\n", totalData()); } void generateData() { int *p = &data..
-
난수의 합 (포인터)코딩/C언어 2019. 4. 1. 16:29
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 42 43 44 45 46 47 48 49 #include #include void generateData(); void printData(); int totalData(); int data[10]; // 계산 수행에 사용할 전역 변수 int main(void) { srand(200); // random 값 출력에 사용하는 함수. Seed 값을 부여 generateData(); printf("발생된 10개의 난수:\n"); printData(); printf("10개 난수의 합 = %d \n", tota..
-
포인터 연습4(배열)코딩/C언어 2019. 3. 21. 14:25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 #include int main(void) { int *pi; int arr1[] = { 10, 20, 30, 40, 50 }; int arr2[][3] = { { 1, 2, 3 },{ 10, 20, 30 },{ 100, 200, 300 },{ 1000, 2000, 3000 } }; int i, sum; sum = 0; pi = arr1; // pi = &arr1[0]; for (i = 0; i
-
포인터 연습3코딩/C언어 2019. 3. 21. 14:20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #include void main(void) { int n[] = { -1, 1, 2, 3, 4 }; int *p1 = n; int *p2 = p1; printf("%d\n", n[0]); printf("%d\n", (*p1)++); printf("%d\n", n[0]); printf("%d\n", *p2++); // *(간접지정 연산)과 ++은 우선순위(p69)가 같다. 이때 결합방향이 이므로 오른 쪽에 // 위치한 ++를 먼저 수행하고 그다음 *를 수행한다. 즉 *(p2++)와 같다. printf("%d\n", *p2); printf("%d\n", *++p1); printf("%d\n", *p1); } Colored by ..
-
포인터 연습2코딩/C언어 2019. 3. 21. 14:18
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 42 43 44 45 46 47 #include int main(void) { int x[] = { 0, 0, 1, 2, 3 }; char c[] = "BBCDE"; double f = 2.3; int i, sum = 0; // 가) 추가 int *px; char *pc; double *pd; px = x; pc = c; pd = &f; printf("가-1) %d %c %.1f\n", x[0], c[0], f); printf("가-2) %d %c %.1f\n", *px, *pc, *pd); // 나) ..