C语言中读入一个整数

C语言中读入一个整数,如果这个数是奇数则输出这个数的后三位数,如果这个数是偶数则输出这个数的前三位数

int main()
{
    int n;
    scanf("%d",&n);
    if(n%2 == 0)
    {
          while(n>1000)
                n = n/10;
          printf("%d",n);
    }
    else
    {  
        printf("%d",n%1000);
    }
    return 0;
}

如有帮助,请点击我回答右上角【采纳】按钮支持一下。

img


img

#include<stdio.h>
int main()
{
int n,arr[20],i=0;
scanf("%d",&n);
if(n%2==0){
  printf("%d",n%1000);
}else{
   while(n){
        arr[i++]=n%10;
        n/=10;
    }
    printf("%d%d%d",arr[i-1],arr[i-2],arr[i-3]);
}
return 0 ;
}

有帮助望采纳

#include <stdio.h>
#include <string.h>
int main()
{
    char s[100];
    scanf("%s", &s);
    // printf("%d", strlen(s));
    if (strlen(s) <= 3)
        printf("%s", s);
    else
    {
        if ((int)(s[strlen(s) - 1]) % 2)
        {
            for (int i = strlen(s) - 3; i < strlen(s); i++)
            {
                printf("%c", s[i]);
            }
        }
        else
        {
            for (int i = 0; i < 3; i++)
            {
                printf("%c", s[i]);
            }
        }
    }
}

img

img

修改如下,供参考:

#include<stdio.h>
#include<stdlib.h>
int main()
{
    int a;
    scanf("%d",&a);
    if(a < 3) return -1;
    if(a%2==1)
    {
       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);
    }
    system("pause");
    return 0;
}