1 solutions

  • 0
    @ 2025-11-5 16:01:23

    C :

    #include<stdio.h>
    #include<math.h>
    #include<stdlib.h>
    main()
    {
    	float a,b,c;
    	float delta,x1,x2;
    	const double zero = 1e-9;
    	int sign = 0;
    	scanf("%f,%f,%f",&a,&b,&c);
    	if(fabs(a)<zero)
    	{
    		printf("不是一元二次方程");
    		exit(0);
    	}
    	delta = b*b-4*a*c;
    	if(fabs(delta)<zero)
    	{
    		printf("%0.2f",-b/(2*a));
    	}
    	else
    	{
    		if(delta > 0)
    			sign = 1;
    		else
    			sign = 0;
    		delta = sqrt(fabs(delta));
    		x1 = -b/(2*a);
    		x2 = delta/(2*a);
    		if(sign)
    		{
    			printf("%0.2f,%0.2f",x1+x2,x1-x2);
    		}
    		else
    		{
    			printf("无实根");
    		}
    	}
    }
    
    • 1

    【设计型】第5章:选择控制结构 一元二次方程判断

    Information

    ID
    17446
    Time
    1000ms
    Memory
    128MiB
    Difficulty
    (None)
    Tags
    # Submissions
    0
    Accepted
    0
    Uploaded By