求解一道编程题(百度面试题)
最后一个球一定是黑球,因此最后只剩下一个黑球的概率为100%.
将白球换成1,黑球换成0,取两个球比较换成是两个数做异或。题目就变成将100个0和100个1全部放一起做异或运算。异或运算满足交换律,因此运算结果与次序无关。分成100个0一组和100个1一组,这两组的运算结果都为0,相同,因此最后结果为0。
好抽象啊,和抽了后再加球没有关系吗?
而且这好像是一道编程题啊,咋这样就出来了
编程题:编写程序输入三角形的3条边长,计算并输出三角形的面积。
一、程序分析
三角形面积海伦公式:√[p(p-a)(p-b)(p-c)]。其中p=(a+b+c)/2。a、b、c分别是三角形的三边长。
二、根据三角形面积计算公式用if语句编写程序如下:
#include"stdio.h"
#include"math.h"
intmain(void)
floata=0,b=0,c=0,p=0;
floatarea=0;
printf("Pleaseinputthreesidesoftriangle:");
scanf_s("%f%f%f",&a,&b,&c);
if((a+b)>c&&(a+c)>b&&(b+c)>a)
p=(a+b+c)/2;
area=sqRT(p*(p-a)*(p-b)*(p-c));
printf("Triangledoesnotexist!\n");
printf("Theareaoftriangleis:%f\n",area);
return0;
扩展资料:
还可以使用switch语句计算三角形的面积,编写程序如下
#include"stdio.h"
#include"math.h"
intmain(void)
floata=0,b=0,c=0;
floatp=0;
printf("PleaseinputthreeSIdesoftriangle:");
scanf_s("%f%f%f",&a,&b,&c);
switch(a+b>c&&a+c>b&&b+c>a)
case0:printf("Triangledoesnotexist!\n");break;
case1:
p=(a+b+c)*0.5;
printf("Theareaoftriangleis:%f\n",sqrt(p*(p-a)*(p-b)*(p-c)));
break;
return0;
参考资料:
百度百科-switch
参考资料:
百度百科-结束条件语句
C语言简单编程题
求解一道编程题(百度面试题)
你说呢...