鱼C论坛

 找回密码
 立即注册
查看: 6558|回复: 12

输入三角形的三边求三角形的面积

[复制链接]
发表于 2012-4-14 11:02:42 | 显示全部楼层 |阅读模式
1鱼币
#include<stdio.h>
#include<math.h>
void main()
{
float a,b,c,s,area;                   //定义单精度型变量a,b,c,s,area;
Js:                                    //goto跳转到的位置 Js(计算的拼音首字母);
printf("请输入a的值\n");              //屏幕输出:请输入a的值: 并换行;
scanf("%f\n"&a);                      //从键盘读入a的值    并换行;
printf("请输入d的值\n");              //屏幕输出:请输入b的值:   并换行;
scanf("%f\n",b);                      //从键盘读入b的值 : 并换行;
printf("请输入c的值\n");              //屏幕输出:请输入c的值:   并换行;
scanf("%f\n",c);                      //从键盘读入c的值 : 并换行;
if(a+b<=c||a+c<=b||b+c<=a)             //如果 a+b<=c或a+c<=b或b+c<=a;
{printf("这三条边无法构成三角形");     //则屏幕输入:这三条边无法构成三角形;
goto Js; }                             //跳转到 Js处;
else{s=(a+b+c)/2;                      //否则 s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));        //area的值为[s*(s-a)*(s-b)*(s-c)的算术平方根];
printf("s=%7.2f;area=%7.2f",s,area);   // 屏幕输出:s=单精度型的值 area=单精度型的值;
}                                      //
scanf("return\n");                     //从键盘读入return;
goto Js;                               //返回到 Js处;
}            
——————————————————————————————————————————————
小弟初学C语言,看着书上有这么个例子,看了一遍,按照思路自己打了一个类似的,可是VC++6.0和       codeblocks        
   全都报错      ,麻烦那位好心的大哥大姐能帮小弟改改代码,还有一些语法上的习惯一类的缺点最好都提出来,小弟
一定
会虚心接受的

最佳答案

查看完整内容

#include #include void main() { float a,b,c,s,area; Js: printf("请输入a的值\n"); scanf("%f",&a); //scanf("%f\n"&a); 逗号 没有\n printf("请输入b的值\n"); scanf("%f",&b); //scanf("%f\n",b); 取地址运算符 printf("请输入c的值\n"); ...
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-4-14 11:02:43 | 显示全部楼层
#include<stdio.h>
#include<math.h>
void main()
{
        float a,b,c,s,area;                  
Js:                                      
        printf("请输入a的值\n");            
        scanf("%f",&a);              //scanf("%f\n"&a);        逗号  没有\n               
        printf("请输入b的值\n");              
        scanf("%f",&b);                //scanf("%f\n",b);      取地址运算符            
        printf("请输入c的值\n");            
        scanf("%f",&c);                //scanf("%f\n",c);      取地址运算符               
        if( (a+b<=c) || (a+c<=b) || (b+c<=a) )            
        {
                printf("这三条边无法构成三角形");   
                goto Js;
        }                             
        else
        {
                s=(a+b+c)/2;                  
                area=sqrt(s*(s-a)*(s-b)*(s-c));      
                printf("s=%7.2f;area=%7.2f",s,area);  
        }                                    
                                    //scanf("return\n");                    
        goto Js;                              
}
//最好不要用goto语句
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2012-4-14 12:03:57 | 显示全部楼层
谢谢你,但是不知道代码改了之后为什么codeblocks编译正确,但是VC++却显示:
--------------------Configuration: 三角形面积 - Win32 Debug--------------------
Compiling...
Error spawning cl.exe

三角形面积.exe - 1 error(s), 0 warning(s)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-4-14 13:11:33 | 显示全部楼层
vc++6.0有问题。
下面的是从别的地方抄来的(不知可不可行):
可能很多人在安装VC 6.0后有过点击“Compile”或者“Build”后被出现的 “Compiling... ,Error spawning cl.exe”错误提示给郁闷过。很多人的 选择是重装,实际上这个问题很多情况下是由于路径设置的问题引起的,
“CL.exe”是VC使用真正的编译器(编译程序),其路径在“VC根目录/VC98/Bin”下面, 你可以到相应的路径下找到这个应用程序。

方法一:
因此问题可以按照以下方法解决:打开vc界面 点击VC“TOOLS(工具)”—>“Option(选择)” —>“Directories(目录)”重新设置“Excutable Fils、Include Files、 Library Files、Source Files”的路径。很多情况可能就一个盘符的不同 (例如你的VC装在C,但是这些路径全部在D),改过来就OK了。


