练习题:一维数组

练习题

第一题

键盘录入一组数列,利用冒泡排序将数据由大到小排序

代码

#include <stdio.h>

int arr_home01()
{

  int arr[10];
  int i,j,temp;

  printf("请输入10个测试整数:\n");

  int len = sizeof(arr) / sizeof(arr[0]);

  for(i = 0;i < len;i++)
  {
    scanf("%d",&arr[i]);
  }
  printf("\n");

  for(i = 0;i < len - 1;i++)
  {
    for(j = 0;j < len - 1 - i;j++)
    {
      if (arr[j] < arr[j+1])
      {
        temp = arr[j];
        arr[j] = arr[j+1];
        arr[j+1] = temp;
      }
    }
  }
  printf("冒泡排序遍历数组:\n");

  for (i = 0; i < len; i++)
  {
    printf("%-4d",arr[i]);
  }
  printf("\n");
}
int main(int argc,char *argv)
{
    arr_home01();
    return 0;
}

运行结果

在这里插入图片描述

第二题

从键盘输入年、月、日,计算并输出该日是该年第几天

代码

include <stdio.h>

int main(int argc,char *argv[])
{

    int year,month,day,sum,k;

    int t[] = {31,28,31,30,31,30,31,31,30,31,30,31};

    printf("请输入年、月、日:\n");
    scanf("%d-%d-%d",&year,&month,&day);

    if ((year % 4 == 0 && year %100 != 0) || year % 400 == 0)
    {
      t[1] = 29;
    }

    sum = day;

    for(k = 0;k < month - 1;k++)
    {
      sum += t[k];
    }

    printf("%d月%d日是%d年的第%d天。\n",month,day,year,sum);
    
    return 0;
}

运行结果

在这里插入图片描述

第三题

键盘录入一组数列,求最大数、最小数、均值

代码

#include <stdio.h>

int main(int argc, char *argv[])
{
  int arr[10];
  int i, n, max, min, average;
  int sum = 0;

  printf("请输入数列的长度:\n");
  scanf("%d", &n);

  if (n <= 0 || n > 5)
  {
    printf("输入的长度无效,请输入1~20的整数!\n");
    return 1;
  }

  printf("请输入数列中的数:\n");

  for (i = 0; i < n; i++)
  {
    printf("第%d个数:", i + 1);
    scanf("%d", &arr[i]);
  }

  for (int i = 0; i < n; i++)
  {
    sum += arr[i];

    if (arr[i] > max)
    {
      max = arr[i];
    }
    if (arr[i] < min)
    {
      min = arr[i];
    }
  }

  average = sum / n;

  printf("最大数:%d\n", max);
  printf("最小数:%d\n", min);
  printf("平均数:%d\n", average);

  return 0;
}

运行结果

在这里插入图片描述

第四题

从键盘录入一组数列,判断是否是回文,举例:12321,abba,12

代码

#include <stdio.h>

int main()
{
  int n;                // 定义一个变量,表示数列的长度
  int arr[100];     // 定义一个数组
  int number = 1; // 用来判断输入的回文数是否正确

  printf("请输入数列的长度:\n");
  scanf("%d", &n);

  if (n <= 0 || n > 100)
  {
    printf("输入的长度不合法,请输入1到100之间的整数。\n");
    return 1; 
  }

  printf("请输入数列的元素(以空格分隔):\n");
  for (int i = 0; i < n; i++)
  {
    scanf("%d", &arr[i]);
  }

  for (int i = 0; i < n / 2; i++)
  {
    if (arr[i] != arr[n - 1 - i])
    {
      number = 0; 
      break;            
    }
  }

  if (number)
  {
    printf("该数列是回文。\n");
  }
  else
  {
    printf("该数列不是回文。\n");
  }

  return 0; 
}

运行结果

在这里插入图片描述

第五题

用数组存储10个整型数,通过键盘输入一个数,找出该数在数组中的下标值;

代码

#include <stdio.h>

int main()
{
  int arr[5];    // 声明一个包含10个整型数的一维数组
  int number;  // 声明用于存储用户输入要查找的数的变量
  int found = 0;  // 声明一个标志变量,用于标记是否找到目标数
  int index = 0; // 声明一个变量用于存储找到的目标数的下标

  printf("请输入5个整型数:\n");
  for (int i = 0; i < 5; i++)
  {
    scanf("%d", &arr[i]);
  }

  // 提示用户输入要查找的数
  printf("请输入要查找的数:\n");
  scanf("%d", &number);

  // 遍历数组,查找目标数
  for (int i = 0; i < 5; i++)
  {
    if (arr[i] == number)
    {
      found = 1; // 找到目标数,将标志变量设置为1
      index = i; // 记录目标数的下标
      break;     // 找到后退出循环
    }
  }

  // 根据查找结果输出相应信息
  if (found)
  {
    printf("数 %d 在数组中的下标是:%d\n", number, index);
  }
  else
  {
    printf("在数组中未找到数 %d\n", number);
  }

  return 0; // 程序正常结束
}

