C语言字符串逆转函数只需要将字符数组的前后数据进行交换就行了 。
#include stdio.h
#include string.h
char* reverse(char *x)
{
int i, tem, len = strlen(x);
int n = len / 2;
for (i = 0; i = n; i++)// 前后交换数据
{
tem = x[i];
x[i] = x[len - 1 - i];
x[len - 1 - i] = tem;
}
return x;
}
int main()
{
char p[] = "abcdefghijk";
printf("relust = %s\n", reverse(p));
return 0;
}
C语言反向输出函数指针void reverse(int *x, int n) {
int t;
int *i,*j;
j = x - 1 + n;
i = x;
while(ij) {
t = *i;
*i = *j;
*j = t;
i++;
j--; // 加上
}
}
这是一个程序问题,怎么用C语言实现链表指针的逆转,谢谢帮忙,小女子很急 。不知道你说的是不是指把原链表的最后一个节点弄成新链表的第一个节点,把原链表的第一个节点弄成新链表的最后一个节点 , 依次类推 。如果不是的话,不好意思,我理解错了,你也没必要往下看了 。
如果是我理解错误了题目,请对题目进行再次说明,我会关注这个问题,也许我能解决 。
程序未调试,基本思想是依次读取原链表的节点,然后用使用前插法插入新链表 。这样 , 原来链表的第一个节点是最先读取的,插入到新链表后就成了最后一个 , 依次类推 。
#include "stdlib.h"
//定义链表节点结构体
struct StructPoint
{
int Data;
struct StructPoint *Next;
};
void main()
{
struct StructPoint *Head,*NewHead,*Tail,*Tmp,*TmpHead;
int Data=https://www.04ip.com/post/0;
//初始化表头
Head=(struct StructPoint *)malloc(sizeof(struct StructPoint));
Head-Next=0;
Tail=Head;
//尾插法构建链表
scanf("%d",Data);
while(Data0)
{
Tmp=(struct StructPoint *)malloc(sizeof(struct StructPoint));
Tmp-Data=https://www.04ip.com/post/Data;
Tmp-Next=0;
Tail-Next=Tmp;
Tail=Tail-Next;
scanf("%d",Data);
}
//输出原链表
TmpHead=Head-Next;
while(TmpHead!=0)
{
printf("%d",TmpHead-Data);
TmpHead=TmpHead-Next;
}
//输出原链表结束
TmpHead=Head;//指向原链表头 , 避免出现悬空指针
Head=Head-Next;//跳过链表头
NewHead=0;
//前插法建立新链表
while(Head!=0)
{
Tmp=Head-Next;
Head-Next=NewHead;
NewHead=Head;
Head=Tmp;
}
//插入链表头
TmpHead-Next=NewHead;
NewHead=TmpHead;
TmpHead=TmpHead-Next;
//输出新链表
while(TmpHead!=0)
{
printf("%d",TmpHead-Data);
TmpHead=TmpHead-Next;
}
return 0;
}
C语言指针程序运行//经测试,代码运行OK,仅修改1处
#include stdio.h
int a[10]={1,2,3,4,5,6,7}; //全局数组
rev (int *m, int n)//递归函数,功能是逆转整型数组
{
int t;
if(n1) //如果n大于1则执行操作
{
t=*m;//t是中间变量
*m=*(m+n-1); //当前指针所指向的值等于最后1个值
*(m+n-1)=t;
rev(m+1,n-2);
//继续递归调用,应为已交换 , 则指针后移一位,长度减2
}
}
main()
{
int i;
rev(a,7);
for(i=0;i7;i++)//根据题意,这里应该是7 , 是10的话会有3个0
printf("%d",a[i]);
printf("\n");
}
【c语言指针逆转函数 c语言指针逆转函数怎么输入】关于c语言指针逆转函数和c语言指针逆转函数怎么输入的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。
- 将数据保存到文件中c语言 将数据保存到mongodb
- 罗布人村天气 mysql语言具有的功能
- redis编程语言 redis对应c语言
- redis一般和什么语言一起开发 和redis类似的编程
- mongodb采用什么语言 mongodb的设计采用什么
- c连接mysql数据库 c连接mysql报错
- mongodb底层数据结构 mongodb底层语言
- mongodb用什么语言写的 mongodb开源吗
- mongodb是做什么的 mongodb是什么语言写的
- 易语言调用mysql存储过程 易语言mysql高并发
