C编程如何将字符串读入数组并将其正确打印回去?

艾米伦

我正在学习C,并且正在阅读《 C编程:一种现代方法,第二版》一书。如果有人有这本书,我将参加第8章编程项目6。

该项目希望我创建一个程序,该程序将来自用户的消息作为输入,将消息大写,将某些字符更改为数字,然后将其打印出来。我让程序可以处理示例消息(嘿,伙计,C非常酷),但是我不确定如何在不使用变量数组或动态数组的情况下使程序处理任何长度的消息,因为这本书还没有还没走那么远。任何帮助,将不胜感激。

我的代码如下

/* Translates a message entered by the user into BIFF speak */

#include <stdio.h>

#define SIZE ((int) (sizeof(message) / sizeof(message[0])))

int main(void)
{
        char message[25];
        int i;

        for (i = 0; i < SIZE; i++)
                message[i] = 0;

        printf("Enter message: ");
        for (i = 0; i < SIZE; i++)
                scanf("%c", &message[i]);

        for (i = 0; i < SIZE; i++) {
                if ((message[i] >= 'a')  && (message[i] <= 'z'))
                        message[i] = message[i] - 32;
                switch (message[i]) {
                        case 'A':
                                message[i] = '4';
                                break;
                        case 'B':
                                message[i] = '8';
                                break;
                        case 'E':
                                message[i] = '3';
                                break;
                        case 'I':
                                message[i] = '1';
                                break;
                        case 'O':
                                message[i] = '0';
                                break;
                        case 'S':
                                message[i] = '5';
                                break;
                }
        }

        printf("In B1FF-speak: ");
        for (i = 0; i < SIZE; i++) {
                printf("%c", message[i]);
        }
        printf("!!!!!!!!!!\n");

        return 0;
}
Cobusve

您的代码使用sizeof确定输入消息的最大长度,该消息使用scanf进行扫描。

在C中,字符串以0结尾,因此您可以选择一些选项,因为字符串必须小于您提供的message []所在的字符串。

首先,您必须在message []中分配尽可能多的内存,以获取最大可能的消息。然后,您可以通过使用strlen(message)来获取消息的大小,该函数将计算直到前0个字符之前有多少个字符,并在您的方法中使用该字符,或者您可以简单地中断它;字符为0时退出循环(0终止符指示字符串的结尾)。您可以通过将for循环(i> SIZE)更改为((i <SIZE)&&(message [i]!= 0))来实现。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将文件读入字符串数组

来自分类Dev

如何使用c#ForEach方法使用空格打印数组内容并将其存储在字符串变量中?

来自分类Dev

如何将png文件放入字符串并将其写入另一个文件

来自分类Dev

如何将字符串分成相等的部分并将其存储在字符串数组中

来自分类Dev

如何将字符串拆分两次并将其添加到链接列表?

来自分类Dev

如何将字符串分配给int并将该int传递给printf如何正确打印该字符串?

来自分类Dev

如何将文本文件加载到QListwidget并将其保存回去

来自分类Dev

如何将数组连接到字符串并将其添加到带换行符的textarea中?

来自分类Dev

如何将示例对象数组转换为字符串并将其还原回?

来自分类Dev

如何将字符串字典转换为字典并将其拆分为单独的列

来自分类Dev

将字符串作为输入并将其存储在C中的字符数组中

来自分类Dev

将文件读入字符串数组

来自分类Dev

c ++ Bank项目;如何将一组字符串读为单个浮点并将其添加

来自分类Dev

如何将XML转换为字符串并将其传递给Web服务中的Java代码?

来自分类Dev

如何使用c#ForEach方法打印带有空格的数组内容并将其存储在字符串变量中?

来自分类Dev

如何将字符串分成相等的部分并将其存储在字符串数组中

来自分类Dev

如何将字符串打印为特定字符?

来自分类Dev

将文件读入字符串数组

来自分类Dev

C-如何将文本文件中的单词读入字符串数组

来自分类Dev

如何将字符串读入向量

来自分类Dev

将字符串读入数组

来自分类Dev

您如何将字符串文件读入链表?(C)

来自分类Dev

如何将国际象棋棋盘的内容显示为C语言的字符串并将其存储在表格中?

来自分类Dev

如何将字符插入数组,并将该数组连接为字符串?

来自分类Dev

如何将数字转换为字符串并将其用作Javascript中的数组键?

来自分类Dev

如何将跨度注入字符串并将其作为 HTML 打印在我的 React 应用程序中

来自分类Dev

如何将 GBK 编码的文件读入字符串?

来自分类Dev

(C 编程) 如何将字符串插入字符数组,然后打印出该数组的所有元素?

来自分类Dev

如何将查询结果转换为字符串并将其插入表行

Related 相关文章

  1. 1

    将文件读入字符串数组

  2. 2

    如何使用c#ForEach方法使用空格打印数组内容并将其存储在字符串变量中?

  3. 3

    如何将png文件放入字符串并将其写入另一个文件

  4. 4

    如何将字符串分成相等的部分并将其存储在字符串数组中

  5. 5

    如何将字符串拆分两次并将其添加到链接列表?

  6. 6

    如何将字符串分配给int并将该int传递给printf如何正确打印该字符串?

  7. 7

    如何将文本文件加载到QListwidget并将其保存回去

  8. 8

    如何将数组连接到字符串并将其添加到带换行符的textarea中?

  9. 9

    如何将示例对象数组转换为字符串并将其还原回?

  10. 10

    如何将字符串字典转换为字典并将其拆分为单独的列

  11. 11

    将字符串作为输入并将其存储在C中的字符数组中

  12. 12

    将文件读入字符串数组

  13. 13

    c ++ Bank项目;如何将一组字符串读为单个浮点并将其添加

  14. 14

    如何将XML转换为字符串并将其传递给Web服务中的Java代码?

  15. 15

    如何使用c#ForEach方法打印带有空格的数组内容并将其存储在字符串变量中?

  16. 16

    如何将字符串分成相等的部分并将其存储在字符串数组中

  17. 17

    如何将字符串打印为特定字符?

  18. 18

    将文件读入字符串数组

  19. 19

    C-如何将文本文件中的单词读入字符串数组

  20. 20

    如何将字符串读入向量

  21. 21

    将字符串读入数组

  22. 22

    您如何将字符串文件读入链表?(C)

  23. 23

    如何将国际象棋棋盘的内容显示为C语言的字符串并将其存储在表格中?

  24. 24

    如何将字符插入数组,并将该数组连接为字符串?

  25. 25

    如何将数字转换为字符串并将其用作Javascript中的数组键?

  26. 26

    如何将跨度注入字符串并将其作为 HTML 打印在我的 React 应用程序中

  27. 27

    如何将 GBK 编码的文件读入字符串?

  28. 28

    (C 编程) 如何将字符串插入字符数组,然后打印出该数组的所有元素?

  29. 29

    如何将查询结果转换为字符串并将其插入表行

热门标签

归档