C语言数组编程题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验4 数组
一.实验目的:
1.掌握一维数组的定义、赋值和输入输出的方法;
2.掌握字符数组定义、初始化、赋值的方法;
3.了解常见的字符串函数功能及其使用方法;
4.掌握二维数组的定义与引用。
二.实验内容:
1.编写程序,输入10个整数存入一维数组,统计输出其中的正数、负数和零的个数。
2.编写程序,输入10个整数存入一维数组,再按逆序重新存放后再输出。
3.编写程序,输入10个整数存入一维数组,对其进行升序排序后输出。
4.编写程序,求二维数组中元素的最大值和最小值。
5.编写程序,求一个4×4矩阵中所有元素之和。
6.编写程序:从键盘上输入一字符串,统计输出该字符串中的字母字符、数字字符、空格以及其他字符的个数。
7.编写程序:从键盘上输入一字符串,并判断是否形成回文(即正序和逆序一样,如“abcd dcba”)。
8. 产生一个由10个元素组成的一维数组并输出,数组元素由随机数(0-99)构成。
9. 产生一个由10个元素组成的一维数组,数组元素由随机数(0-99)构成。按照升序排列并输出。再输入一个数,按原来的规律将其插入并输出。
10. 产生一个由10个元素组成的一维数组,数组元素由随机数(0-99)构成。按照升序排列并输出。再输入一个数,要求找出该数是数组中的第几个元素,如果不在数组中,则输出找不到。
11. 找出一个二维数组中的鞍点,即该位置上的元素在该行最大,在该列最小。可能没有鞍点。
12. 编程输出杨辉三角。(要求输出10行)(杨辉三角:每行端点与结尾的数为1.每个数等于它上方两数之和。每行数字左右对称,由1开始逐渐变大)
13. 输入一行字符,统计大写字母、小写字母、数字、空格以及其它字符个数。
14. 编写程序,将两个字符串连接起来,不用strcat。
15. 编写程序实现strcpy函数功能。
16. 编程实现strlen函数功能。
17. 编程求2-4+6-8…-100+102的值。
18. 假设某人有100,000现金。每经过一次路口需要进行一次交费。交费规则为当他现金大于50,000时每次需要交5%如果现金小于等于50,000时每次交5,000。请写一程序计算此人可以经过多少次这个路口。
19. 输入若干个正整数,以0结束,将其中大于平均值且个位为5的数排序后输出。(按由大到小的顺序排序)
20. 输入一个字符串,将其中ASCII码值为基数的字符排序后输出。(按由小到大的顺序)
21. 输入一个以回车结束的字符串(少于80个字符),滤去所有的非16进制字符后,组成一个新字符串(16进制形式),然后将其转换为10进制数后输出。
22. 读入一个正整数n(1<=n<=6),再读入n阶矩阵,计算该矩阵除副对角线、最后一行、最后一列以外的所有元素之和(副对角线为矩阵的右上角至左下角的连线)。
23. 输入一个正整数n,输入n个数,生成一个n*n的矩阵,矩阵中第1行是输入的n 个数,以后每一行都是上一行循环左移一个元素。
输入输出示例:
Input n:5
Input number:2 5 8 4 9
The matrix is:
2 5 8 4 9
5 8 4 9 2
8 4 9 2 5
4 9 2
5 8
9 2 5 8 4
24. 输出可大可小的正方形图案,最外层是第一层,要求每层上用的数字与层数相同。
输入输出示例:
Input n:3
The matrix is:
1 1 1 1 1
1 2 2 2 1
1 2 3 2 1
1 2 2 2 1
1 1 1 1 1
25. 实现选择排序算法。
26. 实现希尔排序算法。
27. 实现快速排序算法。
28. 实现堆排序算法。
29. 实现归并排序算法。
30. 实现基数排序算法。
31. 输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组
三.实验步骤:
四. 实验结果分析: