|
发表于 2016-3-16 21:26:04
|
显示全部楼层
你是想要输入8位密码,然后把它翻译为向前两位吧~
A变C,B变D......Y变A,Z变B~
- #include<stdio.h>
- void main()
- {
- int c = 0;
- char cLine[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; //这句话没引用过...可以删
- char cAimline[8] = "0000"; //要初始化直接"0",后面数组的数,系统直接默认0
- s: printf("请输入您需要加密的密码:\n");
- for (c=0;c<7;c++) //你要8位的密码,那7就改成8,或者c<=7
- {
- scanf_s("%c",&cAimline[c]); //直接用scanf
- if ((cAimline[c]<'A') || (cAimline[c]>'Z'))
- {
- printf("你输入的字符有错误\n");
- goto s;
- }
- }
-
- for (c=0;c<7;c++) //这句也没用,前面的循环语句已经确定了没有错误才接着运行这句循环语句,所以这句没用了
- {
- if ((cAimline[c]<'A') || (cAimline[c]>'Z'))
- {
- printf("你输入的第%d字符有错误\n",c+1);
- }
- }
- for (c = 0; c < 7; c++) //你要8位的密码,那7就改成8,或者c<=7
- {
- if ((cAimline[c] != 'Y') && (cAimline[c] != 'Z'))
- {
- cAimline[c] = cAimline[c] + 2;
- }
- else
- {
- if (cAimline[c] = 'Y')
- {
- cAimline[c] = 'A';
- }
- else
- {
- cAimline[c] = 'B';
- }
- }
- }
- printf("您获得的密令如下:\n");
- for (c = 0; c < 7; c++) //你要8位的密码,那7就改成8,或者c<=7
- {
- printf("%c",cAimline[c]);
- }
-
- printf("\n");
- }
复制代码
|
|