看一下哪里错误,Pta练习,部分正确

img

img

img


感觉没错VS输出也跟他一样,输出的时候显示部分正确,不知道怎么回事,求指导,各位别误会,这不是考试,这就是个练习

修改如下,供参考:

#include <stdio.h>
int main()
{
    int L = 0, H = 0, S = 0, tmp;
    float y;
    scanf("%d %d %d", &L, &H, &S);
    if (L >= 0 && S > 0 && H >= 0) {
        if (L > H)
            tmp = L, L = H, H = tmp;    
        for (L, tmp = 0; L < H; tmp++, L += S)
        {
            if (tmp == 0) {
                printf("====华氏与摄氏温度对照表====\n");
                printf("华氏温度----摄氏温度");
            }
            y = (5.0 * (L - 32) / 9);
            y = y - (y - (int)y);
            printf("\n%d........%-6.2f", L, y);
        }
    }
    return 0;
}

可以把代码贴出来吗?

把printf中的int强制转换去掉啊

这样试试?

#include <stdio.h>

int main()
{
    int l;
    int h;
    int s;
    int swap;
    float ans;
    scanf("%d %d %d", &l, &h, &s);
    printf("====华氏与摄氏温度对照表====\n");
    printf("华氏温度----摄氏温度\n");
    if (s > 0 && l >= 0)
    {
        if (l > h)
        {
            swap = l;
            l = h;
            h = swap;
        }
        while (l < h)
        {
            ans = (int)((5.0 / 9) * (l - 32));
            printf("%d........%-6.2f\n", l, ans);
            l += s;
        }
    }
    return 0;
}