求解答一下,才学c语言一星期

img

按你的逻辑来写的话,代码如下:
如有帮助,请帮忙采纳一下,谢谢。

img

#include <stdio.h>

int main()
{
    int data1,data2,data3;
    int PX1,PX2,PX3;
    float dataS,dataR;

    printf("input.1: ");
    scanf("%d",&data1);
    printf("input.2: ");
    scanf("%d",&data2);
    printf("input.3: ");
    scanf("%d",&data3);

    dataS = (float)data1 + data2+data3;
    if (data1 >data2 && data2 > data3)
    {
        PX1 = data1; PX2 = data2;PX3=data3;
    }else if(data1 > data3 && data3 > data2 )
    {
        PX1 = data1;PX2 = data3;PX3 = data2;
    }else if(data2 > data1 && data1 > data3 )
    {
        PX1 = data2;PX2 = data1;PX3 = data3;
    }else if(data2 > data3 && data3 > data1 )
    {
        PX1 = data2;PX2 = data3;PX3 = data1;
    }else if(data3 > data1 && data1 > data2 )
    {
        PX1 = data3;PX2 = data1;PX3 = data2;
    }else
    {
        PX1 = data3;PX2 = data2;PX3 = data1;
    }

    dataR = dataS/3;

    if (data1 >0 && data2>0 && data3>0)
    {
        printf("dataS = %f ,dataR = %f \n",dataS,dataR);
        printf("No.1 = %d, No.2 = %d, No.3 = %d.\n",PX1,PX2,PX3);
    }else
        printf("请重新输入!\n");


    return 0;
}

if(data1>data2>data3)是错误写法,
改为:
if(data1 > data2 && data2 > data3)