往年1级考试题(c++)

4196. 2022.06 一级」倒序输出
题目描述
依次输入 4 个整数 a b c d, 将他们倒序输出,即依次输出 d c b a 4 个数。
输入格式
一行 4 个整数 a b c d ,以空格分隔。
输出格式
一行 4 个整数 d c b a ,整数之间以一个空格分隔。
样例
样例输入
1 2 3 4
样例输出
4 3 2 1
#include <iostream>
using namespace std;
int main()
{
    int a,b,c,d;
    cin>>a>>b>>c>>d;
    cout<<d<<" "<<c<<" "<<b<<" "<<a;
    return 0;
}

4197. 2022.06 一级」平方差计算
题目描述
给定的两个整数 a, b, 他们的平方差结果为
,可以化简为 (a+b)(a-b)
例如 5 4 的平方差为 52-42=(5+4)(5-4)=9
现给定两个整数,求他们的平方差。
1 2 3 4
4 3 2 1 输入格式
一行两个整数 a b ,以空格分隔。
输出格式
输出 a b 的平方差。
#include <iostream>
using namespace std;
int main()
{
	int a,b;
	cin>>a>>b;
	cout<<(a+b)*(a-b);
	return 0;
}

4198. 2022.06 一级」最小的数
题目描述
依次输入 3 个整数 a b c, a b c 中的最小值输出。
输入格式
一行 3 个整数 a b c ,以空格分隔。
输出格式
1 个整数,即 3 个整数的最小值。
#include <iostream>
using namespace std;
int main()
{
	int a,b,c;
	cin>>a>>b>>c;
	if(a>b)
	{
		int z = a;
		a = b;
		b = z;
	}
	if(a>c)
	{
		int z = a;
		a = c;
		c = z;
	}
	cout<<a;
	return 0;
}

4199. 2022.06 一级」计算成绩优秀
的人数
题目描述
现有一个班一门课程考试的分数,请统计其中成绩为优秀的人数。
成绩为优秀的要求是分数大于等于 85
输入格式
第一行 1 个整数 n ,表示分数的个数。( 0 < n ≤ 100,
第二行 n 个正整数,表示每一个分数,每个分数小于等于 100
输出格式
输出一个整数,表示成绩为优秀的人数。
#include <iostream>
using namespace std;
int main()
{
    int n,a,cnt;
    cin>>n;
    cnt = 0;
    for(int i = 1;i<=n;i++)
    {
        cin>>a;
        if(a>=85)
        {
            cnt++;
        }
    }
    cout<<cnt;
    return 0;
}

1355. 开关灯
题目描述
假设有 N 盏灯 (N 为不大于 5000 的正整数 ) ,从 1 N 按顺序依次编号,初始时全部处于开启状态;
M 个人 (M 为不大于 N 的正整数 ) 也从 1 M 依次编号。
10
85 70 99 90 78 55 100 62 88 84
5 第一个人 (1 ) 将灯全部关闭,第二个人 (2 ) 将编号为 2 的倍数的灯打开,第三个人 (3 ) 将编号为 3 的倍数的
灯做相反处理(即将打开的灯关闭,将关闭的灯打开)。依照编号递增顺序,以后的人都和 3 号一样,将凡是自己
编号倍数的灯做相反处理。
请问:当第 M 个人操作之后,哪几盏灯是关闭的,按从小到大输出其编号,其间用逗号间隔。
输入格式
输入正整数 N M ,以单个空格隔开。
输出格式
若干数,表示关着的电灯编号
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
	int n,m;
	cin>>n>>m;
	int cnt2 = 0;
	for(int i = 1;i<=n;i++)
	{
		int cnt = 0;
		for(int j = 1;j<=m;j++)
		{
			if(i%j==0)
			{
				cnt++;
			}
		}
		if(cnt%2==1)
		{
			if(cnt2==0)
			{
				cout<<i;
			}
			else
			{
				cout<<","<<i;
			}
			cnt2++;
		}
	}
	return 0;
}

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值