#include<stdio.h> #include<iostream.h> #include<math.h> void main() { int i,n,m,k,p=0; int a[100],b

请把程序主要语句注释一下吧,看不懂啊 ,初学者
#include<stdio.h>
#include<iostream.h>
#include<math.h>

void main()
{
int i,n,m,k,p=0;
int a[100],b[100];
for(n=1;n<=1000;n++)
{
k=0;m=0;
for(i=2;i<=sqrt(n);i++)
{
if(n%i==0)
{
a[k]=i;
k++;
if(i!=sqrt(n)){a[k]=n/i;k++;}
}
}
for(i=0;i<k;i++) m=m+a[i];
if(m+1==n) cout<<n<<" ";
}
}

这个程序的作用是求出1到1000内的完全数(除本身外所有因数之和等于本身的数)
一下是一些注释
#include<stdio.h>
#include<iostream.h>
#include<math.h>

void main()
{
int i,n,m,k,p=0;
int a[100],b[100]; //a数组记录因数,b数组貌似没有用到
for(n=1;n<=1000;n++) //主循环,判断n是否完全数
{
k=0;m=0;
for(i=2;i<=sqrt(n);i++) //寻找n的因数,因为n的因数是成对的,且有一半小于√n,即若i是n的因数,则n/i也是n的因数,因此只需枚举到√n
{
if(n%i==0)
{
a[k]=i; //记录因数i
k++;
if(i!=sqrt(n)){a[k]=n/i;k++;} //记录因数n/i,如果i=√n,则n/i=i,此时不应再记录n/i,否则重复
}
}
for(i=0;i<k;i++) m=m+a[i]; //所有因数相加
if(m+1==n) cout<<n<<" "; //加上一开始没有算的1,如果因数和等于n则输出
}
}
温馨提示:内容为网友见解,仅供参考
无其他回答

...#include<iostream.h> #include<math.h> void main() { int i...
这个程序的作用是求出1到1000内的完全数(除本身外所有因数之和等于本身的数)一下是一些注释 include<stdio.h> include<iostream.h> include<math.h> void main(){ int i,n,m,k,p=0;int a[100],b[100]; \/\/a数组记录因数,b数组貌似没有用到 for(n=1;n<=1000;n++) \/\/主循...

...#include <stdio.h> #include<string.h> void main() {char ch...
这个题的意思是:输出从x[i][i]的地址开始到回车结束的一个字符串。如果以s的形式,不管是输出还是输入时,后边的类型都得使用地址或是指针。

编写C++程序时前面的……如 #include<stdio.h> void main() int...
#include <iostream>是一个“包含命令”,它的作用是将文件iostream的内容包含到该命令所在的程序文件中,代替该命令行。文件iostream的作用是向程序提供输入或输出时所需要的一些信息。iostream是i-o-stream 3个词的组合,从它的形式就可以知道它代表“输入输出流”的意思,由于这类文件都放在程序单元的...

#include<stdio.h> #include<string.h> #include<conio.h> char*fu...
include <iostream> \/\/ 注意,标准中,系统头文件不推荐加 .h,类似地有 <cmath> 而不是 <math.h> include "class.h"using namespace std; \/\/ 使用标准的名空间 int main(int argc, char *argv[]) \/\/ 标准 C++中 必须显式的申明 main 的返回值类型,不写的话有些编译器默认是 int 型 {...

在C语言中,#include<stdio.h>和 #include<string.h>有什么区别?_百度...
include <fstream.h>  \/\/文件输入/输出 include <iomanip.h>  \/\/参数化输入/输出 include <iostream.h> \/\/数据流输入/输出 include <limits.h>\/\/定义各种数据类型最值常量 include <locale.h>\/\/定义本地化函数 include <math.h> \/\/定义数学函数 include <stdio.h> \/\/定义输入/输出...

include<stdio.h> 和include<iostream.h>的区别
一、来源不同 1、include<stdio.h> :include<stdio.h> 是C标准库里面的函数库。2、include<iostream.h>:include<iostream.h>是C++标准库的函数库。二、命名空间不同 1、include<stdio.h> :引用include<stdio.h>的类需要手动添加命名空间。2、include<iostream.h>:引用include<iostream.h>的类...

C++编写程序。输入两个正整数,求它们的最大公约数和最小公倍数。_百 ...
include<iostream.h> include<math.h> void main(){int a,num1,num2,temp;cout<<"please input two numbers:");cin>>num1>>num2;int ji = num1*num2;if(num1<num2) \/*保证第一数是较大的值*\/ {temp=num1;num1=num2;num2=temp;} ...

#include<stdio.h> void main() {int i=1,sum=0; for(i=1;i<11;i+...
void表示无返回值...你可以不用在尾加return,当然加个return语句也是行的,但return后边不要有值...

C++中include <iostream>和include <iostream.h>有什么区别。_百度知 ...
一、来源不同 1、include<stdio.h> :include<stdio.h> 是C标准库里面的函数库。2、include<iostream.h>:include<iostream.h>是C++标准库的函数库。二、命名空间不同 1、include<stdio.h> :引用include<stdio.h>的类需要手动添加命名空间。2、include<iostream.h>:引用include<iostream.h>的类...

接收一个三位数,将此数的百与个位数互换,写一个C语言程序.
include <stdio.h> void main(){ int i,j,k,n,sum;printf("请输入一个三位数:\\n");scanf("%d",&n);i=n\/100;j=(n-100*i)\/10;k=n%10;sum=i+10*j+100*k;printf("换后的数是%d",sum);} 这种题目的关键是要把各个位上的数字分开。已经调试通过!

相似回答