首先声明,我写博客很大程度是为了记录和分享我的编程之路,如果后来人是在百度上面搜到我的文章,动机不是为了知识本身,而是为了应付题目的话,我话摆在这里,借鉴可以,但是一定要转化成自己的知识,不要只抄,然后没弄懂,那还不如直接花钱请人帮你做了,我一直秉持的原则就是,你真不想干某件事,而这件事又在你看来是没有意义的话,倒还不如用钱解决,说白了就是用钱买时间,没有必要在一些对你没有意义的地方花过多时间,倒还不如用这么点时间去做一些更有意义的事情。
众所周知,C语言是一门很基础的入门语言,相对于python这些脚本语言的话,很多地方都会比较麻烦,需要自己手动来编,
但是,这恰恰就是打好编程底子很关键的时候,
高楼大厦如何搭的高还是要看原先的底子打的厚不厚实。
因此,面对这种整型转字符串的要求,虽然用脚本之类的函数可以一步到位,但是为了锻炼自己的能力,我自己还是尝试了编了下相关函数,
下面给出代码
方法1代码语言:javascript复制#include
#include
int mi(int x) 计算10的幂次
{
int i=0,ans=1;
for(i;i { ans=ans*10; } return ans; } int main() { int a=123465; a是要转化的整数 int n=a,count=0; while(a!=0) 求出a的位数count { a=a/10; count++; } int i=0,j=count; char b[count]; for(i;i { b[i]=n/mi(count-1)+'1'-1; n=n%mi(count-1); count--; } printf("%s",b); } 用C语言进行这俩者的转化,不外乎就俩种思路,第一种就是我上面说的这种,先求出整数长度,然后就利用 b [ i ] = n / mi ( count-1 ) + ‘1’ – 1; 从最高位依次取出数字,再转化成字符。 第二种就是先不计算整数长度,直接利用整除求余,倒序取出数字,即倒序存入字符数组,最后再将它们逆序,代码如下: 方法二代码语言:javascript复制#include #include #include char* int_to_char(int a) 转化函数 { char count=0,b[100]; while(a!=0) 逆序存入 { b[count]=a%10+'0'; a=a/10; count++; } char c[100],i,j; i=count-1; j=0; for(j;j { c[j]=b[i]; i--; } c[j]='\0'; return c; } int main() { int a; scanf("%d",&a); char *p=int_to_char(a); printf("%s",p); } 这里我将其结构化,方便之后要用到的时候不用再浪费时间到这上面,下次就可以直接来博客里拿,毕竟不能在重复的简单劳动上浪费精力。 下面介绍第三种方法,也是最无脑的方法,若你是初学者或者我是不推荐你用的,因为这个方法对学习本身帮助不大,后面有的是时间让你接触这方面的知识。 方法三代码语言:javascript复制#include #include int main() { int number1 = 123456; int number2 = -123456; char string[16] = { 0}; itoa(number1,string,10); printf("数字:%d 转换后的字符串为:%s\n",number1,string); itoa(number2,string,10); printf("数字:%d 转换后的字符串为:%s\n",number2,string); return 0; }转载自 https://blog.csdn.net/nanfeibuyi/article/details/80811498 点击这里,可以看到更详细的过程 有没有感觉简单的离谱?就是用了stdlib头文件里面的itoa就轻松实现了,还有很多转化都可以用这个实现,如果感兴趣的话可以去网上查。 itoa的第三个参数是转化成10进制,8进制还是2进制等,看一下代码自己敲一遍应该就能明白的。 如果觉得有帮助,可以关注一下我的公众号,我的公众号主要是将这些文章进行美化加工,以更加精美的方式展现出来,同时记录我大学四年的生活,谢谢你们! 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/180238.html原文链接:https://javaforall.cn