自己写的程序,关于指针的题目
我先把题目打出来,再把我的代码弄出来。找出一个字符串中最大的字符并把它放在最前面,其他字符向后顺序存放,如字符串student处理后为ustdent。
我用了指针数组,以及选择排序法。但是输出乱码。语法没错,找不出来是什么原因,求解。
程序代码:
#include"stdio.h"
#include"string.h"
#define N 50
int main()
{
void max(char *ch[],int n);
char *ch[50];
int i;
printf("input :\n");
scanf("%c",ch);
for(i=0; i<N; i++)
printf("%c",ch[i]);
max(ch,50);
for(i=0; i<50; i++)
printf("%c",ch[i]);
}
void max(char *ch[],int n)
{
int i,j,k;
char *a ;
for(i=0; i<N-1; i++)
{
k=i;
for(j=i+1; j<N; j++)
if(ch[k]<ch[j])
k = j;
if (k!=i)
{
a = ch[k];
ch[k] = ch[i];
ch[i] = a;
}
}
}









