1번 문제
세 변수를 아래와 같이 설정하여, 변수의 값과 주소를 출력하는 프로그램을 작성하라.
inumber =25
float fnumber = 34.5
char ch ='g'
#include <stdio.h> int main() { int inumber; float fnumber; char ch; inumber =25; fnumber =34.5f; ch = 'g'; printf(" int number는 %d %08x\n", inumber, &inumber); printf(" int fnumber는 %f %08x\n",fnumber, &fnumber); printf(" int number는 %c %08x\n", ch, &ch); return 0; }
![](https://t1.daumcdn.net/cfile/tistory/2303233F514F88FC32)
|
2.위의 세 변수를 가리키는 포인터 변수를 각각 설정하여, 포인터 변수를 이용해서 세 값을 출력하는 프로그램을
작성하라.
#include <stdio.h> int main() { int inumber; float fnumber; char ch; int *ip; float *fp; char *cp;
ip = &inumber; fp = &fnumber; cp = &ch;
inumber =25; fnumber =38.9f; ch = 'g'; printf("%d 주소값 : %08x\n", *ip, ip); printf("%f 주소값 : %08x\n", *fp, fp); printf("%c 주소값 : %08x\n", *cp, cp);
return 0;
}
![](https://t1.daumcdn.net/cfile/tistory/1761BB43514F89BC32)
2. float 형 변수 fnumber를 38.9로 설정한 다음, fnumberdml 각 바이트의 내용을 아스키 코드로 춮력하라.//한번 해볼 것 - 문자로 출력 가능하게 할 수 있을 지.
#include <stdio.h> int main() { int inumber; float fnumber; char ch; int *ip; float *fp; char *cp;
ip = &inumber; fp = &fnumber; cp = &ch;
inumber =25; fnumber =38.9f; ch = 'g'; printf("%d 주소값 : %08x\n", *ip, ip); printf("%f 주소값 : %08x\n", *fp, fp); printf("%c 주소값 : %08x\n", *cp, cp);
return 0;
}
![](https://t1.daumcdn.net/cfile/tistory/1921413E514F8B850D)
|
3.int형의 변수 inumber의 값을 키보드로부터 읽어서 설정한 다음, 포인터 변수를 이용해서 inumber의 값을 두 배로 만들어서 출력하는 프로그램을 작성하라.
#include <stdio.h> int main() { int inumber; float fnumber; char ch; int *ip; float *fp; char *cp; inumber = 25; fnumber = 34.5f; ch ='g'; ip = &inumber; fp = &fnumber; cp = (char*)&cp;
printf("inumber의 값 = "); scanf("%d", &inumber); inumber = inumber*2; printf("inumber의 값 = %d\n", *ip);
return 0; }
![](https://t1.daumcdn.net/cfile/tistory/14222E40514F8C2231)
|
4. 포인터 변수의 저장 공간의 크기를 출력하는 프로그램을 작성하라.
#include <stdio.h> int main() { int inumber; float fnumber; char ch; int *ip; float *fp; char *cp;
ip = &inumber; fp = &fnumber; cp = &ch;
inumber =25; fnumber =38.9f; ch = 'g';
printf("%d\n", sizeof(*ip)); printf("%d\n", sizeof(*cp)); printf("%d\n", sizeof(*fp));
return 0;
}
![](https://t1.daumcdn.net/cfile/tistory/012DC03F514F8C5E01)
|
5.주소값을 저장하는 변수를 ()변수 라고 한다.
답: 포인트
6.포인터 변수가 아무 것도 가리키지 않고 있는 것을 설정할 때는 ()을 넣느다. NUll |