算法修炼之练气篇——练气十九层

博主:命运之光

专栏:算法修炼之练气篇

前言:每天练习五道题,炼气篇大概会练习200道题左右,题目有C语言网上的题,也有洛谷上面的题,题目简单适合新手入门。(代码都是命运之光自己写的,练完这200多道题就考了今年第十四届的B组蓝桥杯C/C++获得了省一,后面还会更新“算法修炼之筑基篇”里面包括了省赛到国赛这一个月训练的刷奖计划,大概有40道左右,感兴趣的话可以关注一下命运之光)

目录

题目 1025: [编程入门]数组插入处理

题目描述

输入格式

输出格式

样例输入

样例输出

题目 1062: 二级C语言-公约公倍

题目描述

输入格式

输出格式

样例输入

样例输出

题目 1061: 二级C语言-计负均正

题目描述

输入格式

输出格式

样例输入

样例输出

题目 1060: 二级C语言-同因查找

题目描述

输入格式

输出格式

样例输入

样例输出

题目 1671: 小九九

题目描述

输入格式

输出格式

样例输入

样例输出

方法一:暴力破解(能过)

方法二:按题目要求使用两个for循环

🍓🍓今日份修炼结束,再接再厉!!!


题目 1025: [编程入门]数组插入处理

题目描述

已有一个已正序排好的9个元素的数组,今输入一个数要求按原来排序的规律将它插入数组中。

输入格式

第一行,原始数列。 第二行,需要插入的数字。

输出格式

排序后的数列

样例输入

1 7 8 17 23 24 59 62 101 50

样例输出

1

7

8

17

23

24

50

59

62

101

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int i,a[10],n,cout=0;   
    for(i=0;i<9;i++)scanf("%d",&a[i]);
    scanf("%d",&n);
    for(i=0;i<9;i++)
    {
    	if(n<=a[i]&&cout==0)
        {
        	printf("%d\n",n);
        	cout=1;
        }
    	printf("%d\n",a[i]);
    }
    return 0;
}

题目 1062: 二级C语言-公约公倍

题目描述

输入两个正整数m和n,求其最大公约数和最小公倍数。

输入格式

输出格式

样例输入

2 3

样例输出

1 6

#include<bits/stdc++.h>
using namespace std;
int gys(int a,int b)
{
    if(b==0)return a;
    else return gys(b,a%b);
}
int main()
{
    int a,b;
    scanf("%d %d",&a,&b);
    int c=gys(a,b);
    printf("%d\n%d\n",c,a*b/c);
    return 0;
}

题目 1061: 二级C语言-计负均正

题目描述

从键盘输入任意20个整型数,统计其中的负数个数并求所有正数的平均值。

保留两位小数

输入格式

输出格式

样例输入

1 2 3 4 5 6 7 8 9 10 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10

样例输出

10 5.50

#include<bits/stdc++.h>
using namespace std;
int main()
{
    double n,cout=0,sum=0,m=20;
    while(m--)
    {
        scanf("%lf",&n);
        if(n<0)cout++;
        else sum=sum+n;
    }
    printf("%.0lf\n%.2lf",cout,sum/(20-cout));
    return 0;
}

题目 1060: 二级C语言-同因查找

题目描述

求出10至1000之内能同时被2、3、7整除的数,并输出。

每行一个。

输入格式

输出格式

样例输入

样例输出

#include<bits/stdc++.h>
using namespace std;
int main()
{
    for(int i=10;i<=1000;i++)
    {
        if(i%2==0&&i%3==0&&i%7==0)
        {
        	printf("%d\n",i);
        }
    }
    return 0;
}

题目 1671: 小九九

题目描述

学完黄老师的课,学会了循环,那么今天来打印一个九九乘法表吧?

输入格式

没有输入哦,直接打印!

输出格式

输出九九乘法表,乘法的乘积占两位,并靠左对齐,每个乘法表达式之间有一个空格!

注意:要使用双重循环!

样例输入

样例输出

1*1=1

1*2=2 2*2=4

1*3=3 2*3=6 3*3=9

1*4=4 2*4=8 3*4=12 4*4=16

1*5=5 2*5=10 3*5=15 4*5=20 5*5=25

1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36

1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49

1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64

1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81

方法一:暴力破解(能过)

#include<bits/stdc++.h>
using namespace std;
int main()
{
    printf("1*1=1\n");
    printf("1*2=2  2*2=4\n");
    printf("1*3=3  2*3=6  3*3=9\n");
    printf("1*4=4  2*4=8  3*4=12 4*4=16\n");
    printf("1*5=5  2*5=10 3*5=15 4*5=20 5*5=25\n");
    printf("1*6=6  2*6=12 3*6=18 4*6=24 5*6=30 6*6=36\n");
    printf("1*7=7  2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49\n");
    printf("1*8=8  2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64\n");
    printf("1*9=9  2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81\n");
	return 0;
}
//代码易懂,复制粘贴用时不超过一分钟

方法二:按题目要求使用两个for循环

#include<bits/stdc++.h>
using namespace std;
int main(){
	int i,j;
	for(i=1;i<=9;i++)
	{
		for(j=1;j<=i;j++)
		{
			cout<<j<<"*"<<i<<"="<<j*i;
			if(j*i>=10)
			{
				cout<<" ";
			}
			else
			{
				cout<<"  "; 
			}
		}	
		cout<<endl;
	}
	return 0;
}

🍓🍓今日份修炼结束,再接再厉!!!

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

命运之光

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值