如何在C中的用户输入字符串中将浮点数/整数加倍?

布鲁斯

预先对不起,因为我是编程新手,代码中的某些内容可能看起来完全是胡说八道!我不确定自己是否使用atoi正确。

我正在尝试创建一个程序,将用户输入的句子拆分为单个单词,如果用户输入一个,则将数字(浮点数/整数)加倍。例如,I have 3 cats结果如下:

I
have
6
cats

我的程序现在可以拆分句子,但是我无法使整数翻倍。谁能帮我这个?

这是代码:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void main()
{
    char sentence[100];

    printf("Enter a sentence to split: ");
    scanf("%[^\n]s", sentence);
    char *pch;
    int y;

    y = atoi(sentence);
    printf("After splitting:\n", sentence);
    pch = strtok(sentence," ");
    while (pch != NULL) {
        printf("%s\n", pch);
        pch = strtok(NULL, " ");
    }
    system("PAUSE");
}

到目前为止,我的输出是:

Enter a sentence to split: Hi, I have 7 cats.
After splitting:
Hi,
I
have
7
cats.
Press any key to continue . . .
chqrlie

这是一个测试所有数字的简单版本:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(void) {
     char sentence[100];
     char *pch;

     printf("Enter a sentence to split: ");
     if (!fgets(sentence, sizeof sentence, stdin))
          return 1;

     printf("After splitting:\n");
     for (pch = strtok(sentence, " \n"); pch != NULL; pch = strtok(NULL, " \n")) {
         if (pch[strspn(pch, "0123456789")] == '\0') {
             printf("%d\n", atoi(pch) * 2);
         } else {
             printf("%s\n", pch);
         }
     }
     system("PAUSE");
     return 0;
}

如果您也想解析浮点数,则可以使用以下代码:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>

int main(void) {
     char sentence[100];
     char *pch, *pend;
     double value;

     printf("Enter a sentence to split: ");
     if (!fgets(sentence, sizeof sentence, stdin))
          return 1;

     printf("After splitting:\n");
     for (pch = strtok(sentence, " \n"); pch != NULL; pch = strtok(NULL, " \n")) {
         value = strtod(pch, &pend);
         if (*pend == '\0' && isfinite(value)) {
             printf("%g\n", value * 2);
         } else {
             printf("%s\n", pch);
         }
     }
     system("PAUSE");
     return 0;
}

注意测试isfinite()是为避免infnan数字。

注意:isfinite它是C99的一部分,VisualStudio 12不支持它,但较新的版本支持它。对于此旧版本,请使用中_finite()定义<float.h>

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在python3中将浮点数和字符串转换为整数值

来自分类Dev

在C ++中,如何从1行中获取字符串,浮点数和整数的输入?

来自分类Dev

无法在C中的单行中将字符串和浮点数作为输入

来自分类Dev

如何将浮点数转换为字符串而不会丢失用户在 C 中输入的精度?

来自分类Dev

如何在C#中将字符串拆分为浮点数?

来自分类Dev

如何在C中将浮点数转换为没有sprintf的字符串?

来自分类Dev

从用户输入读取浮点数或字符串

来自分类Dev

如何在Rails中将字符串(“€289,95”)转换为浮点数(“ 289.95”)?

来自分类Dev

如何在SSIS中将字符串转换为浮点数

来自分类Dev

如何在 PHP 中将长浮点数转换为字符串?

来自分类Dev

如何在 Rust 中将八进制字符串解析为浮点数?

来自分类Dev

如何在cpp中将字符串转换为浮点数

来自分类Dev

如何在整数时返回 int,同时忽略浮点数和字符串

来自分类Dev

如何从文件中获取整数-字符串-浮点数?

来自分类Dev

如何从js中的字符串中提取每个整数或浮点数(正数或负数)

来自分类Dev

如何从文件中获取整数-字符串-浮点数?

来自分类Dev

如何仅解析字符串中的浮点数?

来自分类Dev

如何在python中绘制字符串vs浮点数?

来自分类Dev

在文本字符串中查找整数/浮点数/字符串并放入数组

来自分类Dev

Python:分析输入以查看其是否为整数,浮点数或字符串

来自分类Dev

将字符串转换为数字(根据输入的变量为浮点数或整数)

来自分类Dev

检查输入是整数浮点数还是字符串或其他东西?

来自分类Dev

用于检查输入是否为字符串/整数/浮点数的 shell 脚本

来自分类Dev

如何检查用户输入的变量是数字(整数,浮点数)?

来自分类Dev

在Python中将字符串转换为浮点数

来自分类Dev

在 LINQ 中将字符串转换为浮点数

来自分类Dev

用户输入预期浮点数但变成字符串 Python

来自分类Dev

在Python中基于非连续整数,字符和浮点数分割字符串

来自分类Dev

AngularJS:如何将JSON字符串解析为整数或浮点数以在表单编号字段中显示

Related 相关文章

  1. 1

    如何在python3中将浮点数和字符串转换为整数值

  2. 2

    在C ++中,如何从1行中获取字符串,浮点数和整数的输入?

  3. 3

    无法在C中的单行中将字符串和浮点数作为输入

  4. 4

    如何将浮点数转换为字符串而不会丢失用户在 C 中输入的精度?

  5. 5

    如何在C#中将字符串拆分为浮点数?

  6. 6

    如何在C中将浮点数转换为没有sprintf的字符串?

  7. 7

    从用户输入读取浮点数或字符串

  8. 8

    如何在Rails中将字符串(“€289,95”)转换为浮点数(“ 289.95”)?

  9. 9

    如何在SSIS中将字符串转换为浮点数

  10. 10

    如何在 PHP 中将长浮点数转换为字符串?

  11. 11

    如何在 Rust 中将八进制字符串解析为浮点数?

  12. 12

    如何在cpp中将字符串转换为浮点数

  13. 13

    如何在整数时返回 int,同时忽略浮点数和字符串

  14. 14

    如何从文件中获取整数-字符串-浮点数?

  15. 15

    如何从js中的字符串中提取每个整数或浮点数(正数或负数)

  16. 16

    如何从文件中获取整数-字符串-浮点数?

  17. 17

    如何仅解析字符串中的浮点数?

  18. 18

    如何在python中绘制字符串vs浮点数?

  19. 19

    在文本字符串中查找整数/浮点数/字符串并放入数组

  20. 20

    Python:分析输入以查看其是否为整数,浮点数或字符串

  21. 21

    将字符串转换为数字(根据输入的变量为浮点数或整数)

  22. 22

    检查输入是整数浮点数还是字符串或其他东西?

  23. 23

    用于检查输入是否为字符串/整数/浮点数的 shell 脚本

  24. 24

    如何检查用户输入的变量是数字(整数,浮点数)?

  25. 25

    在Python中将字符串转换为浮点数

  26. 26

    在 LINQ 中将字符串转换为浮点数

  27. 27

    用户输入预期浮点数但变成字符串 Python

  28. 28

    在Python中基于非连续整数,字符和浮点数分割字符串

  29. 29

    AngularJS:如何将JSON字符串解析为整数或浮点数以在表单编号字段中显示

热门标签

归档