编写一个函数求将一个整数转换成数字字符串 C语言 10

编写一个函数将一个整数的各位数提取出来,并将其转换成数字字符串,在主函数中输出该字符串,不用指针,用简单点的C语言。... 编写一个函数将一个整数的各位数提取出来,并将其转换成数字字符串,在主函数中输出该字符串,不用指针,用简单点的C语言。 展开
 我来答
theratlater
2012-12-16 · 超过20用户采纳过TA的回答
知道答主
回答量:61
采纳率:0%
帮助的人:53.6万
展开全部
仅供参考 没有把数字按字符串输出 只是效果差不多
#include<stdio.h>
void main()
{int p[5];
int x,i,j;
printf("请输入1—60000之间的数");
scanf("%d",&x);
if(x<60000&&x>0)
{
for( i=0;i<5;i++)//提取每一位
{j=i;//记录当前下标
if(x!=0)
{p[i]=x%10;
x=x/10; }
else break;
}
//如果输入数字为五位,
if(j==4)
{
for(i=j;i>=0;i--)
printf("%d",p[i]);
}
//输入数字小于五位时,j要减1,因为for还没结束而i+1,又因为j=i;所以p[i]上没有值
else
{for(i=j-1;i>=0;i--)
printf("%d",p[i]);}
}
else
printf("输入有误");
}
百度网友7b90343
2012-12-16
知道答主
回答量:23
采纳率:0%
帮助的人:16.4万
展开全部
方法一:
将字符串格式化为字符串
int num;
string str;
str.format("%d",num);
方法二
利用求余求出各位上的数字
scanf(%d,&number)//已三位数为例
int x1,x2,x3;
x1=number/100; //百位数
x2=(number/10)%10; //十位数
x3=number%10; //个位数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
M_ountainguan
2012-12-16
知道答主
回答量:51
采纳率:0%
帮助的人:16.1万
展开全部
如果可以确定位数会好做一点
追问
位数不确定
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
veket的小号
2012-12-16 · TA获得超过3371个赞
知道大有可为答主
回答量:3762
采纳率:0%
帮助的人:3999万
展开全部
/////////////////////////////////////////
// C-Free 4.1
// MinGW 3.4.5
// veket的小号
/////////////////////////////////////////
#include <stdio.h>
void inttostr(int x, char s[]);
void reverseorder(char s[], int last);
int main()
{
char str[100] = "";
int n;
scanf("%d", &n);
inttostr(n, str);
printf("%s\n", str);
getchar();
return 0;
}
void inttostr(int x, char s[])
{
int i = 0;
int j;
while(x)
{
s[i] = x%10 + '0';
x /= 10;
i++;
}
s[i] = '\0';
reverseorder(s, i-1);
}
void reverseorder(char s[], int last)
{
int i = 0;
int j = last;
char tmp;
while(i<j)
{
tmp = s[i];
s[i] = s[j];
s[j] = tmp;
i++;
j--;
}
}
追问
char str[100] = "";

是什么意思啊
追答
str[0] = '\0';
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式