为了账号安全,请及时绑定邮箱和手机立即绑定

哪位大神告诉我这个程序哪错了

哪位大神告诉我这个程序哪错了

C
不轻易说完美 2016-11-28 19:01:47
#include<stdio.h>int main(){ int i,s,x;scanf("%d",x);  s=0; while(i<x){  if(x%i==0){  s=s+i; } i=i+1; }   printf("%d",s); return 0;}
查看完整描述

7 回答

已采纳
?
石敏0

TA贡献1条经验 获得超1个赞

scanf函数里面x应改为&x,还有定义的i,没有初始化,默认值为0,那么它不能做除数的。
查看完整回答
1 反对 回复 2016-11-28
?
慕粉3342523

TA贡献17条经验 获得超5个赞

scanf函数里面x应改为&x是地址符,i,没有初始化。。

查看完整回答
反对 回复 2016-11-29
?
望远

TA贡献1017条经验 获得超1032个赞

话说你这个程序是干什么的,要实现什么?

查看完整回答
反对 回复 2016-11-29
?
何方神圣

TA贡献11条经验 获得超58个赞

首先,i 没有显示初始化,但是编译环境可能默认;其次,scanf需要有&取地址;最后,粗略看了下,貌似最后输出应该是两倍的x的值(此时x=i)。具体不知道程序是什么要求,望采纳。

查看完整回答
反对 回复 2016-11-28
  • 何方神圣
    何方神圣
    在细看,貌似s=x+i;得不到输出,最后只能输出s的初值。
?
墨凤白鸦

TA贡献2条经验 获得超0个赞

scanf那个输入语句少了地址符号&。应该是scanf("%d",&x)
查看完整回答
反对 回复 2016-11-28
?
_apprentice

TA贡献2条经验 获得超2个赞

放眼望去,i 没有初始化。

查看完整回答
反对 回复 2016-11-28
?
SASUKE0

TA贡献2条经验 获得超0个赞

scanf 用错了应该是&x
查看完整回答
反对 回复 2016-11-28
  • 7 回答
  • 0 关注
  • 1852 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信