为啥一运行出现XX.exe已停止工作

qq_37254410 2017-01-04 10:15:44
#include<stdio.h>
#include<math.h>
int main()
{
double js(int n);
int n;
double sum;
scanf("%d",n);
sum=js(n);
printf("%lf\n",sum);
}
double js(int n)
{
int i;
double sum=0;
for(i=0;i<n;i++)
sum=sum+pow(-1,i+1)*(1/(2*i-1));
return sum;
}
...全文
803 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2017-01-05
  • 打赏
  • 举报
回复
printf里面的%和变量的一一对应关系 scanf里面的%和变量以及变量前加不加&的一一对应关系 是C代码中非常容易出错的地方,而且通常编译还不出错。 所以在编译源代码之前值得专门仔细检查一遍甚至多遍。
小灸舞 版主 2017-01-05
  • 打赏
  • 举报
回复
少了个取地址符号,这种错误一般单步就能发现,出错在这一行。
单步调试和设断点调试(VS IDE中编译连接通过以后,按F10或F11键单步执行,按Shift+F11退出当前函数;在某行按F9设断点后按F5执行停在该断点处。)是程序员必须掌握的技能之一。
  • 打赏
  • 举报
回复
引用 2 楼 ai977313677 的回复:
你的scanf用法有问题 ,改成
scanf("*d",&n);
那个星号打错了,应该是%百分号
  • 打赏
  • 举报
回复
你的scanf用法有问题 ,改成
scanf("*d",&n);
  • 打赏
  • 举报
回复
scanf("%d",&n); 还有记得return 0;

70,022

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