原题链接:[编程入门]自定义函数之字符串反转
解题思路:
写一个函数,输入数组后,数组内元素循序逆转
主函数输入数组-->经过函数转换-->主函数输出数组
参考代码:
#include<stdio.h>
#include<string.h>
void invert(char*s);
int main()
{
int i;
char a[100];
scanf("%s", &a);
invert(a);//经过函数后,s[]完成逆序,直接输出
printf("%s", a);
return 0;
}
void invert(char*s)//函数只需要输入一个字符串数组(*s或s[]),没有输出,所以用void
{
char is[100];//新建一个数组is[],寄存倒序后的原数组s[]
int i, j;
for(i=strlen(s), j=0; i>0; j++){//把原数组s[]从后开始,放进数组is[]
i--;
is[j] = s[i];
}
is[j] = '\0';//最后给is[]加个结束符号
strcpy(s, is);//整个把is[]复制给s[],完成对s[]的逆序
}注意事项:
函数内外的数组一定要确定大小,不然用以运行错误(像我就一直出错,还没发现),例如:
char a[]; //是错误的
char a[100]; //是正确的
0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复