d别小于零就可以了。
#define _CRT_SECURE_NO_DEPRECATE
#include <stdio.h>
#include <math.h>
#include<stdlib.h>
int flag = 1;
float a, b, c, d, x1, x2;
void input()
{
    printf("输入a,b,c,\n");
    scanf("%f%f%f", &a, &b, &c);
}
void check()
{
    d = b*b - 4.0*a*c;
    if (d < 0)
    {
        printf("输入错误!\n");
        printf("请重新输入数据:\n");
        input();
    }
    if (d>0)
        flag = 0;
}
void output()
{
    x1 = (b - sqrt(d)) / (2.0*a);
    x2 = (b + sqrt(d)) / (2.0*a);
    printf("%.2f\n", x1);
    printf("%.2f\n", x2);
}
int main(void)
{
    input();
    while (flag)
    {
        check();
    }
    output();
    system("pause");
}