c程序编译错误

来源:百度知道 编辑:UC知道 时间:2024/06/08 20:43:21
main()
{int n=1,sum=0,i,k,g=-1;
k=1/(2n-1);
while(n>=1&&n<=50)
{g*=(-1);
sum+=g*k;
n++;}
printf("%d",sum);
}
提示错误
C:\Documents and Settings\Administrator\.c(3) : error C2059: syntax error : 'bad suffix on number'
C:\Documents and Settings\Administrator\.c(3) : error C2146: syntax error : missing ')' before identifier 'n'
C:\Documents and Settings\Administrator\.c(3) : error C2059: syntax error : ')'
C:\Documents and Settings\Administrator\.c(8) : warning C4013: 'printf' undefined; assuming extern returning int
执行 cl.exe 时出错.

(1)语法问题,乘法表达错误。

k=1/(2n-1); 中 2N ---> 2*N

(2)主函数给个返回值(养成好习惯,因为根据编译环境不同提示错误)
int main(){
...
return 0;
}

其他的没有问题

k=1/(2n-1);

程序里面乘法符号不能省略。。

改为k=1/(2*n-1);

你的这个程序是想做什么?
你的K值根本就是1
你是不是想放进循环里去,
但那样,你的K值就会当n>2时K值将一直为0,
你的K,SUM 的类型也要变成浮点的才行