当前位置:首页 » 编程语言 » c语言为什么数组输出都是0
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言为什么数组输出都是0

发布时间: 2022-12-14 20:05:47

‘壹’ 刚学c语言,这个输出值为什么是0

scanf语句错误,应该改为:scanf(“%f%f%f”,&v,&n,&m)才能让系统读入值,否则的话,v,n,,m的值都是零,所以最后总和也为0.你可以用一下下面的代码。
#include<stdio.h>
#include<math.h>
int main()
{
float v, n, m;
float a = 3.5;
float b = 3.5;
float c = 3.5;
scanf("%f%f%f", &v, &n, &m);
float t, y, u;
float o;
t = v * a;
y = n * b;
u = m * c;
o = t + y + u;
printf("%f", o);
return 0;
}
求关注!!

‘贰’ C语言编程设计过程中输出结果总为0,这是为什么

x是double,要用%lf输入,而不是ld

#include<stdio.h>
#include<math.h>
intmain(void)
{
doublex,y;
printf("Enterx:");
scanf("%lf",&x);//%lf
if(x<0){
y=pow(x,5)+2*x+1/x;
}
else{
y=sqrt(x);
}
printf("y=%lf ",y);
return0;
}

‘叁’ C语言, 为啥输出的结果一直是0啊 哪里错了啊

一、因为数据类型都是float,所以输入输出都应该是%f
scanf_s("%f, %f", &a, &b);
scanf_s("%f, %f", &c, &d);
二、输入格式中要求每一组数据要用逗号(英文)分隔,如下:
12,34
56,23
这样才可以
三、输出保留两位小数是:点2f不是2f
printf(" Labor cost for the boy is %.2f dollars.", e);

‘肆’ C语言编程设计过程中输出结果总为0,这是为什么

解决办法有两个:

  1. 上图中输入的数据类型为double,不应该使用%f,可以改成%lf

  2. 可以把double改成float,但是精度会变低

‘伍’ C语言程序,为什么输出0不应该是1吗

不对,小数和整数在计算机中的二进制表示法不一样的,系统只是提供了转换的功能而已,使用printf输出的时候,是不会自己转换的,而是强制使用指定格式输出
比如说这个程序,最后a中存储的值(double类型)是1.000000,这个值,前16位(二进制)肯定是0,所以使用%d格式的时候,它不会判断对应的变量是什么类型,就直接把它的前16位以整数的形式输出,所以输出的结果必然是0
所以使用%d并不能使输出结果转换为对应的整数,请改用%.0f输出(因为你的变量a是double型),就可以输出1

‘陆’ 在我编写的C语言中,数组输出的结果为什么都为0望大神求解!

你要是输出元素地址,就把%lf改成%d 、%x、%p 你要是输出元素的值,就把&去掉
看你是输出元素值,那么就把&取地址符去掉

‘柒’ c语言中为什么这个数组输出都是0

printf输出的时候,%lf 需要的是double 变量,不需要double指针,去掉&就可以

‘捌’ 为什么该C语言老是输出为0

scanf("%lf,%d,%lf", &rate, &year, &capital);

你的代码里输入格式是%lf,%d,%lf,中间有逗号,所以输入的时候也要有逗号

估计你输入的时候没加逗号(注意是西文逗号),而是用空格分隔的,要不加逗号用空格分隔的话,就把%lf,%d,%lf中间的逗号去掉,这样就可以用空格分隔输入了

我试着运行了下:

年化15%,5年翻倍,没错

‘玖’ 为什么这程序无论输入什么输出都全为零c语言

b声明的是float型,但scanf("%d",&b[i][a]);中用的控制符却是int型的%d,改成%f试试。