2023.3.13上机练习

这些C++程序涉及了读取数组、计数、排序、比较以及寻找数组中值的中间点。它们演示了基础的输入输出、循环结构和数组操作技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.201412-1原题网址
在这里插入图片描述

#include<iostream>
using namespace std;
int main()
{
	int n;
	cin >> n;
	int num[1000] = { 0 };
	for (int i = 1; i <= n; i++)
	{
		int a;
		cin >> a;
		num[a]++;
		cout << num[a] << " ";
	}
	return 0;
}

2.201503-1原题网址
在这里插入图片描述

#include<iostream>
using namespace std;
int a[1000][1000] = { 0 };
int main()
{
	int n, m;
	cin >> n >> m;

	for (int i = 0; i < n; i++)
		for (int j = 0; j < m; j++)
			cin >> a[i][j];
	for (int k = m - 1; k >= 0; k--)
	{
		for (int i = 0; i < n; i++)
		{
			cout << a[i][k] << " ";
		}
		cout << endl;
	}
	return 0;
}
  1. 201503-2原题网址
    在这里插入图片描述
#include <iostream>
using namespace std;

int main()
{
	int n, num;
	cin >> n;
	int a[1001] = { 0 };
	for (int i = 0; i < n; i++) 
	{
		cin >> num;
		a[num]++;
	}
	for (int i = 1000; i > 0; i--) 
	{
		for (int j = 0; j < 1001; j++) 
		{
			if (a[j] == i) 
			{
				cout << j << " " << a[j] << endl;
			}
		}
	}
	return 0;
}

4.201509-1原题网址
在这里插入图片描述

#include<iostream>
using namespace std;
int main()
{
	int n;
	cin >> n;
	int num[1000] = { 0 };
	for (int i = 1; i <= n; i++)
		cin >> num[i];
	int duan = 1;
	for (int i = 2; i <= n; i++)
	{
		if (num[i] != num[i - 1])
			duan++;
	}
	cout << duan;
	return 0;
}

5.201512-1原题网址
在这里插入图片描述

#include<iostream>
using namespace std;
int main()
{
	int n;
	cin >> n;
	long sum = 0;
	while (n)
	{
		sum += n % 10;
		n = n / 10;
	}
	cout << sum;
	return 0;
}

6.201604-1原题网址
在这里插入图片描述

#include<iostream>
using namespace std;
int main()
{
	int n;
	cin >> n;
	int num[1000] = { 0 };
	for (int i = 1; i <= n; i++)
		cin >> num[i];
	int count = 0;
	for (int i = 2; i < n; i++)
	{
		if ((num[i - 1] - num[i]) < 0 && (num[i + 1] - num[i]) < 0)
			count++;
		else if ((num[i - 1] - num[i])>0 && (num[i + 1] - num[i])>0)
			count++;
	}
	cout << count;
	return 0;
}
  1. 201609-1原题网址
    在这里插入图片描述
#include<iostream>
#include<algorithm>
#include<math.h>
using namespace std;
bool comp(int a, int b)
{
	if (a > b)
		return true;
	else
		return false;
}
int main()
{
	int n;
	cin >> n;
	int num[1000] = { 0 };
	for (int i = 0; i < n; i++)
		cin >> num[i];
	int cha[1000] = { 0 };
	for (int i = 1; i <= n; i++)
		cha[i] = abs(num[i] - num[i - 1]);
	sort(cha, cha + n, comp);
	cout << cha[0];
	return 0;
}

8.201612-1原题网址
在这里插入图片描述

#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
	int n;
	cin >> n;
	int num[1000] = { 0 };
	for (int i = 0; i < n; i++)
		cin >> num[i];
	sort(num, num + n);
	int mid = num[n / 2];
	int min = 0, max = 0;
	for (int i = 0; i < n; i++)
	{
		if (num[i] < mid)
			min++;
		if (num[i] > mid)
			max++;
	}
	if (max == min)
		cout << mid;
	else
		cout << -1;
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值