#CS40403. 阅读程序4-排序算法3

阅读程序

注意:切勿用电脑直接运行代码得出答案,请用大脑+笔+纸运行代码答题,否则是在浪费你的时间。

第4节:排序算法

第3题【NOIP】2011

#include<iostream>
#include<cstring>
using namespace std;
const int SIZE = 100;
int main(){
    int n,i,sum,x,a[SIZE];
    cin>>n;
8   memset(a,0,sizeof(a));
    for(i=1;i<=n;i++){
        cin>>x;
11      a[x]++;
    }
    i=0; sum=0;
14  while(sum<(n/2+1)){
        i++;
        sum+=a[i];
    }
    cout<<i<<endl;
    return 0;
}

●判断题

(1)当第8行的sizeof(a)改为SIZE时,运行结果不会发生改变。

(2)当第11行的a[x]++改成++a[x]时,运行结果不会发生改变。

(3)当第14行的sum<(n/2+1)改为sum<(n+1)/2时,运行结果不会发生改变。

(4)数组a的所有数中的最大值为1。

●选择题

(5)输入11 4 5 6 6 4 3 3 2 3 2 1,输出的结果为()。

(6)输入5 1 2 3 4 5,输出的结果为()。