鱼C论坛

 找回密码
 立即注册
查看: 4250|回复: 9

同学们!为什么我int变量赋值给float,打印出来是这样?

[复制链接]
发表于 2022-10-17 22:26:50 | 显示全部楼层
#include <stdio.h>
int main(){
        float x,y;    //这为float类型的对应是%f ,用%d当然会有问题了
        scanf("%d",&x);  //用%d来输出准确来说是有值的但是由于格式符不对输入的是乱码,应该会被判断有值
                                 //所以会执行第二if语句
        if(-5<x && x<0){
                printf("x=%.2f,y=%.2f",x,y=-x+4);
        }
        //===================================================
        else if(0<x && x<5){
                printf("x=%.2f,y=%.2f",x,y=x*x+1);//这行!这行!
        }
        //===================================================
        else if(x == 0){
                printf("x=%.2f,y=0.00",x);
        }
        else{
                printf("No meaning");
        }
        return 0;
}
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-9-22 02:54

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表