写一个C语言代码 “假设将26个小写字母首尾连接起来,做成一个圈,将输入字符串顺时针移动10位后输出”

作者&投稿:子丰狱 (若有异议请与网页底部的电邮联系)
C语言简单加密问题~~

程序不写了。关键的就是解决两个问题
1、对于每个字母,变成+10后的字母
2、如果结果超过z,那就要想办法往回走
至于空格吗,看你没有变
那你就可以动手写了。

给,已经编译运行通过:
#include
#include

void main()
{
char ch[26]={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
char *str="i like c programming language!";
char *p=str;

while(*p!='\0')
{
if((*p>='a')&&(*p<='z')) //只处理小写字母
printf("%c",ch[((*p-'a')+10)%26]); //先取得小写字母在26字母中的位置,再进行加10处理,为处理结果超过0~25的范围的情况,再加上一个%26的取余处理
else printf("%c",*p); //对于非小写字母,维持不变,直接输出

p++;
}

getch();
}

#include "stdio.h"
void main()
{
char str[5];
int i,k;
printf("请输入一个小写字符串:");
for(i=0;i<5;i++)
scanf("%c",&str[i]);
for(i=0;i<5;i++)
{k=(int) (str[i]);
if(k<=112)
k=k+10;
else
k=k-15;
printf("%c",k);
}
}
如果你想输入别的长度的字符串,自己改一下数组长度就可以了。

#include<stdio.h>
char Move(char c,int n)
{
c = (c - 'a' + n) % 26 + 'a';
return c;
}

int main()
{
char s[100];
scanf("%s",s);
int i = 0;
while(s[i] != '\0')
{
s[i] = Move(s[i],10);
i++;
}
printf("%s\n",s);
while(1);
return 0;
}

测试过了,完全正确,您看看吧
#include<stdio.h>
#include<conio.h>
int main(){
char key[50];
printf("please input the string:");
gets(key);
int num=strlen(key);
int i;
for(i=0;i<num;i++){
key[i]+=10;
if(key[i]>122) key[i]-=26;
}
puts(key);
getch();
}

char Change(char a)
{
if(a>='a'+10&&a<='a'+26)
return a- 10;
else if(a>='a'&&a<'a'+10)
return a+26-10;
else
return 0;
}
void Move(char *p)
{
char *a = p;
while(*a!='\0')
{
*a = Change(*a);
a++;
}
}

//我不多说了 你把他们的都试试 看看 输入az 出来是什么

//26个小写字母 ,哪里来的空格?
az
kjPress any key to continue

#include <stdio.h>

main()
{
int i;
char t[20]="\0";
gets(t);
for (i=0;t[i]!='\0';i++)
{
if (t[i]>'u')
{
t[i]+=10;
t[i]=t[i]-'z'+'a'-1;
}else
{
t[i]+=10;
}
printf("%c",t[i]);
}
}


石渠县18951339544: 编程实现输出26个大写字母和26个小写字母.C语言学的好的快答一下好不好 -
禤诸复方: for(int ascii = 97;ascii<123;ascii++){ putchar(ascii);//A-Z putchar(10);//换行 putchar(ascii-32);//a-z } for(char c = 'A';c<='Z';c++){ putchar(c);//A-Z putchar(10);//换行 putchar(ascii+32);//a-z }

石渠县18951339544: 求编一个C语言程序 实现的效果是,将26个字母头尾对换,成为一个加密运算那种 -
禤诸复方: #include int main(int argc, char *argv[]) { char s[30]; gets(s); for(int i=0;s[i];i++) s[i]=122-(s[i]-97); puts(s); return 0; }/*要完成头尾互换很简单,只要找出当前字母和a之间的距离x,再找出距离z为x的另一个字母,这个字母就是要找的.a的ascii值为97,z的ascii值为122,所以用上面的减法就可以很容易完成.我这里只写了小写字母的算法,大写的或者大小写混合的你自己写写看吧*/

石渠县18951339544: 【C语言问题】 1.将26个英文字母按aAbBcCdD……zZ先小写后大写得顺序逐个打印出来. 2.写一个函数,...
禤诸复方: 第一个程序: #include &lt;stdio.h&gt; int main() { int i; for(i = 0; i &lt; 26; i++) { printf("%c%c", 'a' + i, 'a' + i - 32); } putchar('\n'); return 0; } 第二个程序: #include &lt;stdio.h&gt; int main() { int n, i; double sum = 0; scanf("%d", &amp;n); for(i = 1; i ...

石渠县18951339544: 怎么用C语言编26个字母大小写互相转换的程序? -
禤诸复方: 例如: main() {char c1,c2; c1='a'; c2='B'; c1=c1-32; c2=c2+32; printf("%c %c",c1,c2);}运行结果:A b 小写字母比相应的大写字母的ASCII码大32

石渠县18951339544: 求大神用c语言写一个随机产生26个英文字母的小程序和一个随机产生数字0 - 9的小程序, -
禤诸复方: #include<stdio.h> #include<stdLIB.h> #include<time.h> int main() {char c; int i,a,b; FILE *fp; scanf("%d%d",&a,&b); fp=fopen("0.txt","w"); srand(time(0)); for(i=0;i<a;i++) fprintf(fp,"%c\n",'a'+rand()%26); for(i=0;i<b;i++) fprintf(fp,"%c\n",'0'+rand()%10); fclose(fp); return 0; }

石渠县18951339544: c语言,新建一个abc.txt,将26个字母写入该文件 -
禤诸复方: #include int main() { FILE *file = fopen("abc.txt", "w"); fputs("ABCDEFGHIJKLMNOPQRSTUVWXYZ", file); fflush(file); fclose(file); return 0; }

石渠县18951339544: 能不能设计一个C语言 输入26个字母大小写都可 然后就会输出这个字母的ASCⅡ码?可以用 -
禤诸复方: #include<stdio.h> void main() { char c;int i; scanf("%c",&c); //输入对应字符. i=c; printf("%d\n",i); //输出ASCII码 } 补充://已经是最简单的了,没有比这更简单的程序了.

石渠县18951339544: 谁能帮我做一个c语言小程序,26个英文字母,小写转大写..然后一句程序,后面跟上一句英文的解释. -
禤诸复方: 不是很懂要求,这是转换的程序:#include int main() { char a; printf("请输入小写字母:\n"); a=getchar(); while(a>='a'&&a { printf("%c",(a-32)); a=getchar(); } return 0; }

石渠县18951339544: 谁帮我检查一下我写的C语言代码,修改好多次就是检查不出哪里错了.无语
禤诸复方: #include <stdio.h> int main() { char ch; while((ch=getchar())!=EOF) { if((ch>='A'&&ch<'Q') ||( ch>='a'&&ch<'q')) { ch=ch+10; printf("%c",ch); } else if((ch>='Q'&&ch<='Z' )||( ch>='q'&&ch<='z')) { ch=ch-16; printf("%c",ch); } else if((ch<'A') ||( ch>'Z'&&ch<'a')||(ch>'z')) printf("%c",ch); } return 0; }

石渠县18951339544: 用C语言打印26个英文字母,7个一行,要求:大写字母旁边紧跟小写的字母. -
禤诸复方: 前面代码稍微有点错误 下面是稍加修改的代码 肯定对 #include<stdio.h> main() { int i,j,a,b; a=65; b=97; for(i=1;i<=4;i++) { for(j=1;j<=7;j++) {if(a==91)break;<br/> printf("%c",a);<br/> printf("%c",b);<br/> printf(" ");<br/> a++;b++;<br/>} printf("\n"); } }

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网