본문 바로가기

C언어

C언어 과제 10 1. 잘못된 부분을 찾아서 고치고, 이유를 설명하세요. 1) int num = 128; char* pNum = # printf(“%d”, *pNum); int num = 128; unsigned char* pNum = (unsigned char*)# printf(“%d”, *pNum); num은 int형변수이기 때문에 캐스팅을 해주기위해 (unsigned char*)를 입력해준다. int형은 128(4byte)은 char(2byte)에 대입시켜주면 -128이 되기 때문에 정수형으로 바꿔주기위해 포인트변수앞에 unsigned를 입력해준다. 2) char* pStr = “Control”; printf(“%s \n”, *pStr); 2. char형 변수 ch1과 ch2의 데이터를 서로 바꾸는 s.. 더보기
C언어 과제 09 1. 10진수 0부터 16까지의 정수를 8진수로 출력합니다. 출력에는 10진수와 8진수의 대응관계를 반드시 포함시킵니다. printf함수의 %o플래그를 사용할 수 없습니다. 출력) 10진수 8진수 ------------------- 0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 10 9 11 10 12 11 13 12 14 13 15 14 16 15 17 16 20 #include int main() { int dec=0; int oct=0; int count; int mok; int nmg; fprintf(stdout, "10진수\t8진수\n"); fprintf(stdout, "=============\n"); for(count=0; 16>=count; count++) { mok=coun.. 더보기
C언어 과제 08 1. 난수를 발생하는 rand 함수를 활용하여 주사위를 10번 던졌을 때 주사위 값을 출력하시오. (주사위 값 : 1~6) 출력) dice value : 5 dice value : 2 dice value : 1 ... dice value : 1 #include int main() { int cnt; srand((unsigned)time(NULL)); for(cnt=0; 6>cnt; cnt++) { printf("dice value : %d\n", (rand()%6)+1); } return 0; } 2. 초 입력시 분과 초로 변환하는 프로그램을 작성하세요. 출력) Input Seconds : 100 Output : 1 min 40 sec #include int main() { int time; int mi.. 더보기
2010년 10월 22일 금요일 (함수) 함수의 호출과 실행 /* 두 정수를 입력받아 평균값을 출력하는 프로그램 */ #include float average (int /*n1*/, int/* n2*/); /* 함수 원형(변수는 생략 가능) (반환형) (함수이름) (인자,인수) */ int main() { int num1; int num2; float avrg; fprintf(stdout, "Please enter an integer: "); fscanf(stdin, "%d", &num1); fprintf(stdout, "Please enter an integer: "); fscanf(stdin, "%d", &num2); avrg = average(num1, num2); // average()함수 호출 fprintf(stdout, "The av.. 더보기
2010년 10월 21일 목요일 (포인터변수를 이용한 연산 & 주소값 연산) 포인터변수를 이용한 연산 #include int main() { int i=3, *ip=&i; // 포인터변수ip에 변수i의 주소값을 넣음 printf("%d\n", *ip); // 포인터변수ip가 가리키는 변수값 출력 (3) i=*ip+25; // 변수i에 포인터변수ip가 가리키는 변수값+25를 함(3+25) printf("%d\n", i); // 출력결과 28 return 0; } 3 28 출력값을 보면 3+25가 실행되었다는 것을 알수있다. 즉 포인터변수 ip가 가리키고있는 변수i의 값 3과 25를 덧셈을 한것이다.(i=i+25와 같음) 주소 값의 연산 #include int main() { short snum=5, *sp=&snum; float fnum=2.3f, *fp=&fnum; printf(.. 더보기