| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 528 人关注过本帖
标题:[求助]c语言的问题(继续)
只看楼主 加入收藏
popwer
Rank: 1
等 级:新手上路
帖 子:64
专家分:0
注 册:2006-9-4
收藏
 问题点数:0 回复次数:5 
[求助]c语言的问题(继续)
#include<stdio.h>
#include<string.h>
fun (char *w,int n)
{
char t,*s1,*s2;
s1=w;s2=w+n-1;
while(s1<s2)
{t=*s1++;
*s1=*s2-;
*s2=t;
}
}
main()
{char *p;
p="1234567";
fun(p,strlen(P));
puts(P);
}
这个是在一个数组中选择头尾数据输出
对这个部分看的不是很明白 请帮忙解释下
s1=w;s2=w+n-1;
while(s1<s2)
{t=*s1++;
*s1=*s2-;
*s2=t;
谢谢了啊 在家里学习 只好麻烦各位网上的大哥们了 题目上写的就是*s1=*s2-; 我没打错
搜索更多相关主题的帖子: c语言 
2006-09-05 23:11
cdmalcl
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:24
帖 子:4091
专家分:524
注 册:2005-9-23
收藏
得分:0 
s1=w;s2=w+n-1;
把w 的首地址给s1
把w 的尾地址给s2

进入循环
w[0]--->t
w[6]--->w[1]
t --->w[5]

以此类推
直到s1<s2
我感觉那程序写的不对
是不是这个啊:

#include<stdio.h>
#include<string.h>
fun (char *w,int n)
{
char t,*s1,*s2;
s1=w;
s2=w+n-1;
while(s1<s2)
{
t=*s1;
*s1++=*s2;
*s2--=t;
}
}
main()
{
char *p;
p="1234567";
fun(p,strlen(p));
puts(p);
getch();
}

这还有点意义
2006-09-05 23:21
mp3aaa
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:2013
专家分:8
注 册:2006-2-15
收藏
得分:0 

错误的程序

图片附件: 游客没有浏览图片的权限,请 登录注册


羊肉串 葡萄干 哈密瓜!!
2006-09-05 23:22
cdmalcl
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:24
帖 子:4091
专家分:524
注 册:2005-9-23
收藏
得分:0 
现在的书太恶心
2006-09-05 23:40
mp3aaa
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:2013
专家分:8
注 册:2006-2-15
收藏
得分:0 

盗版书


羊肉串 葡萄干 哈密瓜!!
2006-09-05 23:42
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
字符串倒序输出.

设两个指针分别指向字符串头,尾.总是交换两指针中的内容,两指针向中间靠拢,直到头指针不在尾指针的前面.
cdmalcl 写的很好啊

类似的:

void fun (char *w,int n)
{
char t;
int i,j;
for(i=0,j=n-1;i<j;i++,j--)
{
t=*(w+i);
*(w+i)=*(w+j);
*(w+j)=t;
}
}


倚天照海花无数,流水高山心自知。
2006-09-06 13:08
快速回复:[求助]c语言的问题(继续)
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.043792 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved