问题如图

C字符串倒置-中部对称

Code

#include<stdio.h>
#include<string.h>
#define MAX_LENGTH 10//最大字符串长度 

void inverString(char *str,int len);
int main(){
	int len=0,result=0;
	char str[MAX_LENGTH];
	printf("请输入字符串:");
	gets(str);
	
	//使用库函数计算长度,注意此处不包含结束字符‘\0’ 
	len=strlen(str);
	//倒置 
	inverString(str,len);
	//写入
	result=writeToFile(str,len);
	if(result)
		printf("%s\n写入成功!\n",str);
	else
		printf("%s\n写入失败!\n",str);
	system("pause");
	return 0;
}
/*
  1:Success
  0:fail
*/
int writeToFile(char *str,int len){
	FILE *fp;
	if((fp=fopen("out.txt","wt+"))==NULL)
		return 0;
		fwrite(str,sizeof(char),len,fp);
	fclose(fp);
		return 1;
}
void inverString(char *str,int len){
	int i=0;

	char temp=' ';
	
	//因为是对称交换,所以一半的循环就好了。 
	while(i<len/2){
		temp=str[i];
		//对称交换 
		str[i]=str[len-(i+1)];
		str[len-(i+1)]=temp;
		i++;
	}
} 

演示图

C字符串倒置-中部对称

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-08-01
  • 2022-12-23
  • 2021-11-06
  • 2022-12-23
  • 2021-09-14
  • 2021-11-15
猜你喜欢
  • 2022-12-23
  • 2021-07-25
  • 2022-12-23
  • 2022-12-23
  • 2021-10-28
  • 2021-12-18
  • 2021-11-28
相关资源
相似解决方案