这些c语言代码有什么错误?我这里显示有三个警告。 求问个c语言问题 我这个程序为什么出现警告错误

作者&投稿:戢孟 (若有异议请与网页底部的电邮联系)
--------------------Configuration: b - Win32 Debug--------------------
Compiling...
b.cpp
E:\study\vc++工程\game\注册表\b.cpp(14) : warning C4244: '=' : conversion from 'double' to 'float', possible loss of data
E:\study\vc++工程\game\注册表\b.cpp(15) : warning C4244: '=' : conversion from 'double' to 'float', possible loss of data
E:\study\vc++工程\game\注册表\b.cpp(13) : warning C4700: local variable 'area' used without having been initialized

b.obj - 0 error(s), 0 warning(s)

1、2一样,说的是你将一个double型的数据赋值给了一个float型的数据,可能会丢失精度。

3、说的是你的这个area变量没有初始化,是一个随机的值(你看一下你的代码,是不是把输出area的代码写的太靠前了,我感觉应该在赋值语句后)。

#include<stdio.h>
#include<math.h>
void main()
{

float a,b,c,area,s;
printf("请输入三角形的三条边的长度:");
scanf("%f,%f,%f",&a,&b,&c);
if((a+b>c)&&(b+c>a)&&(a+c>b))

{
s=0.5 * (a+b+c);
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("这个三角形的面积是:%.2f\n",area); //先求出area的值才能打印

}
if((a+b<=c)||(b+c<=a)||(a+c<=b))
{

printf("这不能是一个三角形! \n");
}

}

类型转换问题

变量类型转换,和变量初始化的问题。

C语言中的错误和警告有什么区别~

错误会导致程序无法编译通过,进而不能运行
而警告是说程序中有些代码编写不是非常恰当,不会影响程序编译,在少数情况下会影响程序运行
一般警告可以忽略,而错误是必须要修改的

1、函数f先使用后定义了。
2、函数f需要返回一个int类型。

修改一下顺序就可以了。
#include #includestruct my{ float a;}arg;void f(struct my parm){ printf("%6.2f
",parm.a);}int main(){ arg.a=888.88f; f(arg); return 0;}

请问我这有c语言编程7~8个错误是哪里错了,题目如图
答:printf("判别式=%lf\n",d);//printf是输出,scanf是输入,d值是计算并输出的,不是你手动输入进去的,后面的都是 if(d>0){r1=(-b+sqrt(d))/(2*a);r2=(-b-sqrt(d))/(2*a);//C语言里没有无符号的乘法 printf("方程的两个根是:%lf\t%lf",r1,r2);}if(d==0)//d=0时...

我的这个c语言代码有什么错误
答:,&x,&y);if(x<0){ ///这里加上大括号 下面的else if 和else 都加了,这里忘了?y=x*x+2;printf("%f",y);} else if(x==0) //判断相等是 == ,=表示赋值 { y=0;printf("%f\n",y);} else(x>0) ///这里没有分号 { y=x-1;printf("%f\n",y);} } ...

这么一段简单的C语言代码有什么错?
答:;printf("长方形的体积是:\n");printf("%d\n",result);return 0;} int calculate(int Long,int Width){ int result=Long*Width*Height;//你这个地方改成先定义再计算,分开写,int result;result=Long*Width*Height;return result;} //其它的你再你电脑上检查有没有大小写错误就行了 ...

下面C语言代码有何错误?
答:判断是a[n]实际指向的是上次输入的下一个位置 这个判断条件只能拼人品了,极容易出错,根本不是你想要的结果 同时要考虑n>999的可能性 改成 do { scanf("%f",&a[n]);n++;}while(a[n-1]!=0 && n<999)应该就对了 汗,刚没注意到while后边竟然没加";"我给出的是逻辑上的错误哈~...

c语言问题,我这里怎么错了啊,求解释
答:两个错误 1 函数类型不对 应该是 int gzq(int (*p)[4])2 调用错误 调用时 直接 gzq(p);

关于C语言编写程序的一个疑问 高手帮忙看看我的程序哪错了
答:最后,尽量不要在C语言代码中夹杂中文,虽然我知道你是在做说明,那就正规点用//作注释。不要再写成char verb[100][8]={"开炮",等一百个词}; 养成良好的代码书写习惯也是学习C语言很重要的一环。特别提醒这四个问题,祝你编程方面有所提高。另外说明一声,C语言是认汉字的,你老师说的没错。以...

请问这段代码有没有什么错误的地方,这段代码大概是什么意思啊?
答:这段代码是C语言中的一个程序,它的功能是计算两个整数相乘的积的个位数。具体来说,它首先检查第二个参数是否为1(即第一个参数是否为偶数),如果是,则返回第一个参数除以10的结果;否则,它将第一个参数除以第二个参数的结果作为结果并打印出来。然而,这段代码存在一些错误。首先,它没有考虑到...

C语言程序设计.. 函数设计。请问下,下面的代码哪里错了?真恼人~
答:错误太多了,1,函数定义有问题!函数的参数不能写在外面。所有的函数定义均有问题,自己改一下吧,另外,调用函数时,该函数要先定义,或者是先声明!void update(PEMP company[],int id,int age,char *name,double salary)2,#include "s6.h"这句不要的吧。3,void readin(company)函数中的...

我编的这段C语言代码哪里错了 结果不对
答:include<stdio.h> include<math.h> main (){ float a,b,c,r,s,x;printf("本程序用于计算△的面积\n请输入△的三边长:a,b,c=");scanf("%f,%f,%f",&a,&b,&c);if ((a+b>c)&&(a+c>b)&&(b+c>a)){x=1/2.0*(a+b+c);r=x*(x-a)*(x-b)*(x-c);s=(float)sqrt...

这段C语言程序有什么错?
答:楼主在使用for语句的时候出错了。for语句内的表达式由三个“;组成,判断if的时候,括号内的表达式在等于的时候用“==”,单个“=”在C语言中表示赋值或者初始化的时候用到。修改后程序如下。include <stdio.h> include <stdlib.h> int x = 0;int main(void){ printf("程序已启动,正在计算题目...