永发信息网

c语言怎么把“abc”变成“bcd"

答案:5  悬赏:30  手机版
解决时间 2021-03-22 23:50
  • 提问者网友:欲望失宠
  • 2021-03-22 11:51
写出程序
最佳答案
  • 五星知识达人网友:思契十里
  • 2021-03-22 12:26
没有必要转换为int,然后再转换回来,直接加1即可。

//---------------------------------------------------------------------------

#include <stdio.h>
#include <string.h>

void ne(char *a)
{
int i,len=strlen(a);
for (i = 0; i<len; i++)
a[i]++;
}
int main(void)
{
char str[80];
scanf("%s",str);
ne(str);
printf("%s\n",str);
return 0;
}
//---------------------------------------------------------------------------
全部回答
  • 1楼网友:春色三分
  • 2021-03-22 16:07
#include <stdio.h> int main() { char sz[4] = {"abc"}; for( int i=0;i<3;++i ) { (*(sz+i))++; } printf("%s",sz); return 0; }
  • 2楼网友:深街酒徒
  • 2021-03-22 14:39
你好,代码修改如下,望采纳,你比较一下不同之处。 #include int main() { int i=0,n=0; char puzzle[10]; printf("please input n:"); scanf("%d",&n);//输入移位个数 printf("please input puzzle:"); scanf("%s",puzzle);//这里在循环外输入,采用%s格式输入 for (i=0;i<10;i++) {//去掉while循环,会让程序死循环 if (puzzle[i]>='a'+n && puzzle[i]<='z' || puzzle[i]>='a'+n && puzzle[i]<='z')//a+n到z,或a+n到z puzzle[i]=puzzle[i]-n;//转换为前n个字母 else if (puzzle[i]>='a'&& puzzle[i]<'a'+n || puzzle[i]>='a' && puzzle[i]<'a'+n) puzzle[i]=puzzle[i]+26-n;//转换为其后第26-n个字母/ } printf("%s\n",puzzle); return 0; }
  • 3楼网友:街头电车
  • 2021-03-22 14:15
#include "stdio.h" main() { char ch[4]={'a','b','c','\0'}; int i; for(i=0;i<3;i++) { ch[i]=(char)((int)ch[i]+1); } printf("%s",ch); } 解释: 分别将abc转换称int型的数值,然后分别加1就变成了bcd
  • 4楼网友:青灯有味
  • 2021-03-22 13:30
不用那么麻烦 直接+1就行了 根据楼上兄弟的代码更改 #include "stdio.h" main() { char ch[4]={'a','b','c','\0'}; int i; for(i=0;i<3;i++) ch[i]=ch[i]+1; printf("%s",ch); }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