整数拆分c语言,整数拆分c语言代码

dfnjsfkhak 40 0

大家好,今天小编关注到一个比较意思的话题,就是关于整数拆分c语言问题,于是小编就整理了2个相关介绍整数拆分c语言的解答,让我们一起看看吧。

  1. 关于C语言用递归拆分整数?
  2. 如何把一串数字拆分到不同单元格?

关于C语言用递归拆分整数?

将一个整数的各个位分离出来的最简单方法就是模10,取个位数,直到该变为0。

参考代码

整数拆分c语言,整数拆分c语言代码-第1张图片-芜湖力博教育咨询公司
图片来源网络,侵删)
#include <stdio.h>void main(){ int n=0; scanf("%d", &n ); do { printf("%d\n", n%10 ); //每次输出个位 n/=10 ; //缩小10倍,去除原来的个位。 }while(n);}

但这整拆分的特点是从后向前输出每一位数。

如果仅是为了输出,还想正向输出每一位数,则可用递归函数来解决。(也可以实现逆向输出)

参考代码:

整数拆分c语言,整数拆分c语言代码-第2张图片-芜湖力博教育咨询公司
(图片来源网络,侵删)
#include <stdio.h>void split_int( int n ){ if ( n>0 ) { //printf("%d\n", n%10 );//逆向输出,放开这里,关闭下面的printf().即:先输出当前个位,再去高位的数 split_int( n/10 );//先去输出高位的数 printf("%d\n", n%10 ); //再输出当前的个位数 }}void main(){ int n; scanf("%d", &n); split_int(n);}

如果想把分离开的数据存储数组中,则最简单的方法是将整数用sprintf()存储到字符数组中,然后遍历数组,逐位取出。

参考代码:

#include <stdio.h>void main(){ int n,i; char str[20]; scanf("%d", &n); sprintf(str,"%d", n); for( i=0;str[i];i++ ) //正向输出 printf("%c\n", str[i] ); for( i--;i>=0;i-- ) //逆向输出 printf("%c\n", str[i] );}

如何把一串数字拆分到不同单元格?

1 首先选中要拆分的数字所在的单元格或者列。
2 点击“数据”选项卡,选择文本到列”命令
3 在弹出的“文本到列向导”对话框中,选择“分隔符号”选项,并选择拆分数字的分隔符(如逗号空格等)。
4 点击“下一步”按钮,选择拆分后数字所在的位置(如新建一列或者覆盖原来的列)。
5 点击“完成”按钮,完成数字拆分操作
延伸:如果要拆分的数字中包含不同的分隔符号,可以在“分隔符号”选项中选择“其他符号”,并手动输入使用的分隔符号。
如果要拆分的数字中包含文本内容,可以在“文本到列”对话框中选择“分隔符号”和“文本”两个选项,进行文本和数字的同时拆分。

整数拆分c语言,整数拆分c语言代码-第3张图片-芜湖力博教育咨询公司
(图片来源网络,侵删)

如果你想把一串数字拆分到不同单元格,有以下几种方法:

使用分列功能。选中要拆分的单元格,点击数据→分列,选择按分隔符或按固定宽度,然后根据需要设置分隔符号或列宽,点击完成即可。

使用MID函数。在要拆分的单元格旁边输入=MID($A2,COLUMN(A1),1),其中$A2是要拆分的单元格,COLUMN(A1)是当前列的序号,1是要提取的字符个数。然后向右或向下拖动公式即可。

使用PQ编辑器。点击数据→自表格/区域,选择要拆分的单元格,进入PQ编辑器。点击拆分列→按分隔符,高级选项,拆分为行,确定,这样就将内容拆分好了。

到此,以上就是小编对于整数拆分c语言的问题就介绍到这了,希望介绍关于整数拆分c语言的2点解答对大家有用

标签: 拆分 输出 整数