c#怎样把一个数字每三个为一组分割给一个字符串数组(从右开始)

如:longa=1234598742580;(a的值可以是任意的)分割后为:b[0]="580",b[1]="742",b[2]="598",b[3]="234",b[4... 如:
long a=1234598742580;(a的值可以是任意的)
分割后为:
b[0]="580",b[1]="742",b[2]="598",b[3]="234",b[4]="1"
简单问题才要详细回答。我刚转c#,c#具体有什么方法不是很清楚,碰倒了瓶颈。忽诚忽扰
展开
 我来答
liujoejoe
2009-05-06 · TA获得超过1518个赞
知道小有建树答主
回答量:1800
采纳率:0%
帮助的人:802万
展开全部
我说下我的思路吧。首先把a+“”;这样啊A就死字符串了。我记得C#是支持一个字符串类型的用数组下标访问的。那么a[0]就是1,a[1]就是2以此类推。然后把a[0]到a最后重新按3个一组放到B[]就可以了。当然要用个循环,循环次数由a[]的长度决定,取数组长度应该不难,自己写下吧。不难吧
lhj1330551
2009-05-07 · 超过38用户采纳过TA的回答
知道小有建树答主
回答量:123
采纳率:0%
帮助的人:112万
展开全部
long a = 1234598742580;
string temp = a.ToString();
string[] b = new string[temp.Length/3+1];
for (int i = 0; i < b.Length; i++)
{
if (temp.Length >= 3) {
b[i] = temp.Substring(temp.Length - 3);
temp = temp.Remove(temp.Length - 3);
}
else { b[i] = temp.Substring(0); }
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sflep
2009-05-12
知道答主
回答量:9
采纳率:0%
帮助的人:0
展开全部
今天没事做 就啰嗦几句 花了几分钟写的 以前号忘密码了 刚注册的 给点分吧
using System;
using System.Collections.Generic;
using System.Text;

namespace Try
{
class Program
{
/// <summary>
///Console.ReadLine()键盘出入的是字符串,哪怕是你输入的是纯数字
/// </summary>
/// <param name="args"></param>
static void Main(string[] args)
{
long a = 1234567890;
//ToString()方法可以是C#自身提供的方法,
//可以把非字符串型转换未字符串
string num = a.ToString();
//你也可以值接从键盘输入:string num = Console.ReadLine();

//Length属性可以求出字符串的长度
int len = num.Length;
//构造一个整形数组(存放拆分后的数) 长度为
//原长度加2除以3取整(加2是因为不足3位时可以取到一位)
int[] shuzu = new int[(len + 2) / 3];
//breakNum是拆分后的字符串
string breakNum = "";
for (int i = len, j = 0; i > 0; j++)
{
//数的位数大于3时可以取3位
if (i >= 3)
{
//Substring是string类提供的方法,可以取字符串任意
//位置开始的任意长度的一段字符串,
//第一个参数是起始位置,第二个参数是长度
//当取的长度大于总长时会出现异常 所以分3种情况
breakNum = num.Substring(i - 3, 3);
i -= 3;
}
else if (i == 2)
{
breakNum = num.Substring(0, 2);
i -= 2;
}
else if (i == 1)
{
breakNum = num.Substring(0, 1);
i -= 1;
}
//Parse是int类提供的方法 可以把一串数字字符串变成整数
shuzu[j] = int.Parse(breakNum);
}
//遍历输出得到的整数数组
for (int i = 0; i < shuzu.Length; i++)
{
Console.WriteLine(shuzu[i]);
}
//防止运行时屏幕一闪而过 加了后会按任意键继续后才会退出
Console.ReadKey();
}

}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lxh13133718300
2009-05-14
知道答主
回答量:10
采纳率:0%
帮助的人:1.7万
展开全部
先说下思路: 这里的B 数组的每个自都是 a 对 1000 求 余的结果:
程序代码:
long b[];
while(a<1)
{
for(i=0;;i++;)
{
b[i]=a%1000;
a=a/1000;
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
亚历山大波
2009-05-06
知道答主
回答量:32
采纳率:0%
帮助的人:0
展开全部
用%
(取余)
详细不说了~嘿嘿~把分给我也不说~

还是说了吧,免得真的不给我~

先%1000得580
再%1000*10*10*10得742580再除1000得742
.
.
.
不用再说了吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(8)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式