回 帖 发 新 帖 刷新版面

主题:C语言问题

各位大哥大姐你们好!我想请教一个问题?是这样的:输入一个字符串,内有数字和非数字字符,如:a123x456 1678?tdce35565将基中连续的数字作为一个整数,依次存放到一数组a中,例如:123放在a[0]中联部456放在a[1]中.....统计共有多少个整数并输出这些数?谢谢!
[em18]

回复列表 (共2个回复)

沙发

我,菜鸟,只能用些低级语句
以下是我的方法:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
        int i,j,count,a[100],n=0;         \\管他的,先设个a[100]再说
        String stra;
        for (i=0;i<=Edit1->Text.Length();i++)
        {
                if (Edit1->Text.SubString(i,1)==0||
          Edit1->Text.SubString(i,1)==1||
                    Edit1->Text.SubString(i,1)==2||
          Edit1->Text.SubString(i,1)==3||
                    Edit1->Text.SubString(i,1)==4||
          Edit1->Text.SubString(i,1)==5||
                    Edit1->Text.SubString(i,1)==6||
          Edit1->Text.SubString(i,1)==7||
                    Edit1->Text.SubString(i,1)==8||
          Edit1->Text.SubString(i,1)==9)   \\这招是我惯用的"不达目的死不罢休"招式
                {
                        stra=stra+Edit1->Text.SubString(i,1);
                }
                else
                {
                        if (stra.IsEmpty()==false)
                        {
                                ListBox1->Items->Strings[n]=stra;
                                stra="";
                                n++;
                        }
                }
        }
        for (j=0;j<=ListBox1->Items->Count-1;j++)
                a[j]=StrToInt(ListBox1->Items->Strings[j]);
        count=ListBox1->Items->Count;
}

板凳

stra=abc123d456e7f89g0;
执行结果:
a[0]=123;
a[1]=456;
a[2]=7;
a[3]=89;
a[4]=0;
count=5

我来回复

您尚未登录,请登录后再回复。点此登录或注册