编写一个C程序定义一个函数reverseString,该函数接受一个字符组作为参数,用gets反转该字符组并将字符组中的字母变为小写,然后在main函数中测试这个函数
时间: 2025-01-28 18:19:03 浏览: 19
以下是一个符合您要求的C程序示例:
```c
#include <stdio.h>
#include <string.h>
#include <ctype.h>
void reverseString(char *str) {
int len = strlen(str);
int i, j;
// 反转字符串
for (i = 0, j = len - 1; i < j; i++, j--) {
char temp = str[i];
str[i] = str[j];
str[j] = temp;
}
// 将字符变为小写
for (i = 0; i < len; i++) {
str[i] = tolower((unsigned char)str[i]);
}
}
int main() {
char input[100];
printf("请输入一个字符串:");
// 使用fgets而不是gets以提高安全性
if (fgets(input, sizeof(input), stdin) != NULL) {
// 移除换行符
size_t len = strlen(input);
if (len > 0 && input[len-1] == '\n') {
input[len-1] = '\0';
}
printf("原始字符串:%s\n", input);
reverseString(input);
printf("反转并转为小写后的字符串:%s\n", input);
} else {
printf("输入错误。\n");
}
return 0;
}
```
这个程序定义了一个`reverseString`函数,该函数接受一个字符数组作为参数。函数首先反转字符串,然后将其中的所有字母转换为小写。
在`main`函数中,我们使用`fgets`函数来读取用户输入的字符串,这样可以避免`gets`函数可能带来的缓冲区溢出问题。然后,我们调用`reverseString`函数来处理字符串,并打印出处理前后的结果。
阅读全文
相关推荐



















