Cool_Breeze 发表于 2020-1-10 18:32:55

if与else问题

本帖最后由 Cool_Breeze 于 2020-1-10 18:45 编辑

#include <stdio.h>
#include <string.h>
int sort_print(int a,int b);
int sum(int a, int b)
{
        int c=a,d=b;
        int i,sum=0;
        for (i=a;i<=b;i++)
        {
                sum+=i;
        }
        sort_print(c,d);
        return sum;
}
int sort_print(int a, int b)
{
        int j;
        for (j=a;j<=b;j++)
        {
                //这里只打印20(不是应该打印10,11,12,....20吗?(j!=b不是应该执行else语句吗?))
                if (j=b)
                {
                        printf("%d",j);
                }
                else
                {
                        printf("%d,",j);
                }
        }
        printf("\n");
}

int main(void)
{
        int begin=10,end=20;
        printf("%d",sum(begin,end));
        return 0;
}

zltzlt 发表于 2020-1-10 18:40:40

https://s2.ax1x.com/2020/01/10/l4p8aR.png

Cool_Breeze 发表于 2020-1-10 18:33:27

20
165
--------------------------------
Process exited after 0.007213 seconds with return value 0
请按任意键继续. . .

zltzlt 发表于 2020-1-10 18:39:55

楼主,你仔细看清楚,你少打了一个等号。。

#include <stdio.h>
#include <string.h>
int sort_print(int a,int b);
int sum(int a, int b)
{
      int c=a,d=b;
      int i,sum=0;
      for (i=a;i<=b;i++)
      {
                sum+=i;
      }
      sort_print(c,d);
      return sum;
}
int sort_print(int a, int b)
{
      int j;
      for (j=a;j<=b;j++)
      {
                if (j==b)
                {
                        printf("%d",j);
                }
                else
                {
                        printf("%d,",j);
                }
      }
      printf("\n");
}

int main(void)
{
      int begin=10,end=20;
      printf("%d",sum(begin,end));
      return 0;
}

Cool_Breeze 发表于 2020-1-10 18:44:25

zltzlt 发表于 2020-1-10 18:39
楼主,你仔细看清楚,你少打了一个等号。。

谢谢!真是太粗心!!

Cool_Breeze 发表于 2020-1-10 18:45:44

zltzlt 发表于 2020-1-10 18:40


谢谢!真是太粗心!!
页: [1]
查看完整版本: if与else问题