- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
#include <stdio.h>
int main()
{
char text[1000], alpha;
int n;
printf("Please type in text:\n");
scanf("%[^\n]s", text);
printf("\nRotation number: "); // rotates letters to the right.
scanf("%d",&n);
printf("\n");
n = n % 26; // to wrap around alphabet.
int i = 0;
while (text[i] != '\0')
{
if((text[i] >= 'a' && text[i] <= 'z'))
{
alpha = text[i];
text[i] += n;
这是我不明白为什么它不起作用的部分:
if(text[i] > 'z')
{
text[i] = 'a' + (n - (26 % (alpha - 'a')));
}
它一直工作到字母“d”为止。 'f' 只给出 '\200'。
关于为什么我的代码不起作用的任何想法?
}
i++;
}
printf("Encrypted text:\n%s", text);
return 0;
}
最佳答案
这部分你不明白为什么不起作用:
if(text[i] > 'z')
{
text[i] = 'a' + (n - (26 % (alpha - 'a')));
}
可以用
简单地解决if(text[i] > 'z')
{
text[i] -= 26;
}
UPDATE 你正在使用 char
which 可能已签名,因此将密码,比如 20 添加到 z
将产生一个数字> 128,即负数。
我建议修改
int alpha; // changed from char
//...
alpha = text[i] + n;
if (alpha > 'z')
alpha -= 26;
text[i] = alpha;
关于C 中的凯撒密码 : can't seem to wrap around the latter letters of the alphabet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32159063/
我正在为考试学习 C++,有一件事困扰着我。 我有一个包含 25 个单词的文件(我们称之为“new.txt”)和一个包含 1000 个单词的文件(“words.txt”)。 我必须检查 new.txt
我是一名 Python 新手,我正在做一些简单(但现在对我来说很复杂)的练习。我尝试了很多方法,但我决定停止猜测,因为我相信这不会是一个理智的学习例程。 我必须解决以下练习: Write a last
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭 9
在我的数据库中,我有一个表,其中包含标题可以以字母或非字母字符开头的项目。例如数字或“@”或“#”。该模型如下所示: class Items(models.Model): title = mo
我有我的猜词游戏设置,这样当用户按下正确的字母时,相应的下划线就会被该字母替换。但是,我似乎无法多次填充同一个字母。示例:单词“Pennywise”有两个字母“n”,但是当按下该字母时,无论我按该字母
比方说,* 必须跟在 & 之后。例如, string asd = "Mother*&Mother*&Son"; // which is "Mother+ "*&" + "Mother" + "*&"
我试图通过一个接一个地添加字母来创建一个显示 QLabel(或 QTextEdit)内容的应用程序(就像应用程序是写他们)。 这是 python 中的示例: import os, time def w
已关闭。这个问题是 not reproducible or was caused by typos 。目前不接受答案。 这个问题是由拼写错误或无法再重现的问题引起的。虽然类似的问题可能是 on-top
在此示例中,我无法只定位第一个字母:http://jsfiddle.net/gB94x/ 显然“阅读更多”不应该也有首字下沉。 HTML 无法更改,它是固定模板的一部分。 谢谢! 最佳答案 .od_a
这个问题在这里已经有了答案: What does a space mean in a CSS selector? i.e. What is the difference between .class
什么是优雅的解决方案(即不向文本添加 ),当第一个单词是单个字母时,在首字母和第二个字母之间引入一个空格? 我正在尝试在段落的第一个字母上添加首字母大写。我遇到的问题是,如果第一个单词是 1 个字母
这是一个简单的问题,但它一直困扰着我和我的日志。 我有一个配置: akka { log-dead-letters-during-shutdown = off log-dead-letters
假设我有一个接受字符串输入的函数。 字符串输入如下所示:“first_time_run” 下面是我的代码 function changeInput (str) { // your code her
如果 td:nth-child(1) 的第一个字母不包含字母 D,所有想要的是隐藏 tr,如果它的所有 tds 不包含字母 D,atm 我的代码只是隐藏它。HTML: HTML
多年来我一直在尝试使用 Java 和 Regex 来研究这个问题,但确实很困难。我正在尝试创建一个符合这些条件的正则表达式: 单词只能包含字母和连字符 (-),并且必须以字母开头。没有数字。 我的 J
我用错误的字符串更新了 Name_Table.column_2 数据。我更新了 “JohnSmith”,而不是“John Smith”。 现在我想替换多个字符串,例如:'JohnSmith' as '
我正在尝试编写一段代码来执行以下操作: 将数字 0 到 9 分配给这个数字一个或多个字母。例如: 0 = N, 1 = L, 2 = T, 3 = D, 4 = R, 5 = V or F, 6 =
Love is a carefully designed lie. 爱情是一个精心设计的谎言 A friend without faults will never be found.&
题目地址: https://leetcode.com/contest/weekly-contest-105/problems/reverse-only-letters/ 题目描述 Given a
题目地址:https://leetcode.com/problems/shifting-letters/description/ 题目描述: Wehave a string S of lowerc
我是一名优秀的程序员,十分优秀!