第1个回答 2009-04-04
给,已经编译运行确认:
#include<conio.h>
#include<stdio.h>
char s[20]={NULL};//用以存放字符型输出结果的字符数组
void inttostring(int n)//转换用的函数
{
int i=0,j;
char temp;
while(n)//先将整数逆序保存进数组
{
s[i]=n%10+'0';//将十进制数字转换成字符保存
n=n/10;
i++;
}
for(j=i-1;j>=i/2;j--)//再将逆序的字符结果再逆转一次,得到正确结果
{
temp=s[j];
s[j]=s[i-j-1];
s[i-j-1]=temp;
}
}
int main()
{
int i;
printf("please input a number: ");
scanf("%d",&i);
inttostring(i);
printf("String is: %s",s);
getch();
return 0;
}本回答被提问者采纳
第2个回答 2009-04-04
最简单的方法就是用sprintf函数,直接把整型变量输出到一个字符串中(当然就可以用字符数组),复杂一点就是LS说的那样把一个整数每一位取出,放到字符数组中,代码我就不写了,参考LS的。
简单示例sprintf函数:
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char str[10];
int i = 12345;
sprintf(str,"%d",i);
printf("str = %s\n",str);
return 0;
}
第3个回答 2009-04-04
你是自学的?那就自己动手试一下吧,我也是自学吧。不过是因为自己进度比老师快罢了。
我说个思路吧,就不给你学程序段了。最简单的方法就是“打散输出”,比如135这个整数,你可以把它的百位、十位、各位分别取出,用字符数组存放,再用for循环输出。
你先动手自己试一下,我的经验就是自己动手永远比老师告诉你现成的程序强!
第4个回答 2009-04-04
不用指针怎么行呢?
下面这个程序供参考
#include "stdio.h"
#include "stdlib.h"
void main()
{
int b;
char str[10];
printf("Please input an int:\n");
scanf("%d",&b);
itoa(b,str,10);///这个函数为stdlib.h库中的库函数
printf("%s",str);
}