#include<stdio.h>
#include "stdlib.h"
char *aq(char *ch,int a)
{
int i,a_copy,j;
i = 0;
j = 0;
a_copy = a; //这里因为下面要算i的值,所以先把a的值复制下
while(a_copy) //这里是算出i的值,因为有了i的值,我们才能往字符数组里存字符~~
{
i++;
a_copy=a_copy/10;
}
j = 2*i; //这是存字符时的最后一位
if (2*i-1<30)
{
while(a)
{
ch[2*i-1]=' '; //最后一位开始赋值,先是空格,然后是数字
ch[2*i-2]=a%10+'0';
i--;
a/=10;
}
for (i=j;i<30;i++) //这里是防止后面没用到的数组位出乱码,所以置成空
{
ch[i]=NULL;
}
}
return(ch);
}
void main()
{
int a,i;
char *ch;
ch = (char *)malloc(30*sizeof(char)); //这里是开辟一个能放30个字节的char指针数组
scanf("%d",&a);
ch=aq(ch,a); //这里完成字符的分割工作
for (i = 0; i < 10 ; i++)
{
printf("%c",ch[i]);
}
}
不好意思,lz,中午吃完饭,然后有点事,。。。没上论坛,希望能给予你一定的理解~~呵呵~~
#include "stdlib.h"
char *aq(char *ch,int a)
{
int i,a_copy,j;
i = 0;
j = 0;
a_copy = a; //这里因为下面要算i的值,所以先把a的值复制下
while(a_copy) //这里是算出i的值,因为有了i的值,我们才能往字符数组里存字符~~
{
i++;
a_copy=a_copy/10;
}
j = 2*i; //这是存字符时的最后一位
if (2*i-1<30)
{
while(a)
{
ch[2*i-1]=' '; //最后一位开始赋值,先是空格,然后是数字
ch[2*i-2]=a%10+'0';
i--;
a/=10;
}
for (i=j;i<30;i++) //这里是防止后面没用到的数组位出乱码,所以置成空
{
ch[i]=NULL;
}
}
return(ch);
}
void main()
{
int a,i;
char *ch;
ch = (char *)malloc(30*sizeof(char)); //这里是开辟一个能放30个字节的char指针数组
scanf("%d",&a);
ch=aq(ch,a); //这里完成字符的分割工作
for (i = 0; i < 10 ; i++)
{
printf("%c",ch[i]);
}
}
不好意思,lz,中午吃完饭,然后有点事,。。。没上论坛,希望能给予你一定的理解~~呵呵~~