c语言倒叙字符串函数 c 字符串倒序

c语言 倒序输出字符串

您好,一个汉字占用两个字节(扩展ASCII码),而getchar()每次只能读入一个字节,因此读入汉字时,则需要用gets()函数。

成都创新互联公司专业为企业提供宁德网站建设、宁德做网站、宁德网站设计、宁德网站制作等企业网站建设、网页设计与制作、宁德企业网站模板建站服务,10年宁德做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

倒叙输出汉字串时,有两种方法,一是从字符串末端开始,每次输出两个字节,二是直接汉字将字符串在数组中倒置,然后再用puts()函数直接输出。

以上两种方法都有局限性,一旦含有非汉字字符,极有有可能造成乱码。

#include stdio.h

#include string.h

unsigned char *InverseStr(unsigned char t[],unsigned char s[]) {

int i,j,len = strlen((char *)s);

for(i = len - 1,j = 0; i = 0; --i,++j) {

if(s[i] 0X7F) { // 是汉字

t[j++] = s[i - 1];

t[j] = s[i];

--i;

}

else t[j] = s[i];

}

t[j] = '\0';

return t;

}

int main() {

unsigned char s[] = "C语言char数据类型练习";

unsigned char t[25];

printf("s = \"%s\"\n",s);

printf("t = \"%s\"\n",InverseStr(t,s));

return 0;

}

c语言怎么把字符串倒序

反序方法见 下面 函数 void op(char *s). 主函数是调用的例子。

#include stdio.h

void op(char *s){

int i,k;

char c;

k = strlen(s);

for (i=0;ik/2;i++){c=s[i];s[i]=s[k-i-1];s[k-i-1]=c;};

};

int main()

{

char s[200];

printf("input one line string:\n");

gets(s);

op(s);

printf("%s\n",s);

return 0;

}

输入:abc123

输出:321cba

求一个C语言函数,将输入字符串按倒序存放,不能用指针!

int main()

{

char str[100], temp;

int i;

scanf("%s", str);

for (i = 0; i strlen(str) / 2; i++)

{

temp = str[strlen(str) - i - 1];

str[strlen(str) - i - 1] = str[i];

str[i] = temp;

}

printf("%s", str);

return 0;

}


网站标题:c语言倒叙字符串函数 c 字符串倒序
网站路径:http://ybzwz.com/article/dosjhhg.html