C语言请问这里怎么改


#include<stdio.h>
#define words 10
char GET(char* st, int n,char* ma);
int main() {
    char ch[words];
    char str[words];
    int i = 0;
    while (fgets(ch, words, stdin) != NULL && ch[0] != '\n') {
        while (i < words - 1) {
            if (ch[i] == '\n' || ch[i] == '\t' || ch[i] == '\0')
            {
                ch[i] = '\n';
                ch[i + 1] = '\n';
            }
            i++;
        }

        GET(ch, words, str);
        fputs(str, stdout);
        break;
    }
    return 0;
}
char GET(char* st, int n,char* ma) {
    for (st; *st!=0; st++) {
        *ma = *st;
        ma++;
    }
    *ma = 0;
    return 0;
}

img

上面代码试运行了下,没出现题主的现象。

  • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7526436
  • 这篇博客也不错, 你可以看下C语言里的布尔类型
  • 同时,你还可以查看手册:c语言-成员访问与间接 中的内容
  • 除此之外, 这篇博客: C语言函数的概念中的 参数 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 函数的一个明显特征就是使用时带括号( ),有必要的话,括号中还要包含数据或变量,称为参数(Parameter)。

    示例

    	strlen(str1)用来计算字符串的长度,str1就是参数。
    	
    	puts("今天会下雨!!!")用来输出字符串,"今天会下雨"就是参数。
    
  • 您还可以看一下 王健伟老师的C语言入门篇课程中的 一维数组小节, 巩固相关知识点
  • 以下回答由chatgpt基于相关博客总结生成:

    根据你提供的信息,你希望在当前代码中实现某个功能,但是你尝试了一些方法都没有成功。你想知道应该如何修改代码来实现你想要的功能。

    从你给出的代码来看,当前代码并没有具体的内容,只有一些注释。所以目前无法确定你想要实现的具体功能是什么。如果你可以提供更具体的信息,我将能够帮助你更好地解决问题。

    在实际情况中,如果你遇到问题并尝试了一些方法但没有成功,以下是一些可能的解决方法:

    1. 查看错误消息:如果你的代码没有得到预期的结果或出现错误,查看程序输出或错误消息可以提供有关问题所在的线索。尝试找到相关的错误信息以及在哪个位置出错,以及尝试理解错误信息的含义。

    2. 代码调试:使用调试器工具进行代码调试。调试器可以帮助你逐行分析代码运行过程中的问题,并提供详细的变量值和堆栈跟踪信息。

    3. 检查逻辑错误:确保你的代码逻辑正确并完整。你可以重读你的代码,检查是否有错误或遗漏的部分,并确保关键步骤在正确的顺序中。

    4. 参考文档和示例代码:如果你对某个特定功能不熟悉,查找相关的文档和示例代码可能会提供解决方案。阅读官方文档、教程或者其他开发者的经验分享可以提供更多的指导。

    5. 提问或求助:如果你无法自己解决问题,可以在开发者社区或论坛上提问,寻求其他开发者的帮助。请提供足够的详细信息,以便他人理解你的问题并提供解决方案。

    6. 重新审视需求:请确保你的代码解决了你提出的问题。有时候,我们可能会出现误解或误判,需要再次审视自己的需求,确保目标正确和清晰。

    请提供更多的信息,我将竭尽所能帮助你找到解决问题的方法。

@ada; 你能帮忙么?