qq_32609151 2017-04-02 16:53 采纳率: 0%
浏览 1581

腾讯笔试题:输入一串数字,长度不固定,数字间空格隔开,求每个数字出现的次数

求解决,看看我代码哪里出问题

#include <iostream>
using namespace std;

 //输入一串数字,长度不固定,数字间空格隔开,求每个数字出现的次数,每行用n(m)形式输出,n为不同的数,m为n出现的次数 

int main(int argc, char *argv[]) {  //问题 :只能输出第一个数的出现次数 
    typedef struct str{
       int a;
       int b; 
    };
    str str1[100];
    int n=0;
    int test[100];
    int k=1;
    int flag=1;   
    while(cin.get()!='\n'){     //问题 每次输入数据都会少掉第一个字符 输入时加空格则不会出现此问题,求解决方案 
                cin>>test[n];
                n++;    
    }

     for(int i=0;i<100;i++){
          str1[i].a=0;
          str1[i].b=0;
    }
    str1[0].a=test[0];
     str1[0].b=0;
    for(int i=0;i<n;i++){   // 2 2 3 4 5  2 3
        for(int j=0;j<k;j++)
          {
            if(test[i]==str1[j].a){
                str1[j].b++;
                flag=1; 
            }   
          }
        if(flag!=1){ 
                str1[k].a=test[i];
                str1[k].b=1;
                k++;
                flag=1;
        }
    }

    for(int i=0;i<k;i++){
         cout<<str1[i].a<<'(';
         cout<<str1[i].b<<')'<<endl;
    }

    return 0;
}
  • 写回答

2条回答 默认 最新

  • merlin’s girl 2017-04-03 05:20
    关注

    int main(int argc, char *argv[]) { //问题 :只能输出第一个数的出现次数
    typedef struct str{
    int a;
    int b;
    };
    str str1[100];
    int n=0;
    int test[100];
    int k=1;
    int flag=1;

    while(cin.get()!='\n'){ //问题 每次输入数据都会少掉第一个字符 输入时加空格则不会出现此问题,求解决方案
    cin>>test[n];
    n++;

    }

     for(int i=0;i<n;i++){
          str1[i].a=test[i];
          str1[i].b=0;
    }
    for(int i=0;i<n;i++){  // 2 2 3 4 5 2 3
        flag=1;
            for(int k=0;k<i;k++)
              if(str1[k].a==str1[i].a) 
              {flag=0;break;}
          if(flag!=0)
              for(int j=0;j<n;j++)
            {
              if(test[j]==str1[i].a)
                  str1[i].b++; 
             }
    }
    
    for(int i=0;i<n;i++){
        if(str1[i].b!=0)
       {  cout<<str1[i].a<<'(';
         cout<<str1[i].b<<')'<<endl;
    }
    }
    system("pause");
    return 0;
    

    }

    评论

报告相同问题?

悬赏问题

  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题