高级语言程序设计课程第六次个人作业
这个作业属于哪个课程:https://edu.cnblogs.com/campus/fzu/2024C
这个作业要求在哪里: https://edu.cnblogs.com/campus/fzu/2024C/homework/13303
学号:102400202
姓名:高娅婷
第一题
编写函数fun(int m, int *k, int xx[]),将小于整数m的非素数存入xx数组中,个数由k返回
第二题
编写函数,将长度为n的字符串从第m个字符开始的全部字符复制成另一个字符串.
问题:题目理解错误,理解为第m个字符开始替换为另一个字符串
解决:根据题意修改代码
第三题
编写函数用冒泡法将数组按从小到大的顺序排列。
问题:开始的时候没有限制排序的次数
解决:限制排序的次数
第四题
将n个整数按输入顺序的逆序排列,要求应用带指针参数的函数实现。
问题:指针没有初始化
解决:初始化指针
第五题
写一个函数打印arr数组的内容,不使用数组下标,使用指针。
问题:n赋值错误
解决:sizeof(arr)改成sizeof(arr)/sizeof(arr[0])
第六题
编写程序,分别找出多个n×m数组的最大值、最小值,并输出两个值的下标。
第七题
判断上三角矩阵。上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。本题要求编写程序,判断一个给定的方阵是否上三角矩阵。
第八题
给定一个按升序排列的二维数组,编写一个函数来判断目标值是否存在于数组中。数组是一个m x n的矩阵,可使用算法快速查询。
问题:left+1写成left-1 导致输出错误
解决:left-1改成left+1
第九题
编写一个函数,输入一个整数,将其分解为两个质数之和。提示:函数可以声明为int split(int n, int *a, int *b)。n作为传入参数,a和b作为传出参数。若无法分解返回0,可以分解则返回1。
第十题
编写函数void shift(char* s, int n),请原地将字符串s循环左移n次。例如,字符串“hello”左移3次得到“lohel”。
第十一题
写一个程序读入一个二维整型数组并判断它是否为魔方矩阵。在魔方阵中,所有的行、列和对角线都拥有相同的和。
问题:判断各行各列和对角线的和是否相等书写错误导致输出结果只有不是魔方矩阵
解决:询问同学修改代码
第十二题
利用指针,判断两个字符串是否相等。忽略大小写。例如,输入 “hello”和”hELlO”,认为它们是相等的。返回值:1表示相等。0表示不同)
思考总结:指针和二维数组的运用不熟练,还要多加练习,尤其是指针很多时候分不清楚怎么用。