首页 > 编程语言 >C++练习(5道)

C++练习(5道)

时间:2025-01-12 10:03:04浏览次数:3  
标签:输出 10 int 练习 样例 C++ 6174 输入

今天来练习一下C++(有错请指出)

1.练50.1 查分程序

题目描述

尼克,格莱尔等5位同学进行了一次信息学测试,试编一程序,实现查分功能。先输入成绩,然后输入学号输入相应的成绩。

输入

a1∼a5的成绩,并输入学号1∼5。

输出

输出该学号成绩

样例输入 复制
99 98 99 100 92
3
样例输出 复制
99
思路:

输入a数组,输入x,输出a[x-1];

代码:

#include<iostream>
using namespace std;
int main()
{
    int a[5],x;
    for (int i = 0; i < 5; i++) {
        cin>>a[i];
    }
    cin>>x;
    cout<<a[x-1];
    return 0;
}

2.【入门】象棋比赛

    题目描述

    两位同学进行了n场的象棋比赛(3<=n<=9,且n是奇数),他们的参赛号分别是10和20,每场比赛都有一位胜出的同学(也就是不存在平局的情况),请问最终哪位同学取得了胜利?

    输入

第1行有一个整数n,代表举办比赛的次数。

第2行有n个整数(这n个整数一定是10或者是20,代表获得胜利同学的参赛号)。

    输出

    输出获得胜利同学的参赛号。

    样例输入 复制
5 10 10 20 10 20
    样例输出 复制
10

思路: 

代码:

#include<bits/stdc++.h>
using namespace std;
int n,a[15],t[25],maxn,k;
int main() {
    cin>>n;
	for (int i=0;i<n;i++)
	    cin>>a[i];
	for (int i=0;i<n;i++) {
		t[a[i]]++;
		if(t[a[i]]>maxn) {
			maxn=t[a[i]];
			k=a[i];
		}
	}
	cout<<k;
	return 0;
}

3.【入门】求和

题目描述

输入n( 1 <= n <= 5000 )个正整数,每个数都在1到20000之间;要求对这n个数中的奇数和偶数分别求和。

输入

第一行,一个正整数n(1 <= n <= 5000 ); 第2-n+1行,每行一个正整数,每个数都在1到20000之间。

输出

输出文件共有二行,每行包含一个整数,第一行为所有奇数之和,第二行为所有偶数之和。

样例输入 复制
5
3
10
7
5
8
样例输出 复制
15
18

思路:

循环+判断

代码:

#include <iostream>  
using namespace std;
int main() {
	int n;
	cin >> n;
	int odd_sum = 0, even_sum = 0;
	for (int i = 0; i < n; i++) {
		int num;
		cin >> num;
		if (num % 2 == 0) {
			even_sum += num;
		} else {
			odd_sum += num;
		}
	}
	cout << odd_sum << endl;
	cout << even_sum << endl;
	return 0;
}

4.【入门】字母直角1

题目描述

输入一个整数n,打印n行的字母直角。

比如,假设n=3,那么打印3行的字母直角如下:

A

AB

ABC

输入

一个整数(0<n<10)

输出

n行的字符直角

样例输入 复制
3
样例输出 复制
A
AB
ABC

思路:

定义一个字符变量a = "A",循环输出a+j

代码:

#include <iostream>
using namespace std;
int main() {
	char a = 'A';
	int b;
	cin>>b;
	for (int i = 1;i<=b;i++) {
		for (int j = 0;j< i;j++) {
			cout<<char(a+j);
		}
		cout<<endl;
	}
	return 0;
}

5.【基础】神奇的6174

题目描述

数学中有一个数字6174,这是一个神奇的数字。这个数字神奇之处在于,可以用一个任意的四位正整数(全相同的除外,如1111),将数字重新组合成一个最大的数和最小的数相减,重复这个过程,最多七步,必得6174。

得到6174后,再重复这个过程结果依然是6174,即:7641-1467=6174。

先给定一个四位整数(不是全相同的数),请你求解这个计算过程。

输入

一个四位整数。(不是全相同的数,且输入的整数不是6174)

输出

输出若干行,每行一个算式(参考样例输出),演示出计算的过程。

样例输入 复制
3120
样例输出 复制
3210-123=3087
8730-378=8352
8532-2358=6174

思路:按照题目来做。

代码:

