鱼C论坛

 找回密码
 立即注册
查看: 2743|回复: 4

数组

[复制链接]
发表于 2022-11-17 17:31:42 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
自己的code:
#include <stdio.h>

int main()
{
    int i = 0;
    char str[21];

    printf("请输入一行文本是:");
    while ((str[i++] = getchar()) != '\n') //给数组赋值
        ;
    printf("%d\n", i);

    if (i > 21)
    {
        i = 21;
        while (str[i--] != ' ')
        {
            str[i--] = '\0';
        }
    }

    str[21] = '\0';
    printf("你输入的文本是:%s\n", str);

    return 0;
}
/*
Hold on your hats.Ladis and gentlemen.
*/



问1:为什么验证Hold on your hats.Ladis and gentlemen.时,输出为Hold on ,不应该是Hold on your吗@Twilight6 @风车呼呼呼
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-11-17 18:28:46 | 显示全部楼层
本帖最后由 jhq999 于 2022-11-17 18:37 编辑

例子应该是Hold on your hats. Ladis and gentlemen.
int main()
{
    int i = 0;
    char str[21];

    printf("请输入一行文本是:");
    while (i<21&&(str[i] = getchar()) != '\n')i+=1 //给数组赋值
        ;
    printf("%d\n", i);

    if (i >= 20)
    {
        i = 20;
        while (str[i--] != ' ');
    }

    str[i+1] = '\0';
    printf("你输入的文本是:%s\n", str);

    return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-18 10:23:24 | 显示全部楼层
#include <stdio.h>

int main()
{
    int i = 0;
    char str[21];

    printf("请输入一行文本是:");
    while ((str[i++] = getchar()) != '\n') //给数组赋值
        ;

    /* ------------- 没有用的代码 -------------
    printf("%d\n", i);

    if (i > 21)
    {
        i = 21;
        while (str[i--] != ' ')
        {
            str[i--] = '\0';
        }
    }
    --------------------------------------- */

    str[i] = '\0'; // 这里 str[21] 改成 str[i] !!!

    printf("你输入的文本是:%s\n", str);

    return 0;
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2022-11-18 11:29:30 | 显示全部楼层

把25行的21改成i,不就会无限读取输出吗,我要的是控制输出最多为21个字符
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-18 11:49:39 | 显示全部楼层
Weabu 发表于 2022-11-18 11:29
把25行的21改成i,不就会无限读取输出吗,我要的是控制输出最多为21个字符

哦哦原来。只要把 while 迴圈多加个条件 i < 21 便可。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-20 16:33

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表