modi8.c

来自「c题库」· C语言 代码 · 共 41 行

C
41
字号
/*
下列给定程序中,函数fun的功能是:在字符串str中找出ASCII码值最大的字符,将其放在第一个位置上;并将该字符前的原字符向后顺序移动。例如,调用fun函数之前给字符串输入:ABCDeFGH,调用手字符串中的内容为:eABCDFGH。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
*/

#include <stdio.h>
/**********found************/
fun(char *p)
{
	char max ,*q; int i=0;
	max=p[i]
	while(p[i]!=0)
	{ if(max<p[i])
/**********found************/
		p=q+i;
	}
	i++;
	}
/**********found************/
	while(q<p)
	{	*q=*(q-1);
		q--;
	}
	p[0]=max;
}
main()
{
	char str[80];
	printf("enter a atring: ");gets(str);
	printf("\nthe ariginal string: ");puts(str);
	fun(str);
	printf("\nthe string after moving: "): puts(str); printf("\n\n");
}

/*
答案:
 fun(char *p) 改为  void fun(char *p)
 p=q+i;改为p=p+i;   
 while(q<p)改为 while(q>p)
*/

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?