【入门3】循环结构

这篇博客主要通过一系列的编程题目,如找最小值、分类平均、数列求和等,深入讲解了C++中循环结构的应用,涵盖了算法和问题解决的实际案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

P5718 【深基4.例2】找最小值

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int n,a[10001];
    cin>>n;
    for(int i=1;i<=n;i++)
        cin>>a[i];
    sort(a+1,a+n+1);
    cout<<a[1];
    return 0;
}

P5719 【深基4.例3】分类平均

#include<bits/stdc++.h>
using namespace std;
int n,k;
double a,b,c,d;
int main(){
    cin>>n>>k;
    for(int i=1;i<=n;i++){
        if(i%k==0)
			a+=i,c++;
        else
			b+=i,d++;
    }
    printf("%.1lf %.1lf\n",a/c,b/d);
    return 0;
}

P5720 【深基4.例4】一尺之棰

#include<iostream>
using namespace std;
int a,ans=1;
int main()
{
	cin>>a;
	while(a>1){
		ans++; 
		a/=2;
	}
	cout<<ans<<endl;
	return 0;
}

P5721 【深基4.例6】数字直角三角形

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
void f(int n){
	if(n==5){
		printf("0102030405\n06070809\n101112\n1314\n15\n");
	}
	else if(n==1){
		printf("01\n");
	}
	else if(n==2){
		printf("0102\n03\n");
	}
	else if(n==3){
		printf("010203\n0405\n06\n");
	}
	else if(n==4){
		printf("01020304\n050607\n0809\n10\n");
	}
	else if(n==6){
		printf("010203040506\n0708091011\n12131415\n161718\n1920\n21\n");
	}
	else if(n==7){
		printf("01020304050607\n080910111213\n1415161718\n19202122\n232425\n2627\n28\n");
	}
	else if(n==8){
		printf("0102030405060708\n09101112131415\n161718192021\n2223242526\n27282930\n313233\n3435\n36\n");
	}
	else if(n==9){
		printf("010203040506070809\n1011121314151617\n18192021222324\n252627282930\n3132333435\n36373839\n404142\n4344\n45\n");
	}
	else if(n==10){
		printf("01020304050607080910\n111213141516171819\n2021222324252627\n28293031323334\n353637383940\n4142434445\n46474849\n505152\n5354\n55\n");
	}
	else if(n==11){
		printf("0102030405060708091011\n12131415161718192021\n222324252627282930\n3132333435363738\n39404142434445\n464748495051\n5253545556\n57585960\n616263\n6465\n66\n");
	}
	else if(n==12){
		printf("010203040506070809101112\n1314151617181920212223\n24252627282930313233\n343536373839404142\n4344454647484950\n51525354555657\n585960616263\n6465666768\n69707172\n737475\n7677\n78\n");
	}
	else if(n==13){
		printf("01020304050607080910111213\n141516171819202122232425\n2627282930313233343536\n37383940414243444546\n474849505152535455\n5657585960616263\n64656667686970\n717273747576\n7778798081\n82838485\n868788\n8990\n91\n");
	}
}
int main(){
    int n;
    scanf("%lld",&n);
    f(n);
    return 0;
}

P1009 [NOIP1998 普及组] 阶乘之和

#include<iostream>
using namespace std;
int bo[52][10000];
int n;
int main()
{
    bo[0][0]=bo[0][1]=bo[1][0]=bo[1][1]=1;
    cin>>n;
    for(int i=2;i<=n;i++)
    {
        for(int r=1;r<=bo[i-1][0];r++
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值