标题:[求助]指针移位问题
只看楼主
lucis009
Rank: 1
等 级:新手上路
帖 子:181
专家分:0
注 册:2007-5-2
 问题点数:0 回复次数:0 
[求助]指针移位问题
题目:在字符串上查找ASCII码值最大的字符,将其放在第一个位置上,并且将这个字符前的原字符往后顺序移动.例如,原字符串是chyaab,经过处理后变成ychaab.

#include<stdio.h>
void change(char *point);
int main()
{
char str[80];
char *p;
p=str;
printf("请输入一个字答串:\n");
gets(p);
change(p);
printf("转换后的字答串是:\n");
puts(p);
}
void change(char *point)
{
char *q=NULL,*old;
char max;
old=point;
max=*point;
while(*point!='\0')
{
if(max<*point)
{
max=*point;
q=point;
}
point++
}
while(q>old)
{
*q=*(q-1);
q--;
}
*old=max;
printf("\n字符串中最大的字符是:%c\n",max);
}

问题:把*q=*(q-1)改成q=q-1,我想把它的指向改了不就是移了位吗?
搜索更多相关主题的帖子: 指针 移位 
2007-06-06 12:59



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-145339-1-1.html




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

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