牛仔裤的英语怎么说:C高手进一下

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/07 12:21:23
我想对一串数字,比如任意输入一个INT型数a,比如a=434345324356,我想定义一个数组p[5][5],使p[0][0]=4,p[0][1]=3,p[0][2]=4,这样依次下去,请问该怎么做?
要是是CHAR的话,我会做,但是这个一串数字我就不会了,晕!
一楼,你回答中 itoa() 函数,我在你网站上搜索不到itoa()字符!能解释一下这个函数的用法吗?对了,明天给你加分!偶今天11点宿舍断线!
二楼,你把我的题目意思理解错了,我们假设就令a已经为434345324356的情况下,不是等你SCANF或GETCHAR的时候,但还是要说声谢谢!
目前还没有我满意的答案,请大家再努力!我会给追加分!
7楼,谢谢你的辛苦,但是不对!

#define M 5
#define N 5
main()
{
int p[M][N];
int c;
int i = 0;
int j = 0;

while((c=getchar())!='\n') //以回车结束
{
if (c>='0'&&c<='9')
{
i += j/N; //这两行是计算行列下标
j %= N;
p[i][j++]=c-'0'; //将字符转为数字
}
}
}

为什么用二维数组?

itoa是将给定的整数转换成字符串。

int i,j,k,a,p[5][5];
char str[100];
k=0;
i=0;
j=0;
printf("please enter a:");
scantf("%d",&a);
while(a>0)
{
str[k]=a%10;
k++;
a=a/10;
}
while(str!=0)
{p[i][j++]=*str;
if(j>=5)
{i++;
j=0;
}
str++;
}

看我的.
int i,j,temp=1;
while (a/temp!=0)temp*=10;
for (i=0;i<5;i++)
for (j=0;j<5;j++)
if(temp>=10)
{ temp/=10;
p[i][j]=a/temp;
a%=temp;
}else p[i][j]=0;