C语言第十四周课——课堂练习

目录

1.冒泡法排序(降序排列)

2.控制台输出100以内的素数

[3. 计算1-100的和](#3. 计算1-100的和)


1.冒泡法排序(降序排列)

要求使用for循环,并且写死数据

写死数据:不从控制台输入,在排序前定义好需要排序的数据

cpp 复制代码
//假设进行降序排序
#include<stdio.h>
int main()
{
	int arr[] = { 9,8,7,4,5,6,1,2,3,0 };//数组中有10个元素
	for (int i = 0; i < 9; i++)//i<9进行解释①
	{
		for (int j = 0; j < 9-i; j++)//i<9-i进行解释
		{
			if (arr[j] < arr[j + 1]) //满足条件进行交换
			{
				int temp = arr[j];
				arr[j] = arr[j + 1];
				arr[j + 1] = temp;
			}
		}
	}
	for (int z = 0; z < 10; z++)//打印数组,检验排序结果
	{
		printf("%d  ", arr[z]);
	}
	return 0;
}

2.控制台输出100以内的素数

要求先编写程序成功,之后每5个数字打印换一行

cpp 复制代码
#include <stdio.h>
int main()
{
    int i, j;
    printf("1到100之内的素数有:\n");

    // 遍历1到100的数字
    for (i = 2; i <= 100; i++)
    {
        // 假设当前数字i是素数
        int isPrime = 1;

        // 检查i是否能被2到i-1之间的数字整除
        for (j = 2; j < i; j++)
        {
            if (i % j == 0)
            {
                // 如果能被整除,说明不是素数,标记为0
                isPrime = 0;
                break;
            }
        }

        // 如果isPrime为1,说明是素数,输出该数字
        if (isPrime == 1)
        {
            printf("%d ", i);
        }
    }

    printf("\n");
    return 0;
}

每五个换一行:

换行的核心代码,其余的地方同上

cpp 复制代码
        int temp = 0;//在全局定义这个变量(在定义i和j的下一行)
        if (isPrime == 1)
        {
			temp++;
            printf("%d\t", i);
			if(temp == 5)
			{
				temp = 0;
				printf("\n");
			}
        }

3. 计算1-100的和

核心:sum += i;

cpp 复制代码
#include <stdio.h>
int main()
{
    int sum = 0;
	for(int i = 1;i<=100;i++)
	{
		sum += i;
	}

	printf("1-100的合为: %d\n",sum);
    return 0;
}
相关推荐
GalaxyPokemon27 分钟前
归并排序:分治思想的高效排序
数据结构·算法·排序算法
ThreeYear_s29 分钟前
基于FPGA的PID算法学习———实现PI比例控制算法
学习·算法·fpga开发
我不是加奈3 小时前
QMC5883L的驱动
c语言·驱动开发·单片机·嵌入式硬件
Coding小公仔3 小时前
LeetCode 240 搜索二维矩阵 II
算法·leetcode·矩阵
C++chaofan3 小时前
74. 搜索二维矩阵
java·算法·leetcode·矩阵
青小莫4 小时前
数据结构-C语言-链表OJ
c语言·数据结构·链表
Studying 开龙wu4 小时前
机器学习监督学习实战五:六种算法对声呐回波信号进行分类
学习·算法·机器学习
Mi Manchi264 小时前
力扣热题100之二叉树的层序遍历
python·算法·leetcode
wu~9704 小时前
leetcode:42. 接雨水(秒变简单题)
算法·leetcode·职场和发展