题目描述
找出一个二维数组(以三行四列的数组为例)中的鞍点,即该位置上的元素在该行上值最大,在该列上值最小(也可能没有鞍点)
标准输入:二维数组(以三行四列的数组为例)
9 80 205 40
90 60 96 1
210 3 101 89标准输出:如果有鞍点,输出鞍点的值及所在行列(例如[1][2]=96 is Saddle Point),如果没有,输出没有鞍点(例如 No Saddle Point)
[1][2]=96 is Saddle Point
#include
using namespace std;
int main(){
double a[3][4];
for(int i=0;i<3;i++){
for(int j=0;j<4;j++){
cin>>a[i][j];
}
}
for(int i=0;i<3;i++){
double max=a[i][0],min;
int t=0;
for(int j=0;j<4;j++){
if(max<a[i][j]){
max=a[i][j];
t=j;
min=max;
int flag=0;
for(int m=0;m<3;m++){
if(a[m][t]<min){
flag=1;
}
}
if(!flag){
cout<<"["<<i<<"]["<<j<<"]="<<min<<" is Saddle Point";
system("pause");
return 0;
}
}
}
}
cout<<"No Saddle Point";
system("pause");
return 0;
}
题目描述
定义数组存储5位学生的姓名和4科考试的成绩,计算并输出每个学生的总成绩和平均成绩,找出平均成绩最高的学生姓名。
依次输入每位学生的姓名和4科考试的成绩。
输入样例:
说明:下列输入的字符及数字间的空格数为一个空格,如”zhangsan 87 76 91 79″中,”zhangsan”与”87″间为一个空格
zhangsan 87 76 91 79
lisi 90 89 78 69
wangwu 80 88 91 85
zhaoqian 77 79 78 75
sunli 89 87 88 871)输出每个学生的总成绩和平均成绩;2)输出平均成绩最高的学生姓名。
输出样例:
说明:下列输出内容格式如下:cout<
#include
#include
using namespace std;
int main(){
char name[5][100];
int s[5][6]={0};
int maxAve=0,t;
for(int i=0;i<5;i++){
cin>>name[i];
for(int j=0;j<4;j++){
cin>>s[i][j];
s[i][4]+=s[i][j];
}
s[i][5]=s[i][4]/4;
if(s[i][5]>maxAve){
maxAve=s[i][5];
t=i;
}
}
cout<<"Name"<<" "<<"TotalScore"<<" "<<"AverageScore"<<endl;
for(int i=0;i<5;i++){
cout<<setiosflags(ios::left)<<setw(10)<<name[i];
for(int j=4;j<6;j++){
if(j==4)
cout<<setw(9)<<s[i][j];
if(j==5)
cout<<s[i][j];
}
cout<<endl;
}
cout<<"Student with the highest AverageScore is "<<name[t]<<",AverageScore is "<<maxAve<<endl;
system("pause");
return 0;
}
题目描述
输入字符串s,编程统计出s中共出现了多少个数字字符。进一步考虑,如何统计出10个数字字符各自出现的次数。
输入带数字字符的字符串
abcdefk12345两行: 1)输出字符串中数字字符的总个数;2)一次逐行输出从数字字符’0’到数字字符’9’的个数,每个数字后面有一个空格。
输出样例:
Number’s amount is:5
‘0…9’ amount is:0 1 1 1 1 1 0 0 0 0
#include
#include
using namespace std;
int main(){
char s[1000];
int cnt=0;
cin>>s;
int arr[10]={0};
for(int j=0;j<strlen(s);j++){
if(s[j]>='0'&&s[j]'9'){
int n=s[j]-'0';
arr[n]++;
cnt++;
}
}
cout<<"Number's amount is:"<<cnt<<endl;
cout<<"'0...9' amount is:";
for(int i=0;i<10;i++){
cout<<arr[i]<<" ";
}
system("pause");
return 0;
}
Original: https://www.cnblogs.com/haorical/p/16195996.html
Author: haorical
Title: MOOC高级语言程序设计第五章课后作业
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/620870/
转载文章受原作者版权保护。转载请注明原作者出处!