为什么我的C语言程序没有输出?哪错了?

2024年11月16日 16:50
有5个网友回答
网友(1):

  1. 首先指出你写的一处错误,fun函数没有返回值。你要么定义为void,既然定义成int,就要返回数据。

  2. 代码可能需要优化下....

    输入定义成字符串,不必用char数组,然后如果用while就用while,用for就用for,干嘛都一起用,大致可以这么写(自己定义下变量,另外没必要把变量定义到和main fun一个级别,这样不利于释放空间,就用局部变量,然后fun可以用传参的方式)

    int i=0;

    scanf('%s',&str)

    while(str[i]!=条件){

    switch()或者if 判断符合哪种统计方式

    i++;

    }

网友(2):

while ( a[i]!='\n' )

改成

while ( a[i]!=0 )

网友(3):

对字符串应该使用字符串结束标志进行检测,即测试fun函数while循环里的a[ⅰ]!=0判断到了字符串末尾,回车键在输入时不会输入到字符数组里面。

网友(4):

仔细看了你的题目要求和你编写C语言程序,单从程序看看不出有问题,我没有C语言编程工具,无法调试,只能给你一些建议,第一个建议使用编程工具通过的断点跟踪调试,找出问题。第二个建议,增加输出语句,打印中间变量,静态分析。

网友(5):

把while(a[i]!='\n')
改为if(a[i]!='\n')
事实上这句语句不写也行