多行字符串反转输出

2023-12-14 06:37:46
题目描述

输入多行字符串,把这些字符串逆序且反转输出。

输入

输入多个(小于30个)字符串,每行一个字符串,字符串长度不超过30

输出

把字符串反转逆序输出。逆序指最后输入的字符串最先输出,反转指把每句话的字母都倒过来输出。

提示

由于没讲具体输入多少行字符串,因此,采用条件为gets(...)!=NULL的循环来实现,在VC6中运行时,输入Ctrl+Z结束输入

#include<stdio.h>
#include<string.h>
void nixu(char* str)
{
	int left = 0;
	int right = strlen(str) - 1;
	for (left=0,right=strlen(str)-1;left < right;left++,right--)
	{
		char temp = str[left];
		str[left] = str[right];
		str[right] = temp;
	}
}
int main()
{
	char lines[30][30];
	int count = 0;
	while (gets(lines[count])!=NULL&&count<30)
	{
		count++;
	}
	int i;
	for (i = count-1; i >=0; i--)
	{
		nixu(lines[i]);
		printf("%s\n", lines[i]);
	}
	return 0;
}

?如果使用fgets,则

while (fgets(lines[count], sizeof(lines[count]), stdin) != NULL && count <= 30)

文章来源:https://blog.csdn.net/2301_80173477/article/details/134965385
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。