解题思路:(1),用数组加循环(一般而言,数组和循环同时存在(不过此法适用于数组数不定的题,即数组元素较多));

              (2),类似循环,连续使用max(最大),再加上三目运算符;

              (3),用三目运算符进行嵌套;

注意事项:好像此题题目不支持数组,可能是大了

参考代码:

(1)【】

#include  < stdio.h>

int main()

{

    int a[3];

    int i = 0; 

    for (i = 0; i <= 2; i++)

    {

        scanf_s("%d", &a[i]);

    }

    int max = a[0];

    for (i = 0; i <= 1; i++)

      {

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

     }

    printf("%d", max);

}

(2)

#include<stdio.h>

int main()

{

    

    int a, b, c, max;

    scanf("%d%d%d",&a,&b,&c);

    max = a > b ? a : b;

    max = max > c ? max : c;

    printf("%d",max);

    return 0;//非必写

}

(3)//此处使用的三目运算符相当于if-else,而嵌套相当于是循环

#include <stdio.h>

int main()

{

    int a, b, c;

    scanf("%d%d%d", &a, &b, &c);

    a = ( a = a > b ? a : b) > c ? a : c;

    printf("%d", a);

}


点赞(0)
 

0.0分

2 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 2 条评论

s99q 3年前 回复TA
@Amadeus 你的函数头错了
Amadeus 3年前 回复TA
#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>

int max = (int a, int b);
int max = (int a, int b)
{
    if (a > b)
   return a;
    else
        return b;

}

int main()
{
    



    int a[3];
    int i = 0;
    for (i = 0; i < 3; i++)
    {
        scanf("%d", &a[i]);
         
    }
    int mass = max(a[0], a[1]);
    int mass2 = max(mass, a[2]);
    printf("%d", mass2);
    return 0;
}
想写个函数,可是不知道哪里出错了,求指点