例题:下列给定程序中,函数fun的功能是:首先把y所指字符串中的字符按逆序存放,然后将x所指字符串中的字符和y所指字符串中的字符,按排序的顺序交叉合并到z所指数组中,过长的剩余字符接在z所指数组的尾部。

​例如,当x所指字符串中的内容为1234,y所指字符串中的内容为abcdefg时,z所指数组中的内容应该为 1g2f3e4dcba;而当x所指字符串中的内容为abcdef,y所指字符串中的内容为1234时,z所指数组中内容应该为a4b3c2dlef。​​​​注意:不要改动main函数,不能增行或删行,也不能更改程序的结构。​

代码如下:

#include<conio.h>
#include<stdio.h>
#include<string.h>
void fun(char*x,char*y,char*z)
{
int i,j;
char ch;
i=0;
j=strlen(y)-1;
while(i<j)
{
ch=y[i];
y[i]=y[j];
y[j]=ch;
i++;
j--;
}
while(*x||*y)
{
if(*x)
{
*z=*x;
z++;
x++;
}
if(*y)
{
*z=*y;
z++;
y++;
}
}
*z=0;
}
main()
{
char s1[100],s2[100],s3[200];
printf("\nEnter s1 string:");
scanf("%s",s1);
printf("\nEnter s2 steing: ");
scanf("%s",s2);
fun(s1,s2,s3);
printf("\nThe result is:%s\n",s3);
}

输出运行窗口如下:

C语言编程>第二十一周   ⑦   下列给定程序中,函数fun的功能是:首先把y所指字符串中的字符按逆序存放,然后将x所指字符串中的字符和y所指字符串中的字符,按排序的顺序交叉合并到z所指数组中_main函数


C语言编程>第二十一周   ⑦   下列给定程序中,函数fun的功能是:首先把y所指字符串中的字符按逆序存放,然后将x所指字符串中的字符和y所指字符串中的字符,按排序的顺序交叉合并到z所指数组中_字符串_02


本周其他练习

​​C语言程序设计专栏​​

​​C语言编程>第二十一周 ① 下列给定程序中,函数fun的功能是:比较两个字符串,将长的字符串的首地址作为函数值返回。​​

​​C语言编程>第二十一周 ② 请补充main 函数,该函数的功能是:把一维数组中的元素逆置,结果仍然保存在原数组中。​​

​​C语言编程>第二十一周 ③ 下列给定程序中,函数fun的的功能是:为一个偶数寻找两个素数,这两个素数之和等于该偶数,并将这两个素数通过形参指针传回主函数。​​

​​C语言编程>第二十一周 ④ 请补充main函数,该函数的功能是:打印出1~99中满足个位数字的平方等于其本身的所有数。​​

​​C语言编程>第二十一周 ⑤ 下列给定程序中,函数fun的功能是:用冒泡法对5个字符串按由小到大的顺序进行排序。​​

​​C语言编程>第二十一周 ⑥ 请补充main函数,该函数的功能是:从键盘输入一个字符串,即一个指定,然后把这个字符及其后面的所有字符全部删除,结果仍然保存在原串中。​​

​​C语言编程>第二十一周 ⑦ 下列给定程序中,函数fun的功能是:首先把y所指字符串中的字符按逆序存放,然后将x所指字符串中的字符和y所指字符串中的字符,按排序的顺序交叉合并到z所指数组中,过长的剩余字符接在z所指数组的尾部。​​

​​C语言编程>第二十一周 ⑧ 请补充main函数,该函数的功能是:输出方程组a+b=52,a+2b=60的一组正整数解。本题的结果是a=44,b=8。​​

越努力越幸运!​​
​​加油,奥力给!!!