U E D R , A S I H C RSS

새싹교실/2014/배반/6주차 (rev. 1.11)

새싹교실/2014/배반/6주차


1. 개요

2. 내용

  • 포인터 오세상에올것이왔어
  • 망했다고 합니다. 이해하기 너무 힘든 듯.
  • 하지만 이번 주가 끝이 아니라고 합니다.후후후후후후후

3. 과제

캡처.PNG
[PNG image (16.72 KB)]

Problem?
이 과제를 김승태교수님에게 바칩니다

  • 단, 3~9 말고 3~11
  • 이거 하고
  • 할 수 있으면 배열을 통한 접근과 포인터를 이용한 접근 둘 다 해볼 것
  • 그리고 정수 대신에 주소값을 출력하는 것도 해볼 것
    • 이를 통해 주소값이 어떻게 배치되어 있는 지를 알 수 있음
  • 달팽이를 출력하는 부분은 꼭 함수로 만들 것.

4. 제출 내용


4.1. 최필립


*아는 다른학교 컴공애가 아이디어 제공을 안쓰럽다고 조큼 도와줌

*주소값 출력은 그냥 printf 뒤에 &만

#include <stdio.h>


void show();
int i,j;
int num=1,k,move=-1, temp, l,m;
int size;
int array1111={0,};

int main()

{

while(1)
{
printf("사이즈를 입력하세요 : ");
scanf("%d",&size);
if(size>1 && size<12)
break;
printf("1에서 11사이만\n");
}

num=size*size;
k=0;
temp=size;
i=1;
j=size+1;
while(1)
{

for(k=0;k
{
j=j+move;
arrayij=num;
num--;
}

size--;



move=-move;

for(k=0;k
{
i=i+move;
arrayij=num;
num--;
}
if(size==0)
break;
}
show();
}

void show()
{
for(m=1;m<=temp;m++)
{
for(l=1;l<=temp;l++)
{

printf(" %3d",arrayml);
}

printf("\n");
}


}


4.2. 임기찬


4.3. 홍성현


#include <stdio.h>
#define SIZE 10

int MAPSIZESIZE = {0};
void PrintMap(int);
void Spin(int);

int main()
{
int n;
printf("n을 입력해주세요");
scanf("%d",&n);
Spin(n);
PrintMap(n);
return 0;
}

void PrintMap(int n)
{
int i,j;
i=j=n;

for(i = 0 ; i < n ; i++)
{
for(j = 0 ; j < n ; j++)
{
printf("%d",MAPij);
}
printf("\n");
}
}

void Spin(int n)
{
int i,j,k,AllCount,x,y,num=1 ;
float SomeCount =1.0;

if(n%2==1)
k=n/2;
else
k=n/2 -1;

x=0,y=0;
while(1)
{
//오른쪽
for(i=0 ; i < (int)SomeCount ;)
{
MAPxy=num;
y++;
num++;
}
SomeCount+=0.5;
AllCount--;
y--;
if(AllCount ==0)
break;
else if(AllCount ==1)
SomeCount--;

//아래쪽
for(i=0 ; i < (int)SomeCount ;)
{
MAPxy=num;
x++;
num++;
}
SomeCount+=0.5;
AllCount--;
x--;
if(AllCount ==0)
break;
else if(AllCount ==1)
SomeCount--;

//왼쪽
for(i=0 ; i < (int)SomeCount ;)
{
MAPxy=num;
y--;
num++;
}
SomeCount+=0.5;
AllCount--;
y++;
if(AllCount ==0)
break;
else if(AllCount ==1)
SomeCount--;

//위쪽
for(i=0 ; i < (int)SomeCount ;)
{
MAPxy=num;
x--;
num++;
}
SomeCount+=0.5;
AllCount--;
x++;
if(AllCount ==0)
break;
else if(AllCount ==1)
SomeCount--;
}
}




Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:29:51
Processing time 0.0313 sec