#include <stdio.h>
#include <math.h>
int main(void)
{
int n,i,a;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
a=pow(-1,i+1)*2*i-1;
printf("%d\n",a);
}
return 0;
}
少了括号
a=pow(-1,i+1)*(2*i-1);追问为什么需要括号?它有先后顺序吗?
追答先乘除后加减,加减要先做,就要加括号。
pow(-1,i+1)是符号位
(2*i-1)是奇数值
还是没太明白,你能把计算机的计算顺序说一下吗?我是这样理解的:先将pow(-1,i+1)算出然后*2*i最后减1,但是我用纸算好像不影响结果
追答a=pow(-1,i+1)*2*i-1;
当i=2时等于-1*2*2-1=-4-1=-5
a=pow(-1,i+1)*(2*i-1);
当i=2时等于-1*(2*2-1)=-1*(3)=-3
带不带括号结果是不同的。
为什么需要括号?它有先后顺序吗?
追答就这样。
本回答被网友采纳...3,5,-7...的程序时总是出现只输出1,-5,5,-9,, 源代码
a=pow(-1,i+1)*(2*i-1);
谁能用c语言帮我编一下输出是这样的程序 1 23 456 78910 最后那个是一...
include <stdio.h>void main(){ int i; for(i=1;i<=10;i++) { if(i==2||i==4||i==7) { printf("\\n"); } printf("%d",i); }}
关于C语言的问题,为什么 别的对的 输入 1 2 3 4 5 6 7 8 9 0 出现数...
}在此位置出错了 开始时min与max的位置如下图 1 2 3 4 5 6 7 8 9 0 | | max min 第一次交换:max的值与最后一个值交换,max与min的地址不变,变的是值 1 2 3 4 5 6 7 8 0 9 | | max min 第二次交换:min的值与第一个值交换,注意,此时min...
用C语言编写程序,求1-3+5-7...-99+100的值
{ int i,s=0,f=1;for (i=1;i<=101;i+=2){ s=s+i*f;f=-f;} printf("%d",s);}
c语言编写一个程序:1-3+5-7……-99+101
include <stdio.h>void main(){int a = 0,b = 0,i;for(i = 1;i <= 101;i += 4)a += i;for(i = 3;i <= 99;i += 4)b -= i;printf("%d\\n",a+b);}\/\/结果
C语言编程1-3+5-7……+99的和
v>=-99) { sum += v; if(v<0) v -= 2; else v += 2; v = -v; } printf("%d\\n",sum);\/\/这代码是1-3+5-7...-99,+99直接printf("%d\\n",sum+2*99); return 0;}
本人刚学C语言不久,用C语言在DEV(4.9.9.2)编译器上编写了一个加密程序...
3、功能上没有什么大的区别。dev是免费的,开源的,执行C标准比较严。Turbo C不支持中文,DEV支持。4、经过编码的文件,不应该当做文本文件。应该看做bin二进制文件。EOF在stdio.h中定义为(-1),EOF+1==0,ch==EOF+1时执行ch--,ch就成了EOF了,放进文件,就是文件结束。正确的做法是,不用...
编写程序,使用循环结构,输出: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15...
include <stdio.h> int main(void){ int i = 0;while (1){ printf("%d ", ++i);if (i == 15)break;} return 0;}
如何用c语言编写一个输出结果为1 3 5 7……99的程序
include <stdio.h>void main(){int i,n=0;for(i=1;i<=50;i++){printf("%-4d",i*2-1);n++;if(n%10==0)printf("\\n");}} 运行结果截图:
c语言编写程序如何实现输入1 2,会输出3 4 5……,输入1 3,输出5 7 9...
include<stdio.h>int main(){int a,b,i;scanf("%d%d",&a,&b);b-=a;for(i=a;i