1、输入一个字符串和一个正整数x,将该字符串中的后x个字符复制到另一个字符串y中,输出字符串y;再对y串的内容前后倒置后存入数组z中并输出。
要求:用指针访问数组元素、用函数getx(char *c1)实现复制、用函数getr(char *c2)实现倒置。
运行示例
Enter a string: abcABCD
Enter an integer: 4
The new string is: ABCD
The invert string is: DCBA
#include<stdio.h> #include<string.h> void getx(char *c1); void getr(char *c2); int x; int main(void) { char s[80]; printf("enter a string:"); gets(s); printf("enter an integer:"); scanf("%d",&x); printf("the new string is:"); getx(s);//由这个函数可以指出指针c1已经指向了s; printf("the invert string is:"); getr(s);//同理; return 0; } void getx(char *c1) { char z[80];//再次定义一个数组用来存放复制后的; int i,y; y=strlen(c1);//y是数组s的长度。 for(i=0;i<x;i++) { z[i]=*(c1+y-x+i);//因为是从第x个字符开始。数组的长度减去x再加上i的值就是ci向后那么多个数组。 } z[x]='