3. 과제 ¶
[PNG image (16.72 KB)]
Problem?
- 단, 3~9 말고 3~11
 
- 이거 하고
 
- 할 수 있으면 배열을 통한 접근과 포인터를 이용한 접근 둘 다 해볼 것
 
- 그리고 정수 대신에 주소값을 출력하는 것도 해볼 것
 - 이를 통해 주소값이 어떻게 배치되어 있는 지를 알 수 있음
 
 
- 이를 통해 주소값이 어떻게 배치되어 있는 지를 알 수 있음
- 달팽이를 출력하는 부분은 꼭 함수로 만들 것.
 
 
4.1. 최필립 ¶
*아는 다른학교 컴공애가 아이디어 제공을 안쓰럽다고 조큼 도와줌
*주소값 출력은 그냥 printf 뒤에 &만
#include <stdio.h>
int main()
{
while(1)
{
num=size*size;
k=0;
temp=size;
i=1;
j=size+1;
while(1)
{
move=-move;
}
show();
}			{
printf("사이즈를 입력하세요 : ");
scanf("%d",&size);
if(size>2 && size<12)
}scanf("%d",&size);
if(size>2 && size<12)
break;
printf("3에서 11사이만\n");num=size*size;
k=0;
temp=size;
i=1;
j=size+1;
while(1)
{
size--;
move=-move;
}
show();
void show()
{
}
{
}
4.2. 임기찬 ¶
#include <stdio.h>
void draw(int n, int arr[][11]);		//arr 배열에 n x n 달팽이 모양 입력하는 함수
void print(int n, int arr[][11]);		//arr 배열 출력하는 함수
int main(){
	int n;						//n : 입력받는 숫자
	int z = 0;					 //z : 입력받을때 예외 처리 위해
	int arr[11][11] = { { 0, }, };			// 11 x 11 배열 생성
	while (z == 0){
		printf("n(3~11) : ");
		z = scanf("%d", &n);
		if (z == 0 || n > 11 || n < 3) {
			printf("잘못입력하셨습니다. \n");
			fflush(stdin);
			z = 0;
		}
	}
	draw(n, arr);		//arr 배열에 n x n 달팽이 모양 입력
	print(n, arr);		//arr 배열 출력
	return 0;
}
void draw(int n, int arr[][11]){			//arr 배열에 n x n 달팽이 모양 입력하는 함수
	int i = 0, j = 0, num = 1, k = 0;	//i = 행, j = 열, num = 입력할 숫자
	for (; num <= n * n; k++) {
		for (; j < n - k; j++, num++) {
			arr[i][j] = num;
		}
		for (i++, j--; i < n - k; i++, num++) {
			arr[i][j] = num;
		}
		for (i--, j--; j >= k; j--, num++) {
			arr[i][j] = num;
		}
		for (i--, j++; i > k; i--, num++) {
			arr[i][j] = num;
		}
		i++, j++;
	}
	return;
}
void print(int n, int arr[][11]){		//arr 배열 출력하는 함수
	int i, j;				//i = 행, j = 열
	for (i = 0; i < n; i++){
		for (j = 0; j < n; j++){
			printf("%3d ", arr[i][j]);
		}
		printf("\n");
	}
	return;
}
4.3. 홍성현 ¶
#include <stdio.h>
#define SIZE 10
#define SIZE 10
void Spin(int n)
{
{
int i,j,k,AllCount,x,y,num=1 ;
float SomeCount =1.0;
if(n%2==1)
{
if(AllCount ==0)
if(AllCount ==0)
if(AllCount ==0)
if(AllCount ==0)
}float SomeCount =1.0;
if(n%2==1)
k=n/2;
elsek=n/2 -1;
x=0,y=0;
while(1)x=0,y=0;
{
if(AllCount ==0)
break;
else if(AllCount ==1)if(AllCount ==0)
break;
else if(AllCount ==1)SomeCount--;
if(AllCount ==0)
break;
else if(AllCount ==1)if(AllCount ==0)
break;
else if(AllCount ==1)SomeCount--;
}










.png)


