|  | 
 
| 
输入多行a,b,c的值,分别输出每一行的解
x
马上注册,结交更多好友,享用更多功能^_^您需要 登录 才可以下载或查看,没有账号?立即注册  
 
 复制代码#include<stdio.h>
#include<math.h>
void fun(int a[][3] ,int n)
{
 
   float p;
   for(int i=0;i<n;i++)
   {   int a1,b,c;
       a1=a[i][0];  b=a[i][1];  c=a[i][2];
       p=(float)b*b-4*a1*c;                         //一元二次方程方程的判别式 
       printf("%d,%d,%d,%.3f   ",a1,b,c,p);
           if(p=0)                                  //从这开始是判别式的三个情况 
           printf("x1=x2=%.3f\n",(-b)/2.0*a1);
             else if(p>0)
                         printf("x1=%.3f  x2=%.3f\n",((-b)+sqrt(p))/(4.0*a1),((-b)+sqrt(p))/(4.0*a1)); 
                           else
                             printf("x1=%.3f+(%.3fi)  x2=%.3f-(%.3fi)\n",-b/(2.0*a1),sqrt(-p)/(2*a1),-b/(2.0*a1),sqrt(-p)/(2*a1));            
   }
}
main()
{
  int a[100][3],n,i,j;
  printf("所需的行数:");   
  scanf("%d",&n);             //输入多少行
  for(i=0;i<n;i++)
    for(j=0;j<3;j++)
       scanf("%d",&a[i][j]);   //输入数组 
       fun(a,n);
}
结果
 复制代码所需的行数:1
1 4 4
1,4,4,0.000   x1=-2.000+(-0.000i)  x2=-2.000-(-0.000i)
 为什么p的值没有呀,大佬们
 
  a[0][0]=1,a[0][1]=4,a[0][2]=4
 a1=a[i][0];  b=a[i][1];  c=a[i][2]
 a1=1,b=4,c=4
 
 p=(float)b*b-4*a1*c;
 p=4*4-4*1*4
 p=16-16
 | 
 |