碰到一题填空题,感觉对初学指针和字符串的人来说很有帮助,下面给出自己的理解。
大家也可以试试做着看看
以下是题解 也有注释
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
char max, str[80], *p=str, *q=str;
cin>>str;
max = *(p++);
while(*p != '\0')//找出最大值并记录在max
{
if(max < *p){
max = *p;
q = p;
}
p++;
}
p = q;
while(*p != str[0])//*p 从最大的字符处往前走
{
*p = *(p - 1);
p--;
}
*p = max;//更新str[0]的值
puts(p);
return 0;
}
指针理解好了对后面的学习也有较大帮助,大家加油