C语言源代码 各位大侠这怎么回事?

作者&投稿:象狮 (若有异议请与网页底部的电邮联系)
~ int
judgeTriangle(int
a,int
b,int
c);//函数“判断三角形”使用
上面是错误的调用,应该是:r=judgeTriangle(a,b,c);将返回值赋给r再判断;
int
judgeTriangle(int
a,int
b,int
c)
{
int
r;
if
(a+b<=c||b+c<=a||a+c<=b||abs(a-b)>=c||abs(b-c)>=a||abs(a-c)>=b)

return
(r=-1);
else
if
(a*a+b*b==c*c||b*b+c*c==a*a||a*a+c*c==b*b)

return
(r=1);
else
if
(a==b||a==c||b==c)

return
(r=2);
else
if
(a==b&&a==c&&b==c)

return
(r=3);
else

return
(r=0);
}
上面的函数返回值就出问题了,应该是返回一个值,而不是一个赋值语句,r=-1是一个赋值语句,它永远返回真,所以return
(r=-1)等价于return
1
同理后面的都返回1,而r你没有给它赋值,默认系统初始化它的值为0,所以你无论输入什么都是不规则三角形。你的算法有一个小问题,如果你输入三个相等的数,判断结果并不是等边而是等腰。因为等边是等腰的特殊情况,所以应该先判断特殊的,再判断一般的。
应该这么改:
int
judgeTriangle(int
a,int
b,int
c)
{
if
(a+b<=c||b+c<=a||a+c<=b||abs(a-b)>=c||abs(b-c)>=a||abs(a-c)>=b)

return
-1;
else
if
(a*a+b*b==c*c||b*b+c*c==a*a||a*a+c*c==b*b)

return
1;
else
if
(a==b&&a==c&&b==c)

return
3;
else
if
(a==b||a==c||b==c)

return
2;
else

return
0;
}


扶沟县13369214730: C语言源代码 各位大侠这怎么回事?
叔衫依克: #include <stdio.h>#include <math.h>int judgeTriangle(int,int,int);//函数“判断三角形”声明int main (){ int a,b,c; int r; printf ("Please input three integers:"); scanf ("%d %d %d",&a,&b,&c); int judgeTriangle(int a,int b,int c);//函数“判断三角形...

扶沟县13369214730: c语言源代码为什么运行不出来 -
叔衫依克: 这代码没有运行不出来的严重问题,应该能运行出来.运行不出来很可能是你没有建立工程,没有进入编译.由于具体你怎么弄的我不清楚,所以只量猜测.

扶沟县13369214730: 这个C语言源代码怎么回事,为什么编译没有错,却执行不了啊 -
叔衫依克: scafn这个写错了 应该是scanf 用system这个函数的话 最好包含头文件 stdlib.h

扶沟县13369214730: 用keil编辑的c语言出现以下错误请大侠们看看怎么回事
叔衫依克: 哈哈,这简单!你的代码本身可能没有问题,但是你的KEIL不是完整功能版的,估计你是在官网下的评估板,这个版本有限制,从报错的内容来看,应该是限制了你编译的代码规模.所以,你应该去弄其他版本的keil或者换编译器.

扶沟县13369214730: 下了个C语言程序,打开编辑源代码并保存之后再运行程序为什么还是原来的样子? -
叔衫依克: 要生成EXE程序才行啊,你运行的那个是以前下载的那个,没有改变,你只是改了代码,对原来那个EXE没有产生影响

扶沟县13369214730: 请问源代码是什么意思啊? -
叔衫依克: 源代码就是源程序,通常情况下我们看到的是经过打包处理的文件,而编写这些文件的一行一行的计算机语言代码就是源代码,比如: #include main() {int a,b,c; /*定义三个变量a,b,c*/a=10; /*给变量a赋值10*/b=2;c=a+b; /*将a+b的和赋予c*/prinft("c=%c",c); /*输出变量c的值*/ } 这是一段由c语言写的程序,也就是源程序.

扶沟县13369214730: 各位大神 帮帮我看看这C语言代码哪里错了? -
叔衫依克: #include "stdio.h"#include "math.h"main() { float a, b; char ch1; printf("\n(提示:tan函数按t,sin函数按s,cos函数按c,如:tan45直...

扶沟县13369214730: 编程语言→源代码(源程序)→程序 -
叔衫依克: 1.你的理解正确了一大半,源代码是人编写的并能够读懂的代码组合.通常的程序都是由源代码通过编译器编译而成的可执行文件(exe,dll等).但某些解释型语言,如QBASIC,asp等是通过运行环境逐行执行的.2.常听说人们寻找flash的源代码...

扶沟县13369214730: 请问C语言中源代码是什么意思啊 -
叔衫依克: 代码就是源程序 源代码,是指未编译的文本代码.是一系列人类可读的计算机语言指令. 在现代程序语言中,源代码可以是以书籍或者磁带的形式出现,但最为常用的格式是文本文件,这种典型格式的目的是为了编译出计算机程序.计算机源...

扶沟县13369214730: 大侠们帮我解释一下这个C语言源程序 -
叔衫依克: while (*str && *str != ch) str++; 这句的作用是指针循环后移,当str指向的内容不为'\0',而且str!=ch为真的时候,指针往后指一位.你的问题是:那怎么能找出不同的那个字母呢?这个循环并不查找不同的那个字母,而是通过循环,查找每一...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网