【发布时间】:2016-05-23 04:35:16
【问题描述】:
我正在编写一个程序,将字符串的字母在字母表中按特定方向旋转。它需要一个整数的初始输入,我将其称为 N,然后使用该整数作为每个字符将在字母表中移动的字母数。正整数向右移动,负整数向左移动。例如,如果输入是:
-2 cdefg
输出将是
abcde
为了做到这一点,我需要区分常规字母字符和整数,以获得初始的N。我已经尝试将 scanf() 与 %d 和 isalpha() 函数以及 %c 和 isdigit() 函数一起使用,但两者似乎对我都有障碍。澄清一下,我只是对初始变量 N 有问题。我不知道如何区分整数之间的“m”输入之间的区别。据我了解,它将为 N 存储 'm' 的 ASCII 值。
【问题讨论】:
-
要读取整数,请使用“%d”。要读取字符,请使用“%c”。您必须提前决定是否希望阅读其中之一。同一个字符串“2”可以解析为整数或字符,但结果却大不相同。