좀 도와 주세요 (이해를 못하겠다고 해서 수정했습니다.)
콩순
질문 제목 :for문 이용한 숫자 출력 프로그램
숫자 출력이 여러개 나오는 걸 막아주세요;질문 내용 :
숫자를 입력합니다. (예 :1 10) 단, 첫번째 숫자는 1~9 까지입니다.
입력하면 1이라는 숫자가10행 10열 안에표현 되는 건데요;
그러니까; 2 5을 입력하면
*****
*
*****
*
***** (세로 5줄, 가로 5줄안에 2가 표현된다는;)
로 출력 되는 건데요;; 2가 표현된다는 게 맞을거에요;
int main()
{
int a,b,g,q;
printf(표현할 숫자를 입력하세요 : );
scanf(%d,&a);
printf(숫자의 범위를 입력하세요 : );
scanf(%d,&b);
for(int q=1;q=b;q++)
{
for(int r=1;r=b;r++)
{
switch(a)
{
case 1 :
if(b%2==1)
{
for(g=1;g=(b/2);g++)
{
printf( );
}
printf(*);
for(g=1;g=(b/2);g++)
{
printf( );
}printf(\n);
}
else
{
for(g=1;g=(b/2-1);++g)
{
printf( );
}
printf(**);
for(g=(b/2+2);g=b;++g)
{
printf( );
}
printf(\n);
}
break;
case 2 :
if(b%2==1)
{
for(g=1;g=b;g++)
{
if(g==1)
{
for(q=1;q=b;q++)
{
printf(*);
}
printf(\n);
}
else if(g(b/2),g1)
{
for(int h=1;h=b;h++)
{
if(h=b-1)
{
printf( );
}
else
{
printf(*);
}
}
printf(\n);
}
else if(g==(b/2)+1)
{
for(q=1;q=b;q++)
{
printf(*);
}
&nbnbsp;printf(\n);
}
else if(gb,g(b/2)+2)
{
for(int h=1;h=b-1;h++)
{
if(h=b-1)
{
printf(*);
}
else
{
printf( );
}
}
printf(\n);
}
else if(g==b)
{
for(q=1;q=b;q++)
{
printf(*);
}
printf(\n);
}
}
printf(\n);
}
else
{
for(g=1;g=(b/2-1);++g)
{
printf( );
}
printf(**);
for(g=(b/2+2);g=b;++g)
{
printf( );
}
printf(\n);
}
break;
case 3 :
printf( );
break;
case 4 :
printf( );
break;
case 5 :
printf( );
break;
case 6 :
printf( );
break;
case 7 :
printf( );
break;
case 8 :
printf( );
break;
case 9 :
printf( );
break;
}
printf(\n);
}
}
return 0;
}
이렇게 했습니다.
그런데 숫자가 나오는건 좋은데; 숫자 1이 10개 표현됩니다.... ㅜ3ㅜ;;
제발 오류좀 알려주세요!!!p.s 이해를 못하겠다고 해서 생각해 보니까 제가 변수 어떻게 된건지 생각 못했군요;;