gjfyyds 发表于 2021-9-19 17:33:26

不知道怎么写

#include<stdio.h>
int main()
{      
      int a;
      scanf("%d",a);
      if(a%2==0)
      printf("%d",a + 1);
      printf("%d",a + 2);
      printf("%d",a + 3);
      return 0;
}写了一部分,但是运行的时候结果出不来是为啥{:5_94:}

Daniel_Zhang 发表于 2021-9-19 17:39:08

#include<stdio.h>
int main()
{      
      int a;
      scanf("%d",&a);
      if(a%2 != 0){
            printf("%d",a + 1);
            printf("%d",a + 2);
            printf("%d",a + 3);            
      }
      else{
            printf("%d",a - 1);
            printf("%d",a - 2);
            printf("%d",a - 3);            
      }
      printf("\n");
      return 0;
}

jhq999 发表于 2021-9-19 17:40:33


#include<stdio.h>
int main()
{      
      int a;
      scanf("%d",a);
      if(a%2==0)
{
      printf("%d,",a + 1);
      printf("%d,",a + 2);
      printf("%d",a + 3);
}
else
{
}
      return 0;
}

Daniel_Zhang 发表于 2021-9-19 17:41:25

本帖最后由 Daniel_Zhang 于 2021-9-19 17:42 编辑

Daniel_Zhang 发表于 2021-9-19 17:39


首先你的逻辑就不对, a%2 == 0 是偶数,即 a 除以 2 余数为 0 是 真 时运行 if 里面的内容

然后你 if 也没有用大括号包住后面的语句,默认情况下没有大括号,if 或 for 等只会运行紧跟着的那一行代码

而且感觉你输入的应该是个奇数,你只做了一半的判断

还有, scanf 里面不能直接用 a,应该用 &a,即把数字存入 a 的地址

傻眼貓咪 发表于 2021-9-19 19:38:59

#include <stdio.h>

int main(){
    int num;
    scanf("%d", &num);
    if(num%2){
      printf("%d%d%d", num+1, num+2, num+3);
    }
    else{
      printf("%d%d%d", num-1, num-2, num-3);
    }
    return 0;
}
页: [1]
查看完整版本: 不知道怎么写