c语言判断一元二次方程是否有解,C语言(1)--解一元二次方程、将整数第五位清零、说谎、放鞭炮...

1.求一元二次方程的根

#include

#include

int main()

{

float a,b,c,x1,x2,m;

printf("请依次输入一元二次方程的二次项、一次项、常数项系数:");

scanf("%f,%f,%f",&a,&b,&c);

m=b*b-4*a*c;

if(a==0&&b==0)

{

if(c==0)printf("解有无数个\n");

elseprintf("无解\n");

}

else

{

if(a==0)printf("解是:%6.2f\n",-c/b);//解一元一次方程

else

{

x1=-b/(2*a);x2=sqrt(fabs(m))/(2*a);//求根公式

if(m>=0)

printf("两实解是:%6.2f和%6.2f\n",x1+x2,x1-x2);//输出实根

else

printf("两虚解是:%6.2f+%6.2fi和%6.2f-%6.2fi\n",x1,x2,x1,x2);//输出复根

}

}

return 0;

}

2.将一个整数第五位清零

#include

int main()

{

short x;

scanf("%d",&x);

x=x&0xFFEF;//x与十六进制数0xFFEF进行按位与运算,将第五位清零

printf("%d\n",x);

return 0;

}

3.判断一个整数第五位是否为零

#include

int main()

{

short x;

scanf("%d",&x);

x=x&0x010;//除了第五位其他位均清零

printf("%d\n",x&&1);//第五位是1,输出1;第五位是0,输出0

return 0;

}

4.说谎问题

张三说李四在说谎, 李四说王五在说谎,王五说张三和李四都在说谎。/判断谁在说谎?

解一:

#include

int main()

{

int zhangsan,lisi,wangwu,i;

for(i=0;i<1;i++)

zhangsan=i;//用0状态表示撒谎,1状态表示没说谎

lisi=!zhangsan;

wangwu=!lisi;

if(!zhangsan&&!lisi==wangwu)//前两个条件作为三者关系,最后一个条件用于判断

printf("张三:%d\t李四:%d\t王五:%d\n",zhangsan,lisi,wangwu);

return 0;

}解二:

#include

int main()

{

int zhangsan,lisi,wangwu,i;

for(i=0;i<1;i++)

zhangsan=i;//用0状态表示撒谎,1状态表示没说谎

lisi=!zhangsan;

wangwu=!zhangsan&&!lisi;

if(wangwu==!lisi)//以一、三条件作为三者关系,第二个条件用于判断

printf("张三:%d\t李四:%d\t王五:%d\n",zhangsan,lisi,wangwu);

return 0;

}

5.甲乙丙三个人同时放第一个声鞭炮 ,以后甲每隔5秒放一个,乙每隔6秒放一个,丙每隔7秒放一个 ,各放21个,一共能听到多少个鞭炮声?

#include

int main()

{

int x1=0,x2=0,x3=0,x4,i,sum;

for(i=1;i<148;i++)/*一共持续148秒*/

{

if(i%5==0&&i%6==0)//甲乙同时响的鞭炮声个数

x1++;

if(i%5==0&&i%7==0)//甲丙同时响的鞭炮声个数

x2++;

if(i%6==0&&i%7==0)//乙丙同时响的鞭炮声个数

x3++;

if(i%5==0&&i%6==0&&i%7==0)//甲乙丙同时响的鞭炮声个数

x4++;

}

sum=61-x1-x2-x3+x4;//61是甲乙丙单独响的鞭炮声个数相加(开始时算一声)

printf("一共能听到%d个鞭炮声",sum);

return 0;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值