如何打印用户的输入,C中的字母?

时间:2014-09-23 01:20:52

标签: c

这项任务包含了相当多的东西,但不幸的是,我的教授......缺乏解释。

如果我要阅读用户的输入,我不太确定语法的外观,然后在垂直线上输出输入中的每个字母。

从长远来看,目标是在垂直线上打印出单词中的每个字符,然后在其右侧打印出二进制值。

例如:

Input = Hello

expected output = 
H
E
L
L
O

4 个答案:

答案 0 :(得分:2)

编程的关键之一是将问题分解为更小,更易于管理的部分。一步一步,每次添加一个功能。

  1. 阅读用户的输入。别做其他事情,只需阅读。

  2. 完全按照用户的输入打印用户的输入。

    Hello
    
  3. 现在按字符打印输入字符。打印H,然后e,然后l,等等。您需要为此编写一个循环。

    Hello
    

    (最终结果与第2步相同,但您的代码会更长。这是为下一步做准备。)

  4. 现在在单独的行上打印每个字符,而不是在同一行上打印所有字符。

    H
    e
    l
    l
    o
    
  5. 最后,在打印时将每个字母转换为大写。

    H
    E
    L
    L
    O
    
  6. 如果您不知道如何执行特定步骤,那就是Google的用武之地。例如:

答案 1 :(得分:0)

这样做;还有其他方法可以达到同样的效果:

int c;
while ((c = getchar()) != EOF)
    printf("%c\n", c);

这取决于你是否意味着每个字母'或者'每个角色'。如果它真的必须是字母,那么:

int c;
while ((c = getchar()) != EOF)
{
    if (isalpha(c))
        printf("%c\n", c);
}

答案 2 :(得分:0)

遍历c样式字符串(由空字符终止的字符数组" \ 0")您可以通过多种方式执行此操作。这是一个:

while(*ptr) {
 printf("%c\n", *ptr);
 ptr++;
}

答案 3 :(得分:0)

fgets获取一串用户输入。 fputc是少数输出命令之一。 将字符'\ n'设置为新的。 这有帮助吗?如果您需要完整的工作列表,请发送电子邮件。