一、选择题
BBDBACCCAD
二、填空题
1,4,13,40
3715
358
5 2 6 1
5 4 8 2 0
2
三、编程题
1、
#include <iostream>
#include<array>
#include <limits>
using namespace std;
int main()
{
array<int,10> score;
array<int,10>::iterator iter; //定义了一个迭代器
for(iter=score.begin();iter!=score.end();iter++)//begin()第一个元素的地址 end()表示最后一个元素的下一个元素的地址
{
cin >> *iter;//循环输入学生成绩
}
//使用下标法
int index=0;
int hscore=score[0];
for(int i=1;i<10;++i)
{
if(score[i]>hscore)
{
hscore=score[i];
index=i;
}
}
cout << "最高成绩(下标法): " << hscore << ", 学生序号: " << index << endl;
//使用地址法
int *hscorep=&score[0];
for (int *ptr=score.begin();ptr!=score.end();++ptr)
{
if (*ptr>*hscorep)
{
hscorep=ptr;
}
}
int hindex=hscorep-score.begin();
cout << "最高成绩(地址法): " << *hscorep << ", 学生序号: " << hindex << endl;
return 0;
}
2、
#include <myhead.h>
int main(int argc, const char *argv[])
{
int str[5][4];
int sum=0,num=0;
for(int i=0;i<5;i++)
{
for(int j=0;j<4;j++)
{
scanf("%d",str[i][j]);
}
}
for(int j=0;j<4;j++)
{
for(int i=0;i<5;i++)
{
sum+=str[i][j];
}
}
printf("%d\n",sum);
for(int i=0;i<5;i++)
{
num=0;
for(int j=0;j<4;j++)
{
num+=str[i][j];
}
printf("%d\n",num);
}
for(int i=0;i<5;i++)
{
for(int j=0;j<4;j++)
{
scanf("%d",*(*(str+i)+j));
}
}
for(int j=0;j<4;j++)
{
for(int i=0;i<5;i++)
{
sum+=*(*(str+i)+j);
}
}
printf("%d\n",sum);
for(int i=0;i<5;i++)
{
num=0;
for(int j=0;j<4;j++)
{
num+=*(*(str+i)+j);
}
printf("%d\n",num);
}
return 0;
}
不知道哪里错了