2、';y++)printf("%c",y);for(y='A';y<=x;y++)printf("%c",y);printf("");}for(x='E';x>='A';x--){for(y=x;y<='I';y++)printf("%c",y);for(y='A';y<=x-1;y++)printf("%c",y);for(i=1;i<=((5-(x-'A'))*2);i++)printf("");for(i=1;i<=2*(x-'A')+1;i++)printf("%c",x);for(i=1;i<=((5-(x
3、-'A'))*2);i++)printf("");for(y=x+1;y<='I';y++)printf("%c",y);for(y='A';y<=x;y++)printf("%c",y);printf("");}ab=sqrt((xa-xb)*(xa-xb)+(ya-yb)*(ya-yb));//边ab长bd=sqrt((xb-xd)*(xb-xd)+(yb-yd)*(yb-yd));//边bd长ad=sqrt((xa-xd)*(xa-xd)+(ya-yd)*(ya-yd));//边ad长s=(ab+bd+ad)
4、/2;s1=sqrt(s*(s-ab)*(s-bd)*(s-ad));//△ABD面积bc=sqrt((xb-xc)*(xb-xc)+(yb-yc)*(yb-yc));//边BC长cd=sqrt((xc-xd)*(xc-xd)+(yc-yd)*(yc-yd));//边CD长s=(bc+bd+cd)/2;s2=sqrt(s*(s-bc)*(s-bd)*(s-cd));//△BCD面积重写例1.1#include//1#include//2floatxa,ya,xb,yb,xc,yc,xd
5、,yd;//3floats1,s2,ss,m;//4/*计算r、s两点距离:参数:r点x、y坐标,s点x、y坐标*/floatliners(floatxr,floatyr,floatxs,floatys){//5returnsqrt((xr-xs)*(xr-xs)+(yr-ys)*(yr-ys));//6}//7/*计算三角形uvw面积,参数:u点x、y坐标,v点x、y坐标,w点x、y坐标*/floatareauvw(floatxu,floatyu,floatxv,floatyv,floatxw,floatyw){//
6、8floatuv,uw,vw;//三条边长//9floats;//10uv=liners(xu,yu,xv,yv);//边uv长//11uw=liners(xu,yu,xw,yw);//边uw长//12vw=liners(xv,yv,xw,yw);//边vw长//13s=(uv+uw+vw)/2;//s//14returnsqrt(s*(s-uv)*(s-uw)*(s-vw));//面积//15}voidmain(void){//主函数printf("pleaseinputxa,ya,xb,yb,xc,yc,xd,yd
7、:");//18scanf("%f%f%f%f%f%f%f%f",&xa,&ya,&xb,&yb,&xc,&yc,&xd,&yd);//19s1=areauvw(xa,ya,xb,yb,xd,yd);//20s2=areauvw(xb,yb,xc,yc,xd,yd);//21ss=s1+s2;//22ss=ss/1000;//折合成亩//23m=ss*950;//计算总产量//24printf(“m=%10.3f”,m);//打印输出//25}子程序自顶向下、逐步求精”程序设计技术的基础从问题的整体(最顶层)出
8、发,向下分解问题。逐层细分,得到整个问题的解决方法使用子程序技术分离了“做什么”与“怎么做”程序逻辑结构清晰,易写,易读,易懂。程序的设计,调试,维护变得容易程序执行的主要步骤从第18行主函数开始,执行printf("pleaseinputxa,ya,xb,yb,xc,yc,xd,yd:");输出一行提示信息:pleasein