#include<stdio.h>
int main()
{
int n,i;
int m=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
for(int j=1;j<i;j++)
{
if(i%j==0)
m=m+j;}
if(m==i)
printf("%d",m);
}
return 0;
}
运行不出来,哪错了?
编写程序,求完数。程序运行时输入一个正整数n(n在10到999之间),输出1到n之间的完数(包含 n)。c语言
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 叶落花枯 2022-10-30 23:20关注
在第二个for前面加上 m=0; 否则m的值一直累加了,还有最后的printf输出加上 \n 或者空格,将多个数字分开显示
#include<stdio.h> int main() { int n,i; int m=0; scanf("%d",&n); for(i=1;i<=n;i++) { m = 0; for(int j=1;j<i;j++) { if(i%j==0) m=m+j; } if(m==i) printf("%d\n",m); } return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用 1
悬赏问题
- ¥15 DS18B20内部ADC模数转换器
- ¥15 做个有关计算的小程序
- ¥15 MPI读取tif文件无法正常给各进程分配路径
- ¥15 如何用MATLAB实现以下三个公式(有相互嵌套)
- ¥30 关于#算法#的问题:运用EViews第九版本进行一系列计量经济学的时间数列数据回归分析预测问题 求各位帮我解答一下
- ¥15 setInterval 页面闪烁,怎么解决
- ¥15 如何让企业微信机器人实现消息汇总整合
- ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
- ¥15 如何用Python爬取各高校教师公开的教育和工作经历
- ¥15 TLE9879QXA40 电机驱动