lt;N; j++) printf("%3d",x[i][j]);
printf("\n");
}
fun(x,2);
printf("The array after moving:\n\n");
for(i=0; i<M; i++)
{
for(j=0; j<N; j++) printf("%3d",x[i][j]);
printf("\n");
}
return 0;
}
void fun(int (*a)[N],int k)
{
int i,j,p,temp;
for(p=1; p<= k; p++)
for(i=0; i<M; i++)
{
temp=a[i][0];
for(j=0; j< N ; j++)
a[i][j]=a[i][j+1];
a[i][N-1]= temp;
}
}
参考程序
7.编写函数fun,它的功能是:把字符串中的内容逆置。
例如,字符串中原有的内容为:abcdefg,则调用该函数后,串中的内容为:gfedcba。
#include <string.h>
#include <stdio.h>
#define N 81
void fun(char *s)
{
}
int main()
{
char a[N];
printf("Enter a string: ");gets(a);
printf("The original string is: ");puts(a);
fun(a);
printf("\n");
printf("The string after modified: ");
puts(a);
return 0;
}
void fun(char *s)
{
int i,j;
char t;
for (i=0,j=strlen(s)-1;i<j;i++,j--)
{
t=s[i]; s[i]=s[j]; s[j]=t;
}
}
参考程序
8.编写函数fun,其功能是:将形参s所指字符串中的所有字母字符顺序前移,其他字符顺序后移。
例如,s所指字符串为:asd123fgh543df,移动处理后字符串为:asdfghdf123543。
#include <stdio.h>
void fun(char s[])
{
}
int main()
{
char s[80];
printf("Please input: ");
scanf("%s",s);
fun(s);
printf("\nThe result is: %s\n",s);
return 0;
}
void fun(char s[])
{
int i, j, k;
char p[80], t[80];
j=0; k=0;
for (i=0; s[i]!='\0'; i++)
{
if (((s[i]>='a')&&(s[i]<='z'))
||((s[i]>='A')&&(s[i]<='Z')))
{
t[j]=s[i]; j++;
}
else
{
p[k]=s[i]; k++;
}
}
for (i=0; i<j; i++) s[i]=t[i];
for (i=0; i<k; i++) s[j+i]=p[i];
}
参考程序
9.编写函数fun,它的功能是:将s所指字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的次序。
例如,s所指的字符串为“def35adh3kjsdtf7”,执行后结果为“defadhkjsdtf3537”。
#include <stdio.h>
void fun(char *s)
{
}
int main()
{
char s[80]="def35adh3kjsdtf7";
printf("The original string is :%s\n",s);
fun(s);
printf("The result string is :%s\n",s);
return 0;
}
void fun(char *s)
{
int i, j, k;
char t1[80], t2[80];
j=0; k=0;
for (i=0; s[i]!='\0'; i++)
{
if (s[i]>='0' && s[i]<='9')
{
t2[j++]=s[i];
}
else
{
t1[k++]=s[i];
}
}
for (i=0; i<k; i++) s[i]=t1[i];
for (i=0; i<j; i++) s[k+i]=t2[i];
}
参考程序
10.编写函数fun,它的功能是:在p所指字符串中找出ASCII码值最大的字符,将其放在第1个位置上,并将该字符前的原字符向后顺序移动。
例如,调用函数前字符串为:GABCDeFGH,调用函数后字符串为:eGABCDFGH。
#include <stdio.h>
void fun(char *p)
{
}
int main()
{
char str[80];
printf("Enter a string:");
gets(str);
prin