这段代码运行输入后停止工作,求问题。。。求原因。。。是语法错了还是逻辑判断出错?

#include<stdio.h>#include<stdlib.h>intmain(){intk;doubleSn;intn=1;scanf("&d",&k);if(1... #include <stdio.h>
#include <stdlib.h>

int main()
{
int k;
double Sn;
int n=1;
scanf("&d",&k);
if(1<=k<=15)
{
for(Sn=1;Sn<=k;n++)
{
Sn=1/(double)n+Sn;

}
printf(n);

}
else{
printf("fales");
}

}
展开
 我来答
cdyzxy
2017-02-25 · TA获得超过2.1万个赞
知道大有可为答主
回答量:1.4万
采纳率:85%
帮助的人:3739万
展开全部
scanf("&d",&k);要改成scanf("%d",&k);
追问
。。。我擦,我都没注意取位符错了。。。但是改了还是错啊。。
追答
if(1<=k<=15)不允许这样连等判断,要分成两个独立的判断if ( (1<=k)&&(k<=15) )
printf(n);改成printf("%d\n",n);
ffdgdfe33
2017-02-25 · 超过26用户采纳过TA的回答
知道答主
回答量:187
采纳率:100%
帮助的人:54.7万
展开全部
我看不到代码,能发给我吗
更多追问追答
追问

我发了个图,这下看到了没?

追答
scanf处把“&d”改成“%d”,%d代表参数有一个int型,&是取地址。另建议在main函数最后加上return 0;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式