项目场景:第八章T5
写一个函数,使输入的一个字符串按反序存放,在主函数中输入和输出字符串。
问题描述
①gets字符串输入函数:不知道格式是怎么样的
写代码过程中试了gets(”%s“,&a[ ]),gets(”%s“,&a),gets(”%c“,&a[ ]),gets(”%c“,a[ ])
char a[10];
gets(a);//从键盘输入一串字符串给a
vs2022使用gets()函数,需要添加#include <string.h>
此外gets报错:error C3861: “gets”: 找不到标识
解决办法:使用gets_S(),还有其它方法我没有尝试
②puts字符串输出函数:不知道格式是怎么样的
char a[]={"China"};
puts(a);
③算法出错:输入abcde,输出decba
void Reverse_Str(char array[])
{
int i, j, n;
char temp;
n = strlen(array);
for (i = 0; i < n/2; i++)
for(j = n-1; j > n/2; j--)
{
temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
解决方法:原来是i=0时已经完成了反序操作,随后的i++又重复反序操作了
void Reverse_Str(char array[])
{
int i, j, n;
char temp;
n = strlen(array);
for (i = 0, j = n - 1; i < n/2; i++, j--)
{
temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}