读书人

求大牛指点!解决方法

发布时间: 2012-06-11 17:42:22 作者: rapoo

求大牛指点!
题目:任意输入n个正整数,求出其中互不相同的数的个数num,以及此num个数的出现次数,将结果输出。帮忙看看那里出错啦。运行结果总是不对。
[code=C/C++][/code]#include<iostream.h>
int main()
{
int n,i,number,j,a[1000]={0},num[1000]={0};

while(1)
{
int a[1000]={0},num[1000]={0};
cout<<"Please input the number of your digitals:"<<endl;
cin>>n;
for(i=1;i<=n;i++)
{
cin>>number;

for(j=1;j<i;)
{
if(a[j]==a[i])
{
num[j]++;

break;
}
j++;
}



if(j==i)
{
a[i]=number;
num[i]++;

}




}




for(int k=0,i=1;i<=n;i++)
if(num[i]==1)
{
k++;
cout<<a[i]<<"出现"<<1<<"次"<<endl;

}



else
cout<<a[i]<<"出现"<<num[i]<<"次"<<endl<<endl;




}


return 0;

}

[解决办法]
学习使用调试功能,这个程序不复杂,很容易就知道哪儿出错了
[解决办法]
参考下面的程序:

C/C++ code
#include <iostream>using namespace std;int main(){    int n, i, j, number, unique_number;    int a[1000] = {0};    int num[1000] = {0};    unique_number = 0;    cout << "Please input the number of your digitals:" << endl;    cin >> n;    for(i = 0; i < n; ++i)    {        cin >> number;           for(j = 0; j <= unique_number;)        {            if(a[j] == number)            {                num[j]++;                break;            }            else            {                a[unique_number] = number;                num[unique_number] = 1;                ++unique_number;                break;            }        }        }     for(i = 0; i < unique_number; ++i)    {        cout << a[i] << " 出现 " << num[i] << " 次" << endl;    }    return 0; }
[解决办法]
探讨

引用:

引用:

参考下面的程序:
C/C++ code

#include <iostream>
using namespace std;

int main()
{
int n, i, j, number, unique_number;
int a[1000] = {0};
int num[1000] = {0};
uniq……

------解决方案--------------------


探讨

我只是想知道我的代码那里错啦 求大牛呀!

[解决办法]
探讨

引用:

引用:

引用:

参考下面的程序:
C/C++ code

#include <iostream>
using namespace std;

int main()
{
int n, i, j, number, unique_number;
int a[1000] = {0};
int num[10……

[解决办法]
要先把图片上传到相册,然后才放图片链接到插入图片,才行。。
[解决办法]
C/C++ code
//在你的基础上改了一下,看看是你要的吗#include<iostream.h>int main(){    int n,i,number,j;        while(1)    {        int a[1000]={0},num[1000]={0};        cout<<"Please input the number of your digitals:"<<endl;        cin>>n;        for(i=0;i<n;i++)        {            cin>>number;                for(j=0;j<i;j++)            {                if(a[j]==number)                {                    num[j]++;                    break;                }             }            if(j==i)            {                a[i]=number;                num[i]++;                   }        }        for(int k=0,i=0;i<n;i++)        {            if(num[i]==1)            {                k++;                cout<<a[i]<<"出现"<<1<<"次"<<endl;                   }            else if (num[i]!=0)            {                cout<<a[i]<<"出现"<<num[i]<<"次"<<endl<<endl;            }        }    }             return 0;      } 

读书人网 >C++

热点推荐