#include<bits/stdc++.h>
using namespace std;
int main()
{
int a[1001],b[1001]={0};
int n=1,t;
int i=0;
while(cin>>a[i])
i++;
for(int j=0;j<i;j++)
if(a[j+1]>a[j])
n++;
cout<<n<<endl;
return 0;
}
你这代码有问题啊,应该是for(int j=0;i<i-1;j++)
不然当j=i-1时,a[j+1]就越界了
该加大括号的地方加一下,你这都很容易导致写错。加点打印信息。
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a[1000]={0};
int n=1;
int i=0;
int d;
cin>>d;
while(d!=0 && i<1000)
{
a[i++] = d;
cin>>d;
}
for(int j=0;j<i-1;j++)
if(a[j+1]>a[j])
n++;
cout<<n<<endl;
return 0;
}
http://ybt.ssoier.cn:8088/problem_show.php?pid=1322
这是题目原文