24小时热门版块排行榜    

查看: 313  |  回复: 6

低姿态的高度

新虫 (初入文坛)

[求助] 求大神找bug! 已有1人参与

CODE:
#include<stdio.h>
#include<string.h>
#define N 80

int fun(char*s){
  int i ,j=0;
  for(i=0;s[i]!="\0";i++)
    if(s[i]!=" "&&(s[i+1]==" "||s[i+1]=="\0"))
        j++;


  return j;
}


   void main(){

   char line[N];
   int m=0;
  printf("Enter a string :\n");
   gets(line);

   m=fun(line);
printf("The number of words is : %d " ,m);


   }

一直不能输出正确结果,求大神帮忙看一下

发自小木虫Android客户端

[ Last edited by jjdg on 2017-1-21 at 08:35 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tsmc

金虫 (小有名气)

2楼2017-01-21 07:48:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

彩果果

金虫 (著名写手)

感觉判断if写的有问题呢,可以直接统计空格吗

发自小木虫Android客户端
低调!
3楼2017-01-21 10:12:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

大风歌_09

金虫 (正式写手)

双引号是不是有问题啊?单个字符不是应该是用单引号?

发自小木虫Android客户端
4楼2017-01-21 20:33:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mobing99

新虫 (小有名气)

5楼2017-01-21 20:44:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

djj_td_182

新虫 (小有名气)

s, s[i+1]均是单个字符,用if语句判断时,应该使用单引号,例如:s != `\0`

发自小木虫Android客户端
6楼2017-01-22 09:11:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qhxzf

铁杆木虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
我也是刚接触C语言,只是试着改了一下你的代码,不知道可不可以用

#include<stdio.h>
#include<string.h>
#define N 80

int fun(char *s){
  int i ,j=0;
  for(i=0; s != '\0'; i++)
    {
            if(s !=32)
        j++;
        }


  return j;
}


   void main(){

   char line[N];
   int m=0;
  printf("Enter a string :\n";
   gets(line);
         
   m=fun(line);
printf("The number of words is : %d " ,m);


   }
7楼2017-01-22 15:00:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 低姿态的高度 的主题更新
信息提示
请填处理意见