개발노트(150)
-
C언어 사용자정의함수와 포인터를 사용해서 내림차순
사용자 정의 함수는 void main이 아닌 곳에 정의해줍시다.필요한 사용자 정의 함수는 입력, 출력, 순서변환 함수이기때문에 각각 void InputData()void Display()void DecendingOrder()라고 정의 해주겠습니다. 그리고 배열과 포인터를 사용해서 값들을 전달해주기위해 void main(void)에 배열과 포인터를 정의해줍니다. {int n[5]; //배열만들기int *ptr; //포인터만들기ptr = &n[0] //포인터를 배열과 연결} 이제 만들어진 포인터를 각각의 함수들과도 연결시켜야 합니다. void InputData(int* ptr)void Display(int* ptr)void DecendingOrder(int* ptr) 이렇게하면 포인터 연결이 끝났습니다.이제..
2018.10.12 -
C언어 문자열배열 포인터로 역순출력
배열과 포인터 선언 및 연결char s1[256];char *p;p = s1; 문자열 입력gets(s1); 문자열 역순 출력for (int i = strlen(p) - 1; i > -1; i--) { printf("%c", p[i]);}위 코드에서 strlen(p)를 사용하여 문자열의 길이를 구한 후, i를 문자열의 마지막 인덱스에서 시작하여 i--를 통해 역순으로 출력합니다.for 루프에서 strlen(p) - 1을 사용하는 이유는 문자열의 마지막 인덱스가 문자열 길이보다 1 작기 때문입니다. 예를 들어, 길이가 5인 문자열의 마지막 인덱스는 4입니다.i > -1 조건은 인덱스가 0까지 포함되도록 하기 위함입니다.printf("%c", p[i])를 통해 인덱스 i에 해당하는 문자를 출력합니다. ..
2018.10.04 -
C언어 포인터로 문자배열을 복사하기
우선 문자열 배열을 만들어야겠죠? char s1{256]char s2{256] s1배열을 s2로 복사하기위해 포인터를 만들어줍니다. char *from, *to; from과 to라는 포인터를 만들어줬습니다.다음으로 할 일은 포인터와 문자열을 연결시켜주는 일입니다. from = s1;to = s2; 이런식으로 하면 각각의 포인터들이 배열에 연결됩니다. 문자열을 입력받을껀데 gets함수를 사용해서 입력받습니다. gets_s(s1); 이렇게 하면 엔터를 칠 때까지 문자열들이 s1배열에 모두 들어갑니다. 마지막으로 복사만 해주면 끝납니다. while 문을 써서 복사를 해봅시다. while(*from !='\0') //*from 과 '\0' 가 다르면 참, 그렇지 않으면 거짓 즉 NULL까지 가면 while문 종..
2018.10.04 -
C언어 10진수를 2진수로 바꾸기
10진수를 2진수로 바꾸기 위해바꾸는 공식을 알아봅시다. 그림에 나와있듯이10진수를 2로 나눕니다.계속 나눠서 나머지는 배열에 넣어서 역순으로 출력하면 2진수가 나오게 됩니다. int num = 0; 나누어질 수를 넣어두는 변수입니다.int numarr[10]; 나누어진 나머지가 들어갈 배열입니다.int position = 0; 역순출력을 위해 필요합니다. 12345678910111213141516171819202122232425262728#include void main() { //int num = 0; int numarr[10]; int position = 0; printf("10진수 정수를 입력하세요."); scanf_s("%d", &num); while (1) { numarr[position] =..
2018.09.29 -
C언어 문자열배열
문자열배열을 사용해서 소문자로 입력된 문자열을 대문자로 변경하고 출력하고배열을 역순으로 출력하는 프로그램을 만들어봤습니다. 문자열배열을 만들어줍시다.넉넉하게 char str[100]; 문자열 입력에는gets 함수를 사용합니다.저번에 ROT13에서도 사용했듯이 한글자씩 입력받기 위함입니다.1 gets_s(str);cs 이렇게 문자열배열을 만들어주고소문자를 대문자로 만들기위해 if문을 만들어줍시다. 123456789if (str[i] >= 'a' && str[i] = 0; i--) { printf("%c", str[i]); }Colored by Color Scriptercs strlen() 함수를 쓰기 위해서는 #include 를 사용해서 헤더를 불러와야합니다. 전체코드 12345678910111213141..
2018.09.29 -
C언어 배열을 사용해서 최대.최소값, 총점, 평균 구하기
배열을 사용하기 전에 배열을 먼저 만들어줍시다.5개의 수만 입력 받을꺼라 int num[5]; 이라고 배열을 만들어 줬습니다. 총점과 평균을 구하려면 모든 값의 합이 들어있는 변수가 필요합니다. int temp = 0; 이라고 변수를 만들었습니다. int i는 for문을 돌리기 위해 필요합니다. 그리고 최대값과 최소값을 구하려면 int min , int max 가 필요한데배열값과 직접 비교해주기 때문에 아래와 같이 값을 넣어줍니다. int max = num[0];int min= num[0]; 이렇게 해도 상관없다고 하는데..최소값을 구하는데 오류가 생겨서 int max = num[0];int min = 10; 이렇게 변수를 만들었습니다.max 값도 배열말고 정수로 정의해도 값은 잘 나옵니다. 유효점수는 ..
2018.09.29