程序功能: 输入一个字符串,将字符串中的小写字母按规则进行替换后输出。替换规则为: a- >z, b- y,c x,...- c,y z >a。 [输入格式] 在一行中输入不超过80个字符长度的、以回车结束的非空字符串 [输出格式] 在一行中输出转换完成后的字符串。 [输入样例] ABC123xyz [输出样例] ABC123cba [函数定义要求] 请在该程序文件中,实现函数void ftran (char sr),将字符s中的小写字母按照规则进行替换,替换规为: a-,b- >y, c- >x,...x >c,y->,z>a.,补全代码#include <stdio.h> void ftran(char str[]); int main(void) { char str[80]; gets(str); ftran(str); puts(str); return 0; } /*考生在以下空白处定义函数*/ /*考生在以上空白处定义函数*/
时间: 2024-03-05 20:54:17 浏览: 136
在主函数中输入一含有大写字母的字符串,调用该函数并输出改变后的字符串。
补全代码如下:
```c
#include <stdio.h>
#include <string.h>
void ftran(char str[]);
int main(void) {
char str[80];
gets(str);
ftran(str);
puts(str);
return 0;
}
void ftran(char str[]) {
int len = strlen(str);
for (int i = 0; i < len; i++) {
if (str[i] >= 'a' && str[i] <= 'z') { // 如果是小写字母
str[i] = 'a' + 'z' - str[i]; // 按规则进行替换
}
}
}
```
该程序先读入一个字符串,然后在函数ftran中遍历字符串,如果当前字符是小写字母,则按规则进行替换。具体来说,对于小写字母a,其替换后的字符是z;对于小写字母b,其替换后的字符是y;以此类推,对于小写字母z,其替换后的字符是a。在主函数中调用ftran函数,将字符串作为参数传入即可。需要注意的是,本题中输入的字符串可能包含空格,因此不能使用scanf函数读入字符串,而应使用gets函数。
阅读全文