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#具体有什么方法不是很清楚,碰倒了瓶颈。忽诚忽扰 展开
long a=1234598742580;(a的值可以是任意的)
分割后为:
b[0]="580",b[1]="742",b[2]="598",b[3]="234",b[4]="1"
简单问题才要详细回答。我刚转c#,c#具体有什么方法不是很清楚,碰倒了瓶颈。忽诚忽扰 展开
10个回答
展开全部
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); }
}
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); }
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
今天没事做 就啰嗦几句 花了几分钟写的 以前号忘密码了 刚注册的 给点分吧
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();
}
}
}
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();
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先说下思路: 这里的B 数组的每个自都是 a 对 1000 求 余的结果:
程序代码:
long b[];
while(a<1)
{
for(i=0;;i++;)
{
b[i]=a%1000;
a=a/1000;
}
}
程序代码:
long b[];
while(a<1)
{
for(i=0;;i++;)
{
b[i]=a%1000;
a=a/1000;
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用%
(取余)
详细不说了~嘿嘿~把分给我也不说~
还是说了吧,免得真的不给我~
先%1000得580
再%1000*10*10*10得742580再除1000得742
.
.
.
不用再说了吧
(取余)
详细不说了~嘿嘿~把分给我也不说~
还是说了吧,免得真的不给我~
先%1000得580
再%1000*10*10*10得742580再除1000得742
.
.
.
不用再说了吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询