C.5

news/2025/1/15 21:45:35/

//1、随机产生20[10 , 50]的正整数存到数组中,并求数组中的所有元素最大值、最小值、平均值以及各元素之和,及第二大值。

    /*

    int a[20] = {0};

    for (int i = 0; i < 20; i ++) {

        a[i] = arc4random() % 41 + 10;

        printf("%d ", a[i]);

    }

    int max = 0, min = a[0],  secondMax = 0, sum = 0;

    float avg = 0.0;

    for (int i = 0; i < 20; i ++) {

        max = max > a[i] ? max : a[i];

    }

    for (int i = 0; i < 20; i ++) {

        if (a[i] < max && a[i] > secondMax) {

            secondMax = a[i];

        }

               min = min < a[i] ? min : a[i];

        sum += a[i];

    }

    avg = sum / 20.0;

    printf("\nmax = %d min = %d avg = %f sum = %d secondMax = %d", max, min, avg, sum, secondMax);

     */

   // 2.编程在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,用空格来分隔单词。

    /*

    char a[] = "asdgf gs ysgfyg aygrfjksdf jfg sygfwygrf";

    int i = 0, maxlength = 0, length = 0, lengthInde = 0;

    while (a[i] != '\0') {

        if (a[i] != ' ') {

            length ++;

        } else if(length > maxlength){

            maxlength = length;

            lengthInde = i - maxlength;

            length = 0;

          }

        if(length > maxlength && a[i] == ' '){

            maxlength = length;

            lengthInde = i - maxlength;

        }

        i ++;

    }

    printf("%d", maxlength);

    printf("\n%d", lengthInde);

    printf("\n");

    i = 0;

//    while (a[i] !='\0') {

//        if (i >= lengthInde && i < maxlength + lengthInde) {

//            printf("%c", a[i]);

//        }

//        i ++;

    for (i = lengthInde; i < lengthInde + maxlength; i ++) {

        printf("%c", a[i]);

    }

     */

    //3、耶稣有13个门徒,其中有一个就是出卖耶稣的叛徒,请用排除法找出这位叛徒:13人围坐一圈,从第一个开始报号:123123...。凡是报到“3”就退出圈子,最后留在圈子内的人就是出卖耶稣的叛徒。请找出它原来的序号。

    /*

    int a[13] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13};

    int num = 13, i = 0, count = 0;

    while (num > 1) {

        if (a[i] > 0) {

            count ++;

            if (count == 3) {

                a[i] = 0;

                count = 0;

                num --;

            }

        }

        i ++;

        if (i > 12) {

            i = 0;

        }

    }

    for (int i = 0; i < 13; i ++) {

        if (a[i] != 0) {

            printf("%d", a[i]);

        }

    }

    */

    //4.将两个排好序的数组,合并到另外一个数组中,并且合并之后的数组也是有序的。

    /*

    int a[10] = {0}, b[12] = {0}, c[22] = {0};

    for (int i = 0; i < 10; i ++) {

        a[i] = arc4random() % 21 + 10;

        printf("%d ", a[i]);

    }

    printf("\n");

    for (int i = 0; i < 12; i ++) {

        b[i] = arc4random() % 21 + 10;

        printf("%d ", b[i]);

    }

    printf("\n");

    for (int i = 0; i < 9; i ++) {

        for (int j = 0; j < 9 - i; j ++) {

            if (a[j] > a[j + 1]) {

                int temp = a[j];

                a[j] = a[j + 1];

                a[j + 1] = temp;

            }

        }

    }

        for (int i = 0; i < 10; i ++) {

        printf("%d ", a[i]);

    }

    printf("\n");

    for (int i = 0; i < 11; i ++) {

        for (int j = 0; j < 11 - i; j ++) {

            if (b[j] > b[j + 1]) {

                int temp = b[j];

                b[j] = b[j + 1];

                b[j + 1] = temp;

            }

        }

    }

    for (int i = 0; i < 12; i ++) {

        printf("%d ", b[i]);

    }

    printf("\n");

    int k = 0, i = 0, j = 0;

    while (i < 10 && j < 12) {

                if (a[i] > b[j]) {

                c[k] = b[j];

                k ++;

                j ++;

            } else {

                c[k] = a[i];

                k ++;

                i ++;

            }

        }

    while (i < 10) {

        c[k] = a[i];

        k ++;

        i ++;

    }

    while (j < 12) {

        c[k] = b[j];

        k ++;

        j ++;

    }

    for (int m = 0; m < 22; m ++) {

        printf("%d ", c[m]);

    }

    */

    //5.有一分数序列:2/13/25/38/513/821/13...求出这个数列的前20项之和。

    /*

    float a = 2, b = 1,fra = 0, sum = 0;

    for (int i = 0; i < 20; i  ++) {

        fra = a / b;

        int temp = a;

        a = a + b;

        b = temp;

        sum += fra;

    }

    printf("%f", sum);

    */

   //6,给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。

    /*

    printf("请输入一个不多余5位正整数:");

    int a = 0, i = 0;

    scanf("%d", &a);

    int b = a;

    while (b) {

        i ++;

        b = b / 10;

    }

    printf("%d", i);

    printf("\n");

    for (int j = 0; j < i; j ++) {

        printf("%d", a % 10);

        a = a / 10;

    }

    */

     //7.,一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。

    /*

    printf("输入一个5位数:");

    int a = 0;

    scanf("%d", &a);

    if (a % 10 == a / 10000 && ((a / 10) % 10) == ((a / 1000) % 10))

        {

            printf("a是回文数");

        } else {

            printf("a不是回文数");

        }

    */



http://www.ppmy.cn/news/343809.html

相关文章

5.c

1.完成猜数字游戏。 代码如下&#xff1a; #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <time.h> int main() {srand((unsigned int)time(NULL));int a ;int guess 0;guess rand() % 100 1;//printf("%d\n&…

商业竞争算法

前言&#xff1a;为什么会想起来写这块呢&#xff1f;可能与我目前所处的地域城市有关系吧&#xff0c;也可能与我见过的公司差异有关。 商业竞争算法 什么是商业竞争算法呢&#xff1f;简言之&#xff1a;商战&#xff0c;能够在竞争中产生优势的&#xff0c;且不易被替代的算…

【java 基础三 】- 正则表达式、枚举、equals等

一 枚举 1.1 定义 Java枚举是一种特殊的数据类型&#xff0c;用于表示有限个预设的值。它在Java语言中是一种类&#xff08;class&#xff09;类型&#xff0c;但又比普通的类类型多了些特殊的约束&#xff0c;这些约束使得枚举类型更加简洁、安全和便捷。枚举类型的名称必须…

华为网络设备查看风扇状态命令

描述&#xff1a;华为网络设备查看风扇状态命令 命令&#xff1a; display device fan

华为网络设备CPU和内存占用率检查命令方法

描述&#xff1a;华为网络设备CPU和内存占用率检查命令方法 方法&#xff1a; display cpu display memory

华为网络设备查看电源状态检查命令

描述&#xff1a;华为网络设备查看风扇状态电源状态检查命令 命令&#xff1a; display device fan

华为网络设备 display 命令

1. 常用命令 信息项 使用命令基本信息 display diagnostic-information设备信息 display device接口信息 display interface版本信息 display ver…

华为网络设备调试命令(日常总结)

上面这些都是很常见的调试命令&#xff0c;适用于华为&#xff0c;给大家做一下分享