如果你是按照初始路径安装vc6.0的,路径应为:
executatble files:
C:/Program Files/Microsoft Visual Studio/Common/MSDev98/Bin
C:/Program Files/Microsoft Visual Studio/VC98/BIN
C:/Program Files/Microsoft Visual Studio/Common/TOOLS
C:/Program Files/Microsoft Visual Studio/Common/TOOLS/WINNT

include files:
C:/Program Files/Microsoft Visual Studio/VC98/INCLUDE
C:/Program Files/Microsoft Visual Studio/VC98/MFC/INCLUDE
C:/Program Files/Microsoft Visual Studio/VC98/ATL/INCLUDE

library files:
C:/Program Files/Microsoft Visual Studio/VC98/LIB
C:/Program Files/Microsoft Visual Studio/VC98/MFC/LIB

source files:
C:/Program Files/Microsoft Visual Studio/VC98/MFC/SRC
C:/Program Files/Microsoft Visual Studio/VC98/MFC/INCLUDE
C:/Program Files/Microsoft Visual Studio/VC98/ATL/INCLUDE
C:/Program Files/Microsoft Visual Studio/VC98/CRT/SRC

如果你装在其他盘里,则仿照其路径变通就行。
关键是microsoft visual studio/ 后面的东西要相同。

方法二:

最简便的方法: 启动VC时不要用图形界面,通过在命令提示符下输入:Msdev /useenv运行(注意啦/前面有个空格).它会强制使系统环境变量全高设置成正确值.而且,只需要使用一次这样的方式运行VC,以后再次通过双击图标的方式启动也不会有问题.
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2012-4-14 14:27:22 | 显示全部楼层

我试验了一下,方法一可行,方法二没实验
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2012-4-14 15:10:44 | 显示全部楼层
hxs554f 发表于 2012-4-14 13:11
vc++6.0有问题。
下面的是从别的地方抄来的(不知可不可行):
可能很多人在安装VC 6.0后有过点击“Compi ...

顺便问一下,有没有一劳永逸的办法,这样设置,每重新启动一次VC++,就要设置一次
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-4-14 15:51:14 | 显示全部楼层
用codeblocks吧 感觉比vc6.0要好用  最好不要用goto语句吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-4-14 18:04:10 | 显示全部楼层
孤单的王者 发表于 2012-4-14 15:10
顺便问一下,有没有一劳永逸的办法,这样设置,每重新启动一次VC++,就要设置一次

第一种方法应该不用重复设置吧。(参考)http://wenku.baidu.com/view/6f363bfe910ef12d2af9e7b0.html
第二种方法好像很简便,如果第一种不行的话,你就试一下。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-4-14 18:05:45 | 显示全部楼层
如果实在不行,那还是重行安装吧。用鱼c上的,安装前先用360把以前安装的卸载干净。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-21 09:50:09 | 显示全部楼层
scanf("%f\n",b);                      错误,粗心造成,缺&,c的那句也是
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-21 12:58:56 | 显示全部楼层
嘿嘿额,过来看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-21 16:33:18 | 显示全部楼层
在几何中,已知三边的长,求三角形的面积,我们都知道使用求积公式:
            △=√[s(s-a)(s-b)(s-c)]
              其中s=1/2(a+b+c)
              这个公式一般称之为海伦公式,因为它是由古希腊的著名数学家海伦首先提出的。有人认为阿基米德比海伦更早了稳这一公式,但是由于没有克凿的证据而得有到数学界的承认。
#include<math.h>
int main()
{
        float a,b,c,m,S;
        printf("a=3,b=4,c=5;"); //这是输出语句
        a=3,b=4,c=5;  //这样可以完成赋值     直角三角形的面积 3*4 /2 = 6  和下面的计算结果一样
        //scanf("%f,%f,%f",&a,&b,&c); 不要再从键盘接收数据了。
        m=(a+b+c)/2;
        S=sqrt(m*(m-a)*(m-b)*(m-c));
        printf("S=%f",m);
        
        system("pause"); //停一下,看一下结果
        return 0;
}

输入自己搞定
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-21 19:18:51 | 显示全部楼层
注意看你的错误提示,这个错误提示不是由于编程造成的,而是VC6环境没有设置好造成的。也就是说,你在这个环境下编任何程序,都会提示相同的错误。你可以baidu  "VC6 Error spawning cl.exe" 找到解决办法。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-24 15:39

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表