C语言,下面程序的功能是计算1-3+5-7+…..-99+101的值,请填空。

C语言,下面程序的功能是计算1-3+5-7+…..-99+101的值,请填空。,第1张

[1]:t=t*i [2]: t=-t/i;

//通过 [2] 让 t 交替以 1 或 -1 出现。

除了 1 之外,都是负的了,如 -3、-5、-7。

#include<stdio.h>

void main()

{

baiint i,t=1,s=0

for(i=1i<=101i+=2)

{

duif((i+1)%4==0)

t=-t

s=s+t

t=i+2}

printf("%d\n",s)

}

扩展资料:

C语言的运算符主要用于构成表达式,同一个符号在不同的表达式中,其作用并不一致。下面按计算的优先顺序,分别说明不同作用的表达式。需要特别指出,在C语言标准中,并没有结合性的说法。

相同优先级运算符,从左至右依次运算。注意后缀运算优先级高于前缀。因此++i++应解释为++(i++)。

而与或非的运算优先级都不一样,因此a &&b || b &&c解释为(a &&b) || (b &&c)

合理使用优先级可以极大简化表达式。

参考资料来源:百度百科-C语言运算符

修改后的程序如下:

# include "stdio.h"

void main()

{

int a, b

float x

scanf("%d,%d",&a,&b)

x=(float)a*b/((a+b)*(a+b))

printf("x=%f\n",x)

}

你这个小程序 有多处错误 1.主函数写错,应该是main().2.两个数相乘用*号。3.x你定义为float型,而a、b是int型的,在赋值时要进行强制转换。4.输出语句中%d 用于int型,而这里你的x是定义为float型的,所以要不得。5.在C或者其他语言里,双引号要用英文的(" ") 在程序里用中文“”是不行的。楼主有待加强学习,建议多上机 *** 作。

C

因为 s = s + 1 / n

n是 int 整型变量

1 / n 是整数除法,当然不对了

将 1 改为浮点数

s = s + 1.0f / n


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7746643.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-09
下一篇 2023-04-09

发表评论

登录后才能评论

评论列表(0条)

保存