
指针
yun_oyun
这个作者很懒,什么都没留下…
展开
-
【C语言】单向链表排序、合并、逆序、分离(链表的头节点不储存数据)
编写程序,在第1题(第1题:编写程序,建立2个带头结点单链表,输入若干整数将正整数插入第1个单链表,将负整数插入第2个单链表,插入前和插入后单链表保持递增或相等次序,显示2个单链表,最后销毁。程序不可存在内存泄漏。)基础上合并2个单链表,合并前后单链表保持递增或相等次序,显示合并前后单链表。注意不可存在内存泄漏。...原创 2022-03-08 14:11:21 · 1908 阅读 · 0 评论 -
查找和打印子字符串
编写函数findsubstr(s, sub),在字符串s中查找字符串sub;若s中存在子字符串sub,则返回其在s的地址,否则返回NULL;输入样例1:hello, welcome to university.welcome输出样例1:welcome to university.输入样例2:hellohelloworld输出样例2:Not Found.代码如下:#include <stdlib.h>#include <stdio...原创 2021-12-30 01:27:43 · 615 阅读 · 0 评论 -
将字符串中连续的相同字符仅保留1个
编写函数,将字符串中连续的相同字符(包括空格)仅保留1个输入样例:a bb cccd d ef输出样例:a b cd d ef代码如下:#include <stdio.h>#include <stdlib.h>void delete_(char a[]){ char *p,*q; p = a; q = a + 1; int i = 0; while(*p != '\0') { i.原创 2021-12-30 01:22:04 · 2679 阅读 · 0 评论 -
查找学生名字字符串最大最小值(指针数组、二级指针)
编写一个函数find(),在传入的字符串指针数组中,查找长度最大的字符串和长度最小的字符串,分别通过函数返回值和二级指针带回到主函数中输出;输出样例:ChenMMLi代码如下:#include <stdio.h>#include <stdlib.h>#include <string.h>#define N 6char *find(char *stus[N], int n, char **p)//定义二级指针{ int i, j.原创 2021-11-30 22:12:11 · 407 阅读 · 0 评论 -
学生名字排序(指针数组+函数指针)(实参为指针数组和二维数组时,排序的区别)
班级有学生:char *stus[]={“Yang”,”Li”,”Zhao”,……};要求实现如下3子函数,对学生按名字按照调用者给出的排序规则进行 升序 排序:(1)函数 stu_sort(..),对字符串指针数组,按照传入的比较规则进行排序;(2)函数stucmp1(s1,s2),按照ASCII码比较字符串s1和s2,返回-1表示s1小于s2,0表示相等,1表示s1大于s2;(类似于strcmp()函数)(3)函数stucmp2(s1, s2),按照字符串长度比较s1和s2,返回-1表示s1原创 2021-11-30 20:37:34 · 1595 阅读 · 0 评论 -
字符串排序2 (对二维数组进行排序,储存在指针数组里)
1.主函数中定义一个二维字符数组s[5][MX], 然后输入n(n<=5)个字符串, 字符串最大长度为MX(MX=32);2.编写函数sort1(), 对输入的字符串按字母序升序排序,返回排序结果;3.编写函数sort2(), 对输入的字符串按字母序降序排序,返回排序结果;4.主函数中调用sort1()和sort2(), 完成功能验证.输入样例:5I want to learning english.C programming is fun.Nice to meet you原创 2021-11-30 18:56:12 · 1187 阅读 · 0 评论 -
字符串排序1(指针数组,元素指针,行指针)(strcmp)
1.编写函数sortstr1(), 按字母序对字符串数组进行升序排序;2.编写函数sortstr2(),按字母序对字符串数组进行升序排序;3.main()函数中调用sortstr1()和sortstr2(),分别完成对各星期字符串、月份字符串的排序;输出样例:在这里给出相应的输出。例如:Friday Monday Saturday Sunday Thursday Tuesday Wednesday April August December February January July原创 2021-11-30 16:23:22 · 824 阅读 · 0 评论 -
字符串拼接(指针)(一、不使用动态内存,返回NULL)(二、使用动态内存完成越界拼接)(strcpy、strcat、malloc)
main()输入2个字符串,将该这两字符串拼接到一起;1.要求定义和编写字符串拼接函数mystrcat(),该函数完成字符串拼接并返回拼接后字符串地址(要求不使用动态内存)2.若空间不够,返回NULL,并输出Not enough space输入样例1:welcome to 优快云!输出样例1:welcome to 优快云!输入样例2:welcome to aaaaaaaaaaaaaaaaaaaaaa!输出样例2:Not enough space..原创 2021-11-28 23:15:16 · 898 阅读 · 0 评论 -
判断某年某月某日是一年中的第几天,并判断是星期几(指针)
按要求输入一个日期,计算是这年的第几天和星期几,然后在main()调用子函数中输出结果。给出已知信息:1.闰年的判断公式:年份能被4整除不能被100整除,或是能被400整除;2.某年y的元旦是星期几的判断公式:(y+(y-1)/4-(y-1)/100+(y-1)/400)%7 (0表示星期天)3.isleap(): 返回一个年份是否是闰年;4.week(): 计算该日期是这年的第几天, 并计算是星期几, 返回这两个计算结果;#include<stdio.h>cons原创 2021-11-28 16:17:51 · 1007 阅读 · 0 评论 -
二维数组查找每行最大值 (指针)
编写函数findmax(),将mxn二维数组中每行最大值,按一一对应的顺序放入一维数组中。如int a[5][5],s[5],即将a[0]行的最大值存放于s[0],以此类推。输入样例:每行输入5个数,按回车输入:1 2 3 4 56 7 8 9 1011 12 13 14 1516 17 18 19 2021 22 23 24 25输出样例:输出每行的最大值,空格隔开(最后一个数字后也有空格)5 10 15 20 25 代码如下:#include<st..原创 2021-11-23 15:45:22 · 6693 阅读 · 0 评论 -
矩阵转置-指针与行指针
编写以下三个子函数,完成矩阵转置:(1) inputline(...),按行输入NX(NX=5)个整数,形成一行;(2) reverse(...),对矩阵进行转置。(3) outputline(...),输出一行的数据;输入样例:1 2 3 4 56 7 8 9 1011 12 13 14 1516 17 18 19 2021 22 23 24 25在这里给出相应的输出。例如:1 6 11 16 21 2 7 12 17 22 3 8 13 18 23 4 9原创 2021-11-23 11:58:54 · 704 阅读 · 0 评论 -
数组排序和查找(指针)
输入10个整数,编写函数sort, 按绝对值从小到大排序, 并返回绝对值最大整数在原数组中的下标。按要求编写sort()。#include<stdio.h>#include<math.h>void sort(int a[], int n, int *p2){ int i = 0,j = 0; *p2 = 0; int *p = a; //找出元素中绝对值最大的下标 for (i = 0; i < 10 - 1; i++)原创 2021-11-23 01:34:22 · 879 阅读 · 0 评论 -
用行指针进行二维数组的求和
要求编写函数fun实现二维数组每个元素相加,并把计算所得存放到每行的最后一个单元在这里给出一组输入。例如:1 2 3 4 56 7 8 9 1011 12 13 14 1516 17 18 19 20在这里给出相应的输出。例如:15 40 65 90 代码如下:#include <stdio.h>#include <stdlib.h>#define N 4#define M 5void fun(int (*p)[M + 1], int .原创 2021-11-23 11:22:09 · 4127 阅读 · 0 评论