#include<stdio.h>
#include<string.h>
#define MAXLINE 1000
void itob(int n,char s[],int b);
void reverse(char s[]);
int main(void)
{
int number,base;
char str[MAXLINE];
scanf("%d %d", &number, &base);
for(number = 0 ; number < 30 ; number++)
{
itob(number,str,base);
printf("%s\n", str);
}
return 0;
}
void itob(int n,char s[],int b)
{
int i,j,sign;
if((sign=n)<0)
n = -n;
i = 0;
do
{
j = n % b;
s[i++] = (j <= 9)? j+'0' : j+'A'-10;
}while((n/=b)>0);
if(sign < 0)
s[i++]='-';
s[i]='\0';
reverse(s);
}
void reverse(char s[])
{
int i,j,c;
for(i=0,j=strlen(s)-1;i<j;i++,j--){
c=s[i];
s[i]=s[j];
s[j]=c;
}
}
메인함수에 있는 포문에서 number의 값을 30으로 설정해주면 예제와 같은 결과가 나오기는 하는데... scanf로 제가 입력하는 값이 30의 위치에 오게 하고 싶은데 어떻게 해야 할지 모르겠습니다.. 도와주세요 ㅜㅜ