SolidWorksAPI 2017-08-01 11:47 采纳率: 20%
浏览 1300

vb.net过滤掉数组中相同的字符的元素?

"100#200#0"
"200#120#0"
"100#560#0"
"200#780#0"
"100#320#0"
"300#980#0"
"400#220#0"
"100#290#0"
"500#400#0"
"600#450#0"
我有个数组(如上),我想把每个元素第一个#前面相同的数字的元素过滤掉,
最终得到
"100#200#0"
"200#120#0"
"300#980#0"
"400#220#0"
"500#400#0"
"600#450#0"

有人能帮帮我吗!

  • 写回答

2条回答

  • WildStark 2017-08-01 14:34
    关注

    #include
    #include
    bool compare(char *a,char *b){
    int i=0;
    while(a[i]!='#'){
    if(a[i]!=b[i]){
    return false;
    }
    i++;
    }
    return true;
    }
    void mcopy(char *a,char *b){
    int i=0;
    while(b[i]||a[i]){
    a[i]=b[i];
    i++;
    }
    }
    int main()
    {
    char start[12][12]={"100#200#0","200#120#0","100#560#0","200#780#0","100#320#0","300#980#0","400#220#0","100#290#0","500#400#0","600#450#0"};
    char result[12][12];
    int i=0,j=0,k=0;
    for(k=0;k<10;k++){
    j=0;
    while(j<i){
    if(compare(start[k],result[j]))
    break;
    j++;
    }
    if(j==i){
    mcopy(result[i++],start[k]);
    }
    }
    for(k=0;k<i;k++){
    printf("%s\n",result[k]);
    }
    }
    //不会VB,写了个C语言版的,拿去自己改改

    评论

报告相同问题?

悬赏问题

  • ¥20 matlab计算中误差
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