当前位置: 首页 > news >正文

C语言基础:数组练习题

//1. 键盘录入一组数列,利用冒泡排序将数据由大到小排序
//#include <stdio.h>
//
//int main() {
//    int n;
//    printf("请输入数列的长度:");
//    scanf("%d", &n);
//
//    int arr[n];
//    printf("请输入数列中的数:\n");
//    for (int i = 0; i < n; i++) {scanf("%d", &arr[i]);}
//
//    int i, j, temp;
//    // 从大到小
//    for (i = 0; i < n - 1; i++) {
//        for (j = 0; j < n - i - 1; j++) {
//            if (arr[j] < arr[j + 1]) {
//                temp        = arr[j];
//                arr[j]        = arr[j + 1];
//                arr[j + 1] = temp;
//            }
//        }
//    }
//    printf("从大到小排序后的数列:");
//    for (int i = 0; i < n; i++) {printf("%d ", arr[i]);}
//    printf("\n");
//
//    return 0;
//}

//2. 从键盘输入年、月、日,计算并输出该日是该年第几天
//#include <stdio.h>
//
//int main (){
//    
//    int year,month,day;
//    printf("请输入年月日:"); 
//    scanf("%d %d %d",&year, &month, &day);
//    
//    int months [12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
//    
//    if (year % 4 == 0 && year % 10 != 0 || year % 400 == 0){
//        months [1] = 29; 
//    }
//    int i, sum = 0;
//    for (i = 0 ; i <= month - 2 ; i++){
//        sum += months[ i ];
//    }
//    sum = sum + day;
//    printf("%d",sum);
//    
//    return 0;
//}

//3. 键盘录入一组数列,求最大数、最小数、均值
//#include <stdio.h>
//
//int main() {
//    int n;
//    printf("请输入数列的长度:");
//    scanf("%d", &n);
//
//    int arr[n];
//    printf("请输入数列中的数:\n");
//    for (int i = 0; i < n; i++) {
//        scanf("%d", &arr[i]);
//    }
//
//    int max = arr[0];
//    int min = arr[0];
//    int sum = 0;
//
//    for (int i = 0; i < n; i++) {
//        
//        if (arr[i] > max) {
//            max = arr[i];
//        }
//        
//        if (arr[i] < min) {
//            min = arr[i];
//        }
//        
//        sum += arr[i];
//    }
//    
//    double mean;
//    mean = (double)sum / n;
//
//    printf("最大数:%d\n", max);
//    printf("最小数:%d\n", min);
//    printf("均  值:%.2f\n", mean);
//
//    return 0;
//}

//4. 从键盘录入一组数列,判断是否是回文,举例:12321,abba,121
//#include <stdio.h>
//
//int main() {
//    int n;
//    printf("请输入数列的长度:");
//    scanf("%d", &n);
//
//    int i, arr[n];
//    printf("请输入数列中的数:\n");
//    for (int i = 0; i < n; i++) {
//        scanf("%d", &arr[i]);
//    }
//    i = 0;
//    
//    int Palindrome = 1;
//    for (i = 0; i < n / 2; i++) {
//        if (arr[i] != arr[n - 1 - i]) {
//            Palindrome = 0;
//            break;
//        }
//    }
//
//    if (Palindrome) {
//        printf("是回文数列\n");
//    } else {
//        printf("不是回文数列\n");
//    }
//
//    return 0;
//}

//5. 用数组存储10个整型数,通过键盘输入一个数,找出该数在数组中的下标值
//#include <stdio.h>
//
//int main() {
//    int i, arr[10];
//    printf("输入 10 个整数:\n");
//    for (i = 0; i < 10; i++) {
//        scanf("%d", &arr[i]);
//    }
//    i = 0;
//    
//    int num;
//    printf("输入要查找的数:");
//    scanf("%d", &num);
//
//    int index = -1;//index:下标 
//    for (i = 0; i < 10; i++) {
//        if (arr[i] == num) {
//            index = i;
//            
//            if (index != -1) {
//                printf("下标是:%d\n", index);
//            } 
//        }
//    }
//    return 0;
//}

//6. 通过键盘输入 10 个学员成绩: 
//1)输出不及格学员的成绩和下标。 
//2)求最高分的下标值 
//3)求最低成绩的下标值 
//4)求总成绩及平均成绩
//#include <stdio.h>
//
//int main() {
//    float scores[10];
//    printf("请输入10个学员的成绩:\n");
//    for (int i = 0; i < 10; i++) {
//        scanf("%f", &scores[i]);
//    }
//
//    printf("不及格学员:\n");
//    int failCount = 0;
//    for (int i = 0; i < 10; i++) {
//        if (scores[i] < 60) {
//            printf("下标:%d,成绩:%.1f\n", i, scores[i]);
//            failCount++;
//        }
//    }
//    if (failCount == 0) {
//        printf("没有不及格的学员\n");
//    }
//
//    int maxIndex = 0;
//    for (int i = 1; i < 10; i++) {
//        if (scores[i] > scores[maxIndex]) {
//            maxIndex = i;
//        }
//    }
//    printf("最高分的下标:%d\n", maxIndex);
//
//    int minIndex = 0;
//    for (int i = 1; i < 10; i++) {
//        if (scores[i] < scores[minIndex]) {
//            minIndex = i;
//        }
//    }
//    printf("最低分的下标:%d\n", minIndex);
//
//    float total = 0;
//    for (int i = 0; i < 10; i++) {
//        total += scores[i];
//    }
//    float average = total / 10;
//    printf("总成绩:  %.1f\n", total);
//    printf("平均成绩:%.1f\n", average);
//
//    return 0;
//}

http://www.dtcms.com/a/285830.html

相关文章:

  • Zabbix安装-Server
  • 【JS笔记】Java Script学习笔记
  • 【C语言进阶】题目练习(2)
  • react控制react Popover组件显示隐藏
  • Vue3 中使用 Element Plus 实现自定义按钮的 ElNotification 提示框
  • WAF 能防御哪些攻击?
  • logback日志控制服务器日志输出
  • Leetcode刷题营第三十三题:对称二叉树
  • Gitee 远程库多人如何协作?
  • gitlab-runner配置问题记录
  • hive分区表临时加载日批数据文件
  • TapData 出席 2025 MongoDB 用户大会新加坡站,分享构建实时统一数据平台最佳实践
  • day24 力扣93.复原IP地址 力扣78.子集 力扣90.子集II
  • 【基座模型】Qwen3报告总结
  • 告别 addEventListener
  • effective python 条款11 学会对序列做切片
  • 人脸检测算法——SCRFD
  • 智能Agent场景实战指南 Day 16:Agent记忆系统设计
  • 解决 Selenium 页面跳转过快导致的内容获取问题:从原理到实践
  • 基于ROS2进行相机标定,并通过测试相机到棋盘格之间的距离进行验证
  • 大模型格式
  • (一)Eshop(异常处理中间件)
  • 工业数据集成中间件工具OPC Router详细介绍
  • Prompt:开启与AI高效对话的钥匙
  • pycharm windows/linux/mac快捷键
  • Ubuntu18.04开机启动执行脚本
  • 算法-查找算法
  • Git分支管理与Stash技巧:从基础到高级工作流详解
  • C++ - 仿 RabbitMQ 实现消息队列--需求分析与模块设计
  • # Redis-stable 如何在Linux系统上安装和配置