将一个整数转换为字符串

举报
悦来客栈的老板 发表于 2020/12/30 01:04:57 2020/12/30
【摘要】 #include <stdio.h>#include <string.h>#include <malloc.h> void reverse(char *str){ char temp; char *last_char; for (last_char = str; *last_char != '\0'; last_char++) ; l...

  
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <malloc.h>
  4. void reverse(char *str)
  5. {
  6. char temp;
  7. char *last_char;
  8. for (last_char = str; *last_char != '\0'; last_char++)
  9. ;
  10. last_char--;
  11. while (str < last_char)
  12. {
  13. temp = *str;
  14. *str++ = *last_char;
  15. *last_char-- = temp;
  16. }
  17. }
  18. char* itooa(int num)
  19. {
  20. int len = 0;
  21. char *s = NULL;
  22. int i=0,j;
  23. int sum = num;
  24. while (sum != 0)
  25. {
  26. sum /= 10;
  27. len++;
  28. }
  29. s = (char *)malloc(len+1);
  30. while(num != 0)
  31. {
  32. j = num % 10;
  33. num /= 10;
  34. s[i] = j + '0';
  35. i++;
  36. }
  37. s[i] = '\0';
  38. reverse(s);
  39. return s;
  40. }
  41. int main()
  42. {
  43. int i;
  44. char *str;
  45. printf("请输入一个整数:");
  46. scanf("%d",&i);
  47. str = itooa(i);
  48. printf("您输入的整数数转换为字符串是:%s\n",str);
  49. reverse(str);
  50. printf("将该字符串反转后的字符串是:%s\n",str);
  51. return 0;
  52. }

文章来源: blog.csdn.net,作者:悦来客栈的老板,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/qq523176585/article/details/11760683

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。