运行结果

在这里插入图片描述

第六题

通过键盘输入 10 个学员成绩, 1)输出不及格学员的成绩和下标。 2)求最高分的下标值 3)求最低成绩的下标值 4)求总成绩及平均成绩

代码

#include <stdio.h>

int main(int argc, char *argv[])
{
  int arr[10];
  int max = 0, min = 100, sum = 0;
  int maxIndex = -1, minIndex = -1; // 初始化索引变量
  float average;
  int len = sizeof(arr) / sizeof(arr[0]);

  printf("请输入10个学员的成绩\n");
  for (int i = 0; i < len; i++)
  {
    scanf("%d", &arr[i]);
  }

  for (int i = 0; i < len; i++)
  {
    if (arr[i] < 60)
    {
      printf("不及格学员的成绩是:%d, 下标为:%d\n", arr[i], i);
    }

    if (arr[i] > max)
    {
      max = arr[i];
      maxIndex = i;
    }

    if (arr[i] < min)
    {
      min = arr[i];
      minIndex = i;
    }

    sum += arr[i];
  }

  average = sum / 10.0;
  printf("最高分的下标是:%d\n最低分的下标是:%d\n总成绩是:%d\n平均成绩是:%.2f\n", maxIndex, minIndex, sum, average);

  return 0;
}

运行结果

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/940314.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于LR/GNB/SVM/KNN/DT算法的鸢尾花分类和K-Means算法的聚类分析

花瓣轮廓&#xff1a; 分类与聚类 使用各种模型进行鸢尾花分类和聚类 1. | 介绍 &#x1f44b; &#x1f914; 数据集问题 鸢尾花分类项目是使用简单数据集实现机器学习模型的实际演示。数据集本身包含有关花瓣和萼片大小的信息&#xff0c;包括鸢尾属物种。通过分析鸢尾花的…

创新驱动医疗变革:SSM+Vue 医院预约挂号系统的设计与实践

1系统概述 1.1 研究背景 随着计算机技术的发展以及计算机网络的逐渐普及&#xff0c;互联网成为人们查找信息的重要场所&#xff0c;二十一世纪是信息的时代&#xff0c;所以信息的管理显得特别重要。因此&#xff0c;使用计算机来管理医院预约挂号系统的相关信息成为必然。开发…

【Java】HashMap的简单教程

HashMap 是 Java 中最常用的数据结构之一&#xff0c;属于 java.util 包&#xff0c;主要用于以键值对&#xff08;key-value&#xff09;形式存储数据。 基本用法 1.创建 HashMap 使用泛型&#xff0c;存储键值对。 import java.util.HashMap;HashMap<KeyType, ValueTy…

windwos defender实现白名单效果(除了指定应用或端口其它一律禁止)禁止服务器上网

一、应用场景说明 当我们的一台windows服务器中毒&#xff0c;变成别人肉鸡&#xff0c;不断向外请示非法网站或攻击其它服务器。 要彻底清除相关木马或病毒往往需要的时间比较长&#xff0c;比较有效的方法是禁止服务器主动向外发包除了网站端口和远程程序除外。 其实这就是一…

免费送源码:Java+ssm++MVC+HTML+CSS+MySQL springboot 社区医院信息管理系统的设计与实现 计算机毕业设计原创定制

摘 要 随着互联网趋势的到来&#xff0c;各行各业都在考虑利用互联网将自己推广出去&#xff0c;最好方式就是建立自己的互联网系统&#xff0c;并对其进行维护和管理。在现实运用中&#xff0c;应用软件的工作规则和开发步骤&#xff0c;采用Java技术建设社区医院信息管理系统…

AI的进阶之路:从机器学习到深度学习的演变(四)

AI的进阶之路&#xff1a;从机器学习到深度学习的演变&#xff08;三&#xff09; 五、深度学习的应用领域 深度学习的应用领域广泛&#xff0c;涵盖了计算机视觉、自然语言处理、语音识别和推荐系统等多个方面。以下将详细探讨这些关键应用领域&#xff0c;展示深度学习在不同…

electron-vite【实战】自定义标题栏【组件封装】(含异形标题栏,指定区域拖拽,窗口置顶,窗口最小化,窗口最大化,取消最大化,隐藏窗口到托盘等)

效果预览 技术要点 透明背景 src/main/index.ts 的 new BrowserWindow 中添加 transparent: true, // 设置窗口背景透明frame: false, // 隐藏窗口边框仅图标和标题部分可拖拽 仅图标和标题部分添加样式 drag .drag {-webkit-app-region: drag; }图标与标题栏的融合 标题栏的…

[react] 获取ant组件ref用ts如何定义?

获取ant的轮播图组件, 我用ts如何定义? import React, { ElementRef } from react; const lunboRef useRef<ElementRef<typeof Carousel>>(null); <Carousel autoplay ref{lunboRef}> 这样就行了! ,然后点一下看看.弹出提示了 当然你还可以用ant内置的G…

springboot中Controller内文件上传到本地以及阿里云

上传文件的基本操作 <form action"/upload" method"post" enctype"multipart/form-data"> <h1>登录</h1> 姓名&#xff1a;<input type"text" name"username" required><br> 年龄&#xf…

python 曲线拟合,曲线拟合交点

目录 效果图: 源代码: 效果图: 源代码: import json import os import shutilimport cv2 import numpy as npfrom numpy.polynomial.polynomial import Polynomialdef calculate_distance(x1, y1, x2, y2):return np.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2)def get_new_g…

java 集合对象

Java 基础之集合_java集合继承关系图-CSDN博客 集合可以有序或无序&#xff0c;重复或不能重复&#xff0c;空或不能空。 List<> 集合&#xff0c;是有序&#xff0c;允许重复元素&#xff0c;允许空元素 1、ArrayList<> 非线程安全 2、LInkedList<> 非线…

【零基础学习UDS诊断测试】——0x27测试用例设计

从0开始学习CANoe使用 从0开始学习车载测试 相信时间的力量 星光不负赶路者,时光不负有心人。 目录 1.概述 2.响应情况 3.测试点解析 4.0x27诊断调查表 5.详细用例展示 1.概述 UDS(统一诊断服务)中的0x27服务,即安全访问服务(Security Access Service),其主要作用…

【BUG记录】Apifox 参数传入 + 号变成空格的 BUG

文章目录 1. 问题描述2. 原因2.1 编码2.2 解码 3. 解决方法 1. 问题描述 之前写了一个接口&#xff0c;用 Apifox 请求&#xff0c;参数传入一个 86 的电话&#xff0c;结果到服务器 就变成空格了。 Java 接收请求的接口&#xff1a; 2. 原因 2.1 编码 进行 URL 请求的…

视频直播点播平台EasyDSS推拉流技术结合无人机推流在道路交通巡检场景中的应用

随着城市化进程的加速&#xff0c;交通网络日益复杂&#xff0c;交通巡检工作面临着前所未有的挑战。传统的巡检方式往往依赖于人工巡查或地面监控设备&#xff0c;但这些方法存在巡检范围有限、效率低下等缺点。 无人机凭借其高空视野、灵活机动、实时监控等优势&#xff0c;…

git仓库的基本概念和流程以及一些基本命令

什么是版本库&#xff1f;版本库又名仓库&#xff0c;英文名repository,你可以简单的理解一个目录&#xff0c;这个目录里面的所有文件都可以被Git管理起来&#xff0c;每个文件的修改&#xff0c;删除&#xff0c;Git都能跟踪&#xff0c;以便任何时刻都可以追踪历史&#xff…

2025erp系统开源免费进销存系统搭建教程/功能介绍/上线即可运营软件平台源码

系统介绍 基于ThinkPHP与LayUI构建的全方位进销存解决方案 本系统集成了采购、销售、零售、多仓库管理、财务管理等核心功能模块&#xff0c;旨在为企业提供一站式进销存管理体验。借助详尽的报表分析和灵活的设置选项&#xff0c;企业可实现精细化管理&#xff0c;提升运营效…

2024技能大赛Vue流程复现

1. 关于版本的控制 vue/cli 5.0.8vscode 最新下载版本 2. 创建vuecli项目 若没有安装vuecli则可以先安装 npm install -g vue/cli # 默认下载最新版本。vue --version vue -V # 查看版本&#xff0c;两个选一 使用vuecli来创建一个新的vue项目&#xff0c;vs code打开…

Qwen2.5-7B-Instruct FastApi部署与调用

Qwen2.5-7B-Instruct FastApi 部署调用 环境准备 本文基础环境如下&#xff1a; ---------------- ubuntu 22.04 python 3.12 cuda 12.1 pytorch 2.3.0 ----------------本文默认学习者已安装好以上 Pytorch(cuda) 环境&#xff0c;如未安装请自行安装。 首先 pip 换源加速下…

【Vue3学习】ref,reactive,toRef,toRefs的功能与用法区别

在 Vue 3 的组合式 API&#xff08;Composition API&#xff09;中&#xff0c;ref、reactive、toRef 和 toRefs 是四个非常重要的工具函数&#xff0c;用于创建和管理响应式数据。 一、ref 用ref()包裹数据,返回的响应式引用对象&#xff0c;包含一个 .value 属性&#xff0…

【面试 - 遇到的问题】Vue 里 router-view 使用 key + 关闭页面后重新打开页面-获取的数据赋值到旧组件问题(钩子执行顺序)

目录 【1】问题描述【2】问题排查前 - 页面渲染、tag 页签渲染 逻辑梳理页面渲染【借用别人的描述】<router-view :key"key" />1. 不设置key 属性2. 设置 key 属性值为 $route.path/page/1 > /page/2/page?id1 > /page?id2, 3. 设置 key 属性值为 $rou…