| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1210 人关注过本帖
标题:数字转字符串问题
只看楼主 加入收藏
zheng87266
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2016-10-22
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:10 
数字转字符串问题
假设定义一个变量X,经过一系列变换后X=12231,然后定义一个字符型指针*p,怎样让p[]={"12231"}?就是指怎样printf("%s",*p)结果是12231?求指点
搜索更多相关主题的帖子: 字符串 
2016-12-01 21:24
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:0 
求X的变量类型~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-12-01 21:32
zheng87266
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2016-10-22
收藏
得分:0 
回复 2楼 九转星河
int类型
2016-12-01 21:34
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:20 
#include <stdio.h>
main()
{
    char buf[256];
    char *p=buf;
    int X=12231;
    sprintf(p, "%d", X);
    printf("%s", p);
}
收到的鲜花
  • 九转星河2016-12-01 21:55 送鲜花  5朵   附言:我很赞同
2016-12-01 21:44
zheng87266
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2016-10-22
收藏
得分:0 
回复 4楼 吹水佬
buf是什么?输出的是2屯妄?齇?锬啊
2016-12-01 21:51
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
以下是引用zheng87266在2016-12-1 21:51:09的发言:

buf是什么?输出的是2屯妄?齇?锬啊

看看你的代码?
2016-12-01 21:55
zheng87266
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2016-10-22
收藏
得分:0 
回复 6楼 吹水佬
#include<stdio.h>
#include<malloc.h>
#include<string.h>
#include<math.h>

char sum(char *p1,char *p2)
{
    int n1,n2,n3,a=0,b=0,i,j,s1=0,s2=0;
    n1=strlen(p1);
    n2=strlen(p2);
    n3=((n1>n2)?n1:n2)+2;
    char *s=(char *)malloc(n3);
    for(i=0;i<n1;i++)
    {
    switch(p1[i])
    {
    case '0':a=0;break;
    case '1':a=1;break;
    case '2':a=2;break;
    case '3':a=3;break;
    case '4':a=4;break;
    case '5':a=5;break;
    case '6':a=6;break;
    case '7':a=7;break;
    case '8':a=8;break;
    case '9':a=9;break;
    }
    double y1=(double)(n1-1-i);
    s1=s1+a*pow(10.0,y1);
    }
    for(j=0;j<n2;j++)
    {
    switch(p2[j])
    {
    case '0':b=0;break;
    case '1':b=1;break;
    case '2':b=2;break;
    case '3':b=3;break;
    case '4':b=4;break;
    case '5':b=5;break;
    case '6':b=6;break;
    case '7':b=7;break;
    case '8':b=8;break;
    case '9':b=9;break;
    }
    double y2=(double)(n2-1-j);
    s2=s2+b*pow(10.0,y2);
    }
    sprintf(s,"%d",s2+s1);
    return *s;
}

int main()
{
    int n1,n2;
    printf("请输入数组1长度:");
    scanf("%d",&n1);
    printf("请输入数组2长度:");
    scanf("%d",&n2);
    int n3=((n1>n2)?n1:n2)+1;
    char *p1=(char *)malloc(n1);
    char *p2=(char *)malloc(n2);
    char *s=(char *)malloc(n3);
    printf("请输入数组1:");
    scanf("%s",p1);
    printf("请输入数组2:");
    scanf("%s",p2);
    *s=sum(p1,p2);
    printf("%s",s);
    return 0;
}
2016-12-01 21:56
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
偷懒没细测,试改改。
char sum(char *p1,char *p2)
{
    ........
    sprintf(s,"%d",s2+s1);
    return s;
}

int main()
{
    .......
    //char *s=(char *)malloc(n3);
    .......
    char *s=sum(p1,p2);
    printf("%s",s);
    free(s);
    free(p1);
    free(p2);
    return 0;
}
2016-12-01 22:04
zheng87266
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2016-10-22
收藏
得分:0 
回复 8楼 吹水佬
free是啥
2016-12-01 22:04
zheng87266
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2016-10-22
收藏
得分:0 
回复 8楼 吹水佬
谢谢,成功了
2016-12-01 22:06
快速回复:数字转字符串问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017014 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved