AcWing 737. 数组替换
#include <iostream>
#include <cstring>
#include <algorithm>
const int N = 10;
int X[N];
using namespace std;
int main()
{
for(int i = 0; i < N; i++){
int a;
cin >> a;
if(a <= 0) a = 1;
printf("X[%d] = %d\n",i,a);
}
return 0;
}
AcWing 738. 数组填充
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
int main()
{
int n;
cin>>n;
for(int i=0;i<10;i++)
{
cout<<"N["<<i<<"] = "<<n<<endl;;
n*=2;
}
return 0;
}
AcWing 739. 数组选择
#include<iostream>
using namespace std;
int main() {
double arr[100];
for (int i = 0; i < 100; i++) {
double num;
cin >> num;
arr[i] = num;
if (num <= 10) printf("A[%d] = %.1lf\n", i, arr[i]);
}
return 0;
}
743. 数组中的行
#include <bits/stdc++.h>
using namespace std;
int main(){
double m[12][12];
int l;
double s = 0;
char x;
cin >> l >> x;
for(int i = 0;i < 12;i++){
for(int j = 0;j < 12;j++){
cin >> m[i][j];
if(i == l) s += m[i][j];
}
}
if(x == 'M') s = s / 12;
cout << fixed << setprecision(1) << s;
return 0;
}
AcWing 745. 数组的右上半部分
#include <bits/stdc++.h>
using namespace std;
int main(){
double m[12][12], s = 0;
char x;
cin >> x;
for(int i = 0;i < 12;i++){
for(int j = 0;j < 12;j++){
cin >> m[i][j];
if(i < j){
s += m[i][j];
}
}
}
if(x == 'M') s = s / 66;
cout << fixed << setprecision(1) << s;
return 0;
}
AcWing 747. 数组的左上半部分
#include <bits/stdc++.h>
using namespace std;
int main()
{
double m[12][12], s = 0;
char x;
cin >> x;
for(int i = 0;i < 12;i++){
for(int j = 0;j < 12;j++){
cin >> m[i][j];
if(i + j < 11){
s += m[i][j];
}
}
}
if(x == 'M') s = s / 66;
cout << fixed << setprecision(1) << s;
return 0;
}
749. 数组的上方区域
#include<iostream>
#include<cstdio>
using namespace std;
int main(){
char c;
cin>>c;
double a[12][12];
for(int i=0;i<12;i++){
for(int j=0;j<12;j++){
scanf("%lf",&a[i][j]);
}
}
int d=0;
double sum=0;
for(int i=0;i<5;i++){
for(int j=i+1;j<12-(i+1);j++){
sum+=a[i][j];
d++;
}
}
if(c=='S') printf("%.1lf",sum);
else printf("%.1lf",sum/d);
return 0;
}
751. 数组的左方区域
#include <iostream>
using namespace std;
int main()
{
char a;
cin>>a;
double s=0;
for(int i=0;i<12;i++)
{
for(int j=0;j<12;j++)
{
double a;
cin>>a;
if((i+j)<=10&&i>j) // 规律
s+=a;
}
}
printf("%.1lf", a=='S' ? s : s/30);
}
AcWing 753. 平方矩阵 I
#include <iostream>
using namespace std;
int main()
{
int n,a[110][110],i,j;
while(cin>>n)
{
if(!n) break;
for(i=1;i<=n;i++)
{
for(j=i;j<=n-i+1;j++)
{
a[j][i]=i;
a[i][j]=i;
a[j][n-i+1]=i;
a[n-i+1][j]=i;
}
}
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
cout<<a[i][j]<<' ';
cout<<endl;
}
cout<<endl;
}
return 0;
}