3.2日测试总结

3.2日测试总结

F1010 数组逆序

无错误

数组反过来输出,把循环的起点和终点反过来就行。

代码:

#include<bits/stdc++.h>
using namespace std;
const int maxn = 105;
int a[maxn];
int main()
{
	int n;
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
	}
	for(int i=n;i>=1;i--)
	{
		cout<<a[i]<<" ";
	}
	return 0;
}

F1153 【入门】求n个数的最大值和最小值

无错误

可以打擂台,但我用了sort排序

代码:

#include<bits/stdc++.h>
using namespace std;
const int maxn=32770;
int a[maxn];
bool cmp(int x,int y)
{
	if(x>y)
	{
		return 1;
	}
	else
	{
		return 0;
	}
}
bool tmp(int x,int y)
{
	if(x>y)
	{
		return 0;
	}
	else
	{
		return 1;
	}
}
int main()
{
	int n;
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
	}
	sort(a+1,a+1+n,cmp);
	cout<<a[1]<<" ";
	sort(a+1,a+1+n,tmp);
	cout<<a[1];
	return 0;
}

F1154 【入门】查找“支撑数”

无错误

for循环里面加if判断

代码:

#include<bits/stdc++.h>
using namespace std;
const int maxn = 105;
int a[maxn];
int main()
{
	int n;
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
	}
	for(int i=2;i<=n-1;i++)
	{
		if(a[i]>a[i-1] and a[i]>a[i+1])
		{
			cout<<a[i]<<endl;
		}
	}
	return 0;
}

A1114 矩阵交换行

用二维数组

代码:

#include<bits/stdc++.h>
using namespace std;
int a[10][10];
int cmp[10];
int main()
{
	for(int i=1;i<=5;i++)
	{
		for(int j=1;j<=5;j++)
		{
			cin>>a[i][j];
		}
	}
	int m,n;
	cin>>m>>n;
	for(int i=1;i<=5;i++)
	{
		cmp[i]=a[m][i];
	}
	for(int i=1;i<=5;i++)
	{
		a[m][i]=a[n][i];
	}
	for(int i=1;i<=5;i++)
	{
		a[n][i]=cmp[i];
	}
	for(int i=1;i<=5;i++)
	{
		for(int j=1;j<=5;j++)
		{
			cout<<a[i][j]<<" ";
		}
		cout<<endl;
	}
	
	return 0;
}

F1159 【入门】输出奇数和偶数

用循环控制奇数和偶数

代码:

#include<bits/stdc++.h>
using namespace std;
const int maxn = 35;
int a[maxn];
int j[maxn];
int o[maxn];
int main()
{
	int n;
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
	}
	int cntj=1;
	int cnto=1;
	for(int i=1;i<=n;i++)
	{
		if(a[i]%2==1)
		{
			j[cntj]=a[i];
			cntj++;
		}
		else
		{
			o[cnto]=a[i];
			cnto++;
		}
	}
	for(int i=1;i<=cntj-1;i++)
	{
		cout<<j[i]<<" ";
	}
	cout<<endl;
	for(int i=1;i<=cnto-1;i++)
	{
		cout<<o[i]<<" ";
	}
	return 0;
}

D1131 将字符串中的小写字母转换成大写字母

ASCII码掌握不好

ASCII码-32变成小写字母

代码:

#include<bits/stdc++.h>
using namespace std;
string s;
int main()
{
	getline(cin,s);
	int len = s.size();
	for(int i=0;i<len;i++)
	{
		if(s[i]>='a' && s[i]<='z')
		{
			s[i]-=32;
		}
	}
	cout<<s;
	return 0;
}

F1884 【入门】求n个数中出现次数最多的数

本题使用桶排序,原本毫无头绪。

代码:

#include<bits/stdc++.h>
using namespace std;
const int maxn = 105;
int cnt[maxn];
int main()
{
    int maxx = 0;
    int c = 0;
    int n;
    cin>>n;
    for (int i = 1; i <= n;i++)
    {
        int x;
        cin>>x;
        cnt[x]++;
        if(maxx<cnt[x])
        {
            maxx = cnt[x];
            c = x;
        }
    }
    cout << c << endl;
    
    return 0;
}
posted @ 2024-03-09 12:01  yucheng0630  阅读(11)  评论(0)    收藏  举报  来源