使用for循环输出1到100
for( int i=1 ; i<=100 ; i++ ) // 控制变量初始化表达式 、循环条件表达式、增量表达式
{
cout << i << “ ”;
}

break关键字
break:中断所在循环体,跳出本层循环
continue关键字
continue:跳出当前循环,继续执行下一次循环
完全数
由题中数据范围可知,最大测试数据时间可达10的8次方100 那就是100亿了 肯定超时了;使用数学函数,sqrt 作为限制循环次数的条件,而另外一个约数则由输入数x除以当前的循环的约数,即可求得另一约数;优化过后,复杂度为O(10^4100) 100万。
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int n,x,sum=0;
cin >> n;
for(int i=0;i<n;i++)
{
cin >> x;
if(x==1) cout << x << " is not perfect" << endl;
else
{
sum+=1;
for(int j=2;j<=sqrt(x);j++)
{
if(x%j==0)
{
int y=x/j;
if(y==j) sum=sum+j;
else sum=sum+j+x/j;
}
}
if(sum==x) cout << x << " is perfect" << endl;
else cout << x << " is not perfect" << endl;
}
sum=0;
}
return 0;
}
循环嵌套
一个循环的循环体内包含另外一个循环语句,这样的编程方式称之为“循环的嵌套”。循环嵌套时,外层循环执行一次,内层循环从头到尾执行一遍。3种循环(while循环、do-While循环和for循环)不仅可以自身嵌套,而且还可以互相嵌套。
外层循环控制行,内层循环控制列,总循环次数=内层循环次数*外层循环次数
输出5行星星组成的三角形
#include <iostream>
using namespace std;
int main()
{
for(int i=1;i<=5;i++)
{
for(int j=1;j<=i;j++)
{
cout<<"*"<<" ";
}
cout<<endl;
}
}
打印菱形
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int n;
cin>>n;
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
if(abs(i-n/2)+abs(j-n/2)>n/2) cout<<" ";
else cout<<"*";
}
cout<<endl;
}
}
最后修改时间:2025-07-01 08:47:30
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




