C/C++每日一练(20230402) 最大数和最小数、数组排序、按要求输入输出

文章提供了三道编程基础题目,包括找一组整数中的最大值和最小值、对偶数长度数组进行特定条件的排序以及处理包含学号、姓名和成绩的学生信息输入输出。题目涉及C++、Python等语言的实现。

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

目录

1. 找最大数和最小数  ※

2. 数组排序  ※

3. 按要求完成数据的输入输出  ※

🌟 每日一练刷题专栏 🌟

Golang每日一练 专栏

Python每日一练 专栏

C/C++每日一练 专栏

Java每日一练 专栏

标注 ※ 为入门基础题,今天什么好日子CSDN挑了3道都是入门题。


1. 找最大数和最小数

编写程序,设置正整数n的值,其中n取值为小于等于10的正整数,再继续输入n个整数数值,从n个整数中找出最大数和最小数,并将它们输出。

输入格式:

n的数值(取值为1-10整数) n个具体整数值

输出格式:

最大值 最小值

输入样例1:

4 8 3 4 1

输出样例1:

8 1

输入样例2:

5 -1 6 3 2 0

输出样例2:

6 -1

出处:

https://edu.csdn.net/practice/24525979

代码:

#include <iostream>
using namespace std;
int main()
{
    int n;
    cin >> n;
    int ma, mi, a;
    cin >> a;
    mi = ma = a;
    for (int i = 1; i < n; i++)
    {
        cin >> a;
        if (ma < a) ma = a;
        if (mi > a) mi = a;
    }
    cout << ma << endl << mi << endl;
}

输入输出:

4 8 3 4 1
8 1


2. 数组排序

给定n(n是偶数,且n≤100)个正整数,所有正整数均≤10000;从前往后依次遍历这个数组,每两个为一组进行处理,若一组中的任意一个元素能被3或者5整除,则交换这两个元素的位置;否则不动;全部处理完成后,逆序输出整个数组。例如:

给定序列: 99 35 83 38
处理完成后得到:38 83 99 35
给定序列: 6 7 3 4
处理完成后得到:3 4 6 7

以下程序实现了这一功能,请你填补空白处的内容:

```c
#include <stdio.h>
#include <math.h>
int main()
{
    int i, j, n, a[10005], t;
    scanf("%d", &n);
    for (i = 0; i < n; i++)
    {
        scanf("%d", &a[i]);
        if (i % 2 == 1)
        {
            __________________;
        }
    }
    for (i = n - 1; i >= 0; i--)
    {
        printf("%d ", a[i]);
    }
}
```

出处:

https://edu.csdn.net/practice/24525980

代码:

#include <stdio.h>
#include <math.h>
int main()
{
    int i, j, n, a[10005], t;
    scanf("%d", &n);
    for (i = 0; i < n; i++)
    {
        scanf("%d", &a[i]);
        if (i % 2 == 1)
        {
			if ((a[i] % 3 == 0) || (a[i] % 5 == 0) || (a[i - 1] % 3 == 0) || (a[i - 1] % 5 == 0))
			{
			    t = a[i];
			    a[i] = a[i - 1];
			    a[i - 1] = t;
			}
        }
    }
    for (i = n - 1; i >= 0; i--)
    {
        printf("%d ", a[i]);
    }
}

输入输出:

4
99 35 83 38
38 83 99 35
--------------------------------

4
6 7 3 4
3 4 6 7


3. 按要求完成数据的输入输出

有6个学生,每个学生的数据包括学号、姓名、3门课的成绩、平均成绩,输入每个学生的信息,平均成绩需通过计算得出,输出学生的信息。

要求:输入、输出不使用函数。

出处:

https://edu.csdn.net/practice/24525981

代码:

#include<stdio.h>
#include<string.h>
#include<stdlib.h>

struct person
{
    char id [20];
    char name [20];
    int s1,s2,s3;
    int sum;
    float ave;
} p[100];

int main()
{
    int i,j,t,m,n;
    scanf("%d",&n);
    for(int i=0; i<n; i++)
    {
        p[i].sum=0;
        scanf("%s %s %d %d %d",p[i].id,p[i].name,&p[i].s1,&p[i].s2,&p[i].s3);
        p[i].sum+=p[i].s1+p[i].s2+p[i].s3;
        p[i].ave=p[i].sum/3.0;
    }
    for(i=0; i<n; i++)
    {
        printf("%s %s %d %d %d %.2f\n",p[i].id,p[i].name,p[i].s1,p[i].s2,p[i].s3,p[i].ave);
    }
    return 0;
}

输入输出:


🌟 每日一练刷题专栏 🌟

持续,努力奋斗做强刷题搬运工!

👍 点赞,你的认可是我坚持的动力! 

🌟 收藏,你的青睐是我努力的方向! 

评论,你的意见是我进步的财富!  

 主页:https://hannyang.blog.csdn.net/

Golang每日一练 专栏

Python每日一练 专栏

C/C++每日一练 专栏

Java每日一练 专栏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hann Yang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值