求解 为什么没结果
程序代码:
#include"stdio.h" void main() { char rev(char b[10]); char a[10]; gets(a); rev(a); printf("%s",a); } char rev(char b[10]) { int i,t; gets(b); for(i=0;i<=9;i++) { t=b[i]; b[i]=b[9-i]; b[9-i]=t; } }逆序输出输入的字符 求解答
#include <stdio.h> int main(void) { void rev(char b[]); char a[10]; gets(a); rev(a); printf("%s\n",a); return 0; } void rev(char b[]) { int i=0,j,len; char temp; //临时字符变量 //获取字符数组长度 while(b[i]!='\0') { i++; } //用折半法将字符数组逆序存放 len=i; i--; for(j=0;j<=len/2;j++,i--) { //首尾交换,b[j]头,b[i]尾 temp=b[j]; b[j]=b[i]; b[i]=temp; } }