c语言求解 5

题目:输入若干字符(以回车符为结束),将它们变成其后的第四个字母,A-->E,.,.W-->A,非字母字符忽略。要求写出代码+程序框图+思路... 题目:输入若干字符(以回车符为结束),将它们变成其后的第四个字母,A-->E, .,. W-->A,
非字母字符忽略。要求写出代码+程序框图+思路
展开
 我来答
一变班爱麻啊堡0J
高粉答主

2020-01-13 · 醉心答题,欢迎关注
知道答主
回答量:11.4万
采纳率:2%
帮助的人:5731万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shandian888999
2019-12-31 · TA获得超过289个赞
知道小有建树答主
回答量:392
采纳率:86%
帮助的人:63.3万
展开全部
#include<stdio.h>
#include<ctype.h>
char str[1000];
int i;
int main()
{
scanf("%s",str);
do{if(isalpha(str[i]))
if(str[i]>='W'&&str[i]<='Z')str[i]=str[i]-'W'+'A';
else if(str[i]>='w'&&str[i]<='z')str[i]=str[i]-'w'+'a';
else str[i]+=4;
i++;}while(str[i]);
printf("%s",str);
return 0;
}
更多追问追答
追答
#include
#include
char str[1000];
int i;
int main()
{
scanf("%s",str);//输入字符串
do{if(isalpha(str[i]))//判断第一个字符是不是字母
if(str[i]>='W'&&str[i]='w'&&str[i]<='z')str[i]=str[i]-'w'+'a';
else str[i]+=4;//如果不是w或以后的字母,就直接向后推4位
i++;}while(str[i]);//准备判断下一个字符,并且当下一个字符为空字符时退出循环
printf("%s",str);//输出转换后的字符串
return 0;
}

这是思路,用注释写的

这是程序框图

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式