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;
}
相关推荐
优化控制仿真模型2 分钟前
2026年最新驾考科目一考试题库2309道全。电子版pdf
经验分享·算法·pdf
qq_334903154 分钟前
嵌入式C++驱动开发
开发语言·c++·算法
阿贵---16 分钟前
C++代码规范化工具
开发语言·c++·算法
暮冬-  Gentle°24 分钟前
自定义内存检测工具
开发语言·c++·算法
ccLianLian35 分钟前
数论·欧拉函数
数据结构·算法
2501_9454248041 分钟前
C++编译期矩阵运算
开发语言·c++·算法
2301_815482931 小时前
C++中的类型标签分发
开发语言·c++·算法
xushichao19891 小时前
代码生成优化技术
开发语言·c++·算法
炽烈小老头1 小时前
【每天学习一点算法 2026/03/22】前 K 个高频元素
学习·算法
2401_873204651 小时前
模板编译期循环展开
开发语言·c++·算法