#include<iostream>
#include<cstdio>
using namespace std;
int a[10]= {0};
int main() {
	int n;
	cin>>n;
	while(n!=6174) {
		for (int i=1;i<=4;i++) {
			a[i]=n/1000;
			n=(n-a[i]*1000)*10;
		}
		for (int j=1;j<=4;++j)
		    for (int z=1;z<=4-j;++z)
		    if(a[z]<a[z+1]) {
			int t=a[z];
			a[z]=a[z+1];
			a[z+1]=t;
		}
		n=(a[1]*1000+a[2]*100+a[3]*10+a[4])-(a[4]*1000+a[3]*100+a[2]*10+a[1]);
		if(a[4]!=0)
		    cout<<a[1]<<a[2]<<a[3]<<a[4]<<"-"<<a[4]<<a[3]<<a[2]<<a[1]<<"="<<n<<endl; 
		else {
		    if(a[3]!=0) cout<<a[1]<<a[2]<<a[3]<<a[4]<<"-"<<a[3]<<a[2]<<a[1]<<"="<<n<<endl; 
		    else cout<<a[1]<<a[2]<<a[3]<<a[4]<<"-"<<a[2]<<a[1]<<"="<<n<<endl;
		}
	}
	return 0;
}

感谢您的观看,制作不易,点个赞呗 

 

 

标签:输出,10,int,练习,样例,C++,6174,输入
From: https://blog.csdn.net/a_sdfghjk1234567/article/details/145086504

相关文章

  • 「C/C++」C++ 之 反射机制
    ✨博客主页何曾参静谧的博客(✅关注、......
  • 【HarmonyOS Next NAPI 深度探索1】Node.js 和 CC++ 原生扩展简介
    【HarmonyOSNextNAPI深度探索1】Node.js和CC++原生扩展简介如果你用过Node.js,应该知道它强大的地方在于能处理各种场景,速度还很快。但你有没有想过,Node.js的速度秘密是什么?今天我们来聊聊其中一个幕后英雄——原生扩展,特别是如何通过C/C++把JavaScript的能力进......
  • LeetCode题练习与总结:复数乘法--537
    一、题目描述复数 可以用字符串表示,遵循 "实部+虚部i" 的形式,并满足下述条件:实部 是一个整数,取值范围是 [-100,100]虚部 也是一个整数,取值范围是 [-100,100]i^2==-1给你两个字符串表示的复数 num1 和 num2 ,请你遵循复数表示形式,返回表示它们乘积的字符串。......
  • MySQL练习2
    1.单表查询(1)素材表名:worker--表中字段均为中文,比如“部门号,工资,职工号,参加工作”等(2)创建worker表CREATETABLEworker (部门号 int(11) NOT NULL, 职工号 int(11) NOT NULL, 工作时间 date NOT NULL, 工资 float(8,2) NOT NULL, 政......
  • 打卡信奥刷题(583)用C++信奥P7724[普及组/提高] 远古档案馆(Ancient Archive)
    远古档案馆(AncientArchive)题目背景为了揭开月光能量背后的秘密,你来到了地下的远古档案馆。远古一族的秘密与遗忘的知识悉数贮藏于这片被尘封的迷宫中,你能成功解谜,获知远古的知识吗?题目描述远古档案馆的中心是一个解谜:有一个......
  • ros2笔记-5.3 C++中地图坐标系变换
    本节继续跟小鱼老师学习5.3.需求背景:地图坐标系为map,机器人坐标系为baselink,目标点为target_point,已知map到baselink之间的关系,map到target_point关系。要控制机器人到达目标点,就需要知道目标点target_point和机器人base_link之间的关系。5.3.1通过C++发布静态TF目标......
  • 深入了解 C++ 函数模板
    函数模板是C++泛型编程的基石之一,它使得程序员可以编写类型无关的代码,提升代码复用性和灵活性.在本文中,我们将从基础到进阶,一步步解析C++函数模板的核心概念,常见用法及其限制.1.初识函数模板1.1定义函数模板:以Max函数为例函数模板允许我们定义一个......
  • 【DNS攻防】深入探讨DNS数据包注入与DNS中毒攻击检测 (C/C++代码实现)
    DNS数据包注入和DNS中毒攻击是网络安全领域中的两个重要主题。DNS(域名系统)是互联网中的一项核心服务,负责将域名转换为与之相对应的IP地址。DNS数据包注入是指攻击者通过篡改或伪造DNS请求或响应数据包来干扰或破坏DNS服务的过程。攻击者可通过注入恶意数据包来改变DNS解析结果,将......
  • C++学习
    引入根据菜鸟教程学习,供自用打印helloworld#include<iostream>usingnamespacestd;intmain(){cout<<"HelloWorld"<<"\n";return0;}现象PSC:\Users\86177>cd"d:\DeskTop\cppstudy\";if($?){......
  • Text1-综合练习4
    Text-综合练习4猜数字游戏用随机数生成一个1-100之间的数字如果猜的打了就打印大了,如果猜的小了就打印小了如果猜中了就打印猜中了!Randomnum=newRandom();intnumber=num.nextInt(100)+1;//生成1-100之间的随机数Scannernum1=newScanner(System.in);......