判断生肖c语言,C是什么生肖

发布时间:2023-01-03

本文目录一览:

  1. 用C语言接受一个年份判断他的属相
  2. c语言用函数输入一个年龄判断是否属羊?
  3. 用c语言写出1900年以后的任意一年,判断该年的生肖(用Switch语句)?
  4. [输入年份输出属相c语言,编写程序,输入一个年份,判断该年属相.(提示s](#输入年份输出属相c语言,编写程序,输入一个年份,判断该年属相.(提示s)
  5. [用switch判断年份属相,C语言编程: 已知2015年是羊年,编程实](#用switch判断年份属相,C语言编程: 已知2015年是羊年,编程实)

用C语言接受一个年份判断他的属相

因为1996年为鼠年,可以取目标年与1996年差的12的模判断

#include "stdio.h"
int main() {
    int year;
    printf("input the year: ");
    scanf("%d", &year);
    if (year > 0)
        printf("%d\n", (year - 1996) % 12 + 1);
    else if (year < 0)
        printf("%d\n", (1996 - year - 1) % 12 + 1);
    else
        printf("illegal year input.\n");
    return 0;
}

12年为一个循环,1996加减n个12年就是鼠年,当加减n个12年比你输入的数小于12,就可以判断出属相。

c语言用函数输入一个年龄判断是否属羊?

调用 CheckShengXiaoByAge 函数,参数1为年龄,参数2为需要判断的生肖,返回值:返回 0 表示年龄与生肖相符,否则不符。 GetCurrentYear 函数,用于获取当前年份

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
typedef enum ShengXiao {
    HOU,JI,GOU,ZHU,
    SHU,NIU,HU,TU,
    LONG,SHE,MA,YANG
} SX;
// 获取当前年份
int GetCurrentYear() {
    time_t tTime = 0; // 距离1900年1月1日的秒数
    char str[64] = {0};
    struct tm* stTim = NULL; // 时间结构
    time(&tTime);
    stTim = localtime(&tTime);
    strftime(str, sizeof(str), "%Y", stTim); // 格式化时间
    return atoi(str);
}
int CheckShengXiaoByAge(unsigned int Age, const char* ShengXiaoName) {
    unsigned int BirthYear = GetCurrentYear() - Age;
    char G_ShengXiaoList[12][4] = {
        [HOU] = "猴", [JI] = "鸡", [GOU] = "狗", [ZHU] = "猪",
        [SHU] = "鼠", [NIU] = "牛", [HU] = "虎", [TU] = "兔",
        [LONG] = "龙", [SHE] = "蛇", [MA] = "马", [YANG] = "羊"
    };
    return strcmp(G_ShengXiaoList[BirthYear % 12], ShengXiaoName);
}
int main(void) {
    if (!CheckShengXiaoByAge(25, "牛")) {
        puts("Yes");
    } else {
        puts("No");
    }
    return 0;
}

用c语言写出1900年以后的任意一年,判断该年的生肖(用Switch语句)?

#include <stdio.h>
main() {
    int y;
    printf("输入年度数:");
    scanf("%d", &y);
    switch ((y - 1900) % 12) {
        case 0: printf("鼠"); break;
        case 1: printf("牛"); break;
        case 2: printf("虎"); break;
        case 3: printf("兔"); break;
        case 4: printf("龙"); break;
        case 5: printf("蛇"); break;
        case 6: printf("马"); break;
        case 7: printf("羊"); break;
        case 8: printf("猴"); break;
        case 9: printf("鸡"); break;
        case 10: printf("犬"); break;
        case 11: printf("猪"); break;
    }
}

输入年份输出属相c语言,编写程序,输入一个年份,判断该年属相.(提示s

提起输入年份输出属相c语言,大家都知道,有人问关于c语言 已知1972年属鼠,输入一个四位的整数(1000-2999之间)代表年份,显示这一年属相是什么?另外,还有人想问C语言编程: 已知2015年是羊年,编程实现,输入任意年份,输出该年属相。(使用switch,你知道这是怎么回事?其实输入年份输出属相用c语言while语句,下面就一起来看看编写程序,输入一个年份,判断该年属相.(提示switch-case),希望能够帮助到大家!

int main() {
    char p[12][4] = {"鼠", "牛", "虎", "兔", "龙", "蛇", "马", "羊", "鸡", "猴", "狗", "猪"};
    int year0 = 1972; // 1972年是鼠年,作为基准
    int year, n;
    printf("请输入一个年份\n");
    scanf("%d", &year);
    n = year - year0;
    n = n % 12;
    if (n < 0) n += 12; // 求余时,n可能是负数,如果是负数则加12
    printf("%d年属%s\n", year, p[n]);
}

关于c语言 已知1972年属鼠,输入一个四位的整数(1000-2999之间)代表年份,显示这一年属相是什么?

// C++的
#include <iostream>
#include <string>
using namespace std;
int main() { // year用来记录输入的年份
    int year;
    cin >> year;
    // 生肖相同的年份对于模12同余
    // 所以建立一个生肖数组
    string ZodiacSigns[12] = {"Rat", "Ox", "Tiger", "Hare", "Dragon", "Snake", "Horse", "Sheep", "Monkey", "Cock", "Dog", "Boar"};
    // (year-1972)对模12取余,即对应于数组中相应的生肖
    // 此处为防止(year-1972)为负数,给year加了120
    // 其实加24、36等也都是可以的,只要是不小于12的倍数即可
    cout << ZodiacSigns[((year - 1972) % 12)];
    return 0;
}

C语言编程: 已知2015年是羊年,编程实现,输入任意年份,输出该年属相。(使用switch

int main() {
    int year;
    printf("请输入年份:");
    scanf("%d", &year);
    year = (year - 2015) % 12;
    if (year < 0) year += 12;
    switch (year) {
        case 0: printf("今年是羊年!\n"); break;
        case 1: printf("今年是猴年!\n"); break;
        case 2: printf("今年是鸡年!\n"); break;
        case 3: printf("今年是狗年!\n"); break;
        case 4: printf("今年是猪年!\n"); break;
        case 5: printf("今年是鼠年!\n"); break;
        case 6: printf("今年是牛年!\n"); break;
        case 7: printf("今年是虎年!\n"); break;
        case 8: printf("今年是兔年!\n"); break;
        case 9: printf("今年是龙年!\n"); break;
        case 10: printf("今年是蛇年!\n"); break;
        case 11: printf("今年是马年!\n"); break;
    }
    return 0;
}

输入年份输出属相用c语言while语句

用switch判断年份属相,C语言编程: 已知2015年是羊年,编程实

提起用switch判断年份属相,大家都知道,有人问C语言编程: 已知2015年是羊年,编程实现,输入任意年份,输出该年属相。(使用switch,另外,还有人想问设计一个程序,输入1900年以后的任意一个年份,计算该年的生肖.(用select case语句做),你知道这是怎么回事?其实java中如何用switchcase语句判断年份对应的生肖?…,下面就一起来看看C语言编程: 已知年是羊年,编程实现,输入任意年份,输出该年属相。(使用switch,希望能够帮助到大家!

用switch判断年份属相

int main() {
    int year;
    printf("请输入年份:");
    scanf("%d", &year);
    year = (year - 2015) % 12;
    if (year < 0) year += 12;
    switch (year) {
        case 0: printf("今年是羊年!\n"); break;
        case 1: printf("今年是猴年!\n"); break;
        case 2: printf("今年是鸡年!\n"); break;
        case 3: printf("今年是狗年!\n"); break;
        case 4: printf("今年是猪年!\n"); break;
        case 5: printf("今年是鼠年!\n"); break;
        case 6: printf("今年是牛年!\n"); break;
        case 7: printf("今年是虎年!\n"); break;
        case 8: printf("今年是兔年!\n"); break;
        case 9: printf("今年是龙年!\n"); break;
        case 10: printf("今年是蛇年!\n"); break;
        case 11: printf("今年是马年!\n"); break;
    }
    return 0;
}

设计一个程序,输入1900年以后的任意一个年份,计算该年的生肖.(用select case语句做)

Private Sub Command1_Click()
    Dim y%, x%, s$
    y = Val(InputBox("输入1900年以后的任意一个年份"))
    If y >= 1900 Then
        x = (y - 1900)
        Select Case x
            Case 0: s = "鼠"
            Case 1: s = "牛"
            Case 2: s = "虎"
            Case 3: s = "兔"
            Case 4: s = "龙"
            Case 5: s = "蛇"
            Case 6: s = "马"
            Case 7: s = "羊"
            Case 8: s = "猴"
            Case 9: s = "鸡"
            Case 10: s = "狗"
            Case 11: s = "猪"
        End Select
        MsgBox y & "年是" & s & "年"
    Else
        MsgBox "输入错误,年份必须大于等于1900"
    End If
End Sub