C语言编程:阶乘累加、对角线元素之和、素数筛选与排序

需积分: 9 2 下载量 178 浏览量 更新于2024-09-16 收藏 72KB DOC 举报
"C语言程序题" 在这些C语言程序题中,我们看到了四个不同的问题。首先,让我们逐一解析它们: 1. 求1!+2!+...+20! 这是一个计算阶乘累加的问题。程序通过定义两个双精度浮点型变量`s`(用于存储累加结果)和`t`(用于存储当前阶乘值),并用一个循环从1到20迭代计算每个数的阶乘,然后累加到`s`中。最后,使用`printf`函数以科学计数法显示累加结果。 2. 求一个3*3的整形二维数组对角线元素之和 此题目的目的是计算3x3整数数组主对角线上的元素之和。程序首先初始化一个3x3的整数数组`a`和一个变量`sum`为0,然后让用户输入数组元素。接着,通过两个嵌套循环遍历数组,当行索引`i`等于列索引`j`时,将该元素累加到`sum`中。最后,打印出对角线元素的总和。 3. 筛选100内的素数 这个程序使用了一个简单的算法来找出1到100之间的所有素数。首先,初始化一个长度为101的整数数组`a`,并将所有元素设置为其下标值。接着,通过两个嵌套循环,对于数组中的每个非零元素,检查是否有其他元素可以被它整除,如果可以,则将该元素设为0,表示它不是素数。最后,遍历数组打印出所有非零元素,即为素数。 4. 对十个整数排序 这个问题涉及到对用户输入的10个整数进行排序。程序首先接收用户输入的10个整数,然后使用选择排序算法将数组`a`中的元素按升序排列。选择排序的工作原理是,每次在未排序的部分找到最小元素,然后将其与第一个未排序的位置交换。经过9次这样的操作,数组将被完全排序。在每次找到最小元素后,程序会更新已排序部分的输出。 这些程序展示了基本的C语言编程技巧,包括变量定义、循环、条件判断、数组操作、输入/输出以及简单的算法实现。它们是学习和理解C语言基础概念的好例子。