急求,c语言作业

来源:百度知道 编辑:UC知道 时间:2024/06/17 02:07:39
输入一串字符,
输出'a‘到’w'字符加3,例如:输入‘a'输出’d'
输出’x‘到’z‘字符减23,即,输出’a'到‘c’
输出数字字符‘1’到‘9’,总和加10,例如:输入“236”输出“246”
输出其他字符,原样输出。
例如:输入“deg354#*%“ 输出”ghj364#*%“即可

偶只为学习..不知道对不对...但是你那写例子好像可以(还借鉴了楼上的..)
#define N 80
#include "stdio.h"
#include "math.h"
main()
{char str[N],str1[N];int k=0,j,i,m=0;
gets(str);
while(k!=strlen(str))
{if(str[k]>='a'&&str[k]<='w')printf("%c",str[k]+3);
else if(str[k]>='x'&&str[k]<='z')printf("%c",str[k]-23);
else if(str[k]>='0'&&str[k]<='9')
{for(j=k,i=0;j<=strlen(str);j++)
if(str[j]>='0'&&str[j]<='9')
{str1[i]=str[j];i++;}
k=k+i-1;
for(j=0;i>0;j++,i--)
m=m+(int)(str1[j]-48)*pow(10,i-1);
printf("%d",m+10);
}
else printf("%c",str[k]);
k++;}
getch(); }

void main(){
char str[80],str1[80];
int k=0,m=0;
gets(str);
while(k!=strlen(str))
{if(