作业《IOS_C语言》BOOL布尔类型、关系运算符、逻辑运算符、if语句、枚举类型、switch语句

//
//  main.m
//  LessonC02HomeWork
//
//  Created by lanou on 15/8/20.
//  Copyright (c) 2015年 lanou. All rights reserved.
//

#import <Foundation/Foundation.h>
enum month{
  january=1,
    february,
    march,
    april,
    may,
    june,
    july,
    august,
    september,
    october,
    november,
    december
    
};
int main(int argc, const char * argv[]) {
    //if {}else{}的用法
    
  //1.(*)输入一个整数,判断奇偶,并输出“某某是奇数”或者“某某是偶数”
//    int number;
//    printf("Please input a number:");
//    scanf("%d",&number);
//    if(number%2==0){
//        printf("%d 是偶数\n",number);
//    }else{
//        printf("%d 是奇数\n",number);
//    }
    
//    //2.(*)输入一个数,判断符号。如果大于0,输出“正数”;如果小于0,输出“负数”;如果等于0,输出“0”
//    int number;
//    printf("Please input a number:");
//     scanf("%d",&number);
//    if(number>0){
//        printf("正数\n");
//    }else if(number<0){
//     printf("负数\n");
//    }else{
//        printf("0\n");
//    }
//
    
    //《if{}else{},以及switch case以及enum枚举的使用》
    
    //3.(***)输入生日,输出年龄(周岁)和星座
    int year1,month1,day1,year2,month2,day2,old;
    printf("Please input your birthday:(year,month,day)");
    scanf("%d,%d,%d",&year1,&month1,&day1);
    printf("Please input today dath:(year,month,day)");
    scanf("%d,%d,%d",&year2,&month2,&day2);
//判断输入的生日的年月日是否错误
    if (year1%400==0||(year1%4==0&&year1%100!=0)) {
        if (month1==2) {
            if(day1>=1&&day1<=29){
                printf("您输入的day正确!");
            }else {
             printf("您输入的day错误!");
            }
        }else if(month1==1||month1==3||month1==5||month1==7||month1==8||month1==10||month1==12){
            if(day1>=1&&day1<=31){
                printf("您输入的day正确!");
            }else {
                printf("您输入的day错误!");
            }

        }else if(month1==4||month1==6||month1==9||month1==11){
            if(day1>=1&&day1<=31){
                printf("您输入的day正确!");
            }else {
                printf("您输入的day错误!");
                
            }
        }else{
            printf("您输入的month错误!");
            
        }
    }else{
        if (month1==2) {
            if(day1>=1&&day1<=28){
                printf("您输入的day正确!");
            }else {
                printf("您输入的day错误!");
            }
        }else if(month1==1||month1==3||month1==5||month1==7||month1==8||month1==10||month1==12){
            if(day1>=1&&day1<=31){
                printf("您输入的day正确!");
            }else {
                printf("您输入的day错误!");
               
            }
            
        }else if(month1==4||month1==6||month1==9||month1==11){
            if(day1>=1&&day1<=31){
                printf("您输入的day正确!");
            }else {
                printf("您输入的day错误!");
                
            }
        }else{
            printf("您输入的month错误!");
            
        }
    }
    //判断输入的今天的年月日是否错误
    if (year2%400==0||(year2%4==0&&year2%100!=0)) {
        if (month2==2) {
            if(day2>=1&&day2<=29){
                printf("您输入的day正确!");
            }else {
                printf("您输入的day错误!");
            }
        }else if(month2==1||month2==3||month2==5||month2==7||month2==8||month2==10||month2==12){
            if(day2>=1&&day2<=31){
                printf("您输入的day正确!");
            }else {
                printf("您输入的day错误!");
            }
            
        }else{
            if(day1>=2&&day2<=31){
                printf("您输入的day正确!");
            }else {
                printf("您输入的day错误!");
            }
        }
    }else{
        if (month2==2) {
            if(day2>=1&&day2<=28){
                printf("您输入的day正确!");
            }else {
                printf("您输入的day错误!");
            }
        }else if(month2==1||month2==3||month2==5||month2==7||month2==8||month2==10||month2==12){
            if(day2>=1&&day2<=31){
                printf("您输入的day正确!");
            }else {
                printf("您输入的day错误!");
                
            }
            
        }else if(month2==4||month2==6||month2==9||month2==11){
            if(day2>=1&&day2<=31){
                printf("您输入的day正确!");
            }else {
                printf("您输入的day错误!");
                
            }
        }else{
            printf("您输入的month错误!");

        }
    }
    //计算周岁
    if (month2>month1) {
        old=year2-year1;
        printf("您的周岁是%d\n",old);
    }else{
        old=year2-year1-1;
        printf("您的周岁是%d\n",old);
    }
    int month=month1;
    //判断星座
    switch (month) {
        case 1:{
            if (day1>=20) {
                printf("您是水瓶座\n");
            }else{
                printf("您是摩羯座\n");
            }
               break;
        }
        case 2:{
            if (day1<=18) {
                printf("您是水瓶座\n");
            }else{
                printf("您是双鱼座\n");
            }
            break;
        }
        case 3:{
            if (day1<=20) {
                printf("您是双鱼座\n");
            }else{
                printf("您是白羊座\n");
            }
            break;
        }
        case 4:{
            if (day1<=19) {
                printf("您是白羊座\n");
            }else{
                printf("您是金牛座\n");
            }
            break;
        }
        case 5:{
            if (day1<=20) {
                printf("您是金牛座\n");
            }else{
                printf("您是双子座\n");
            }
            break;
        }
        case 6:{
            if (day1<=21) {
                printf("您是双子座\n");
            }else{
                printf("您是巨蟹座\n");
            }
            break;
        }
        case 7:{
            if (day1<=22) {
                printf("您是巨蟹座\n");
            }else{
                printf("您是狮子座\n");
            }
            break;
        }
        case 8:{
            if (day1<=22) {
                printf("您是狮子座\n");
            }else{
                printf("您是处女座\n");
            }
            break;
        }
        case 9:{
            if (day1<=22) {
                printf("您是处女座\n");
            }else{
                printf("您是天平座\n");
            }
            break;
        }
        case 10:{
            if (day1<=23) {
                printf("您是天平座\n");
            }else{
                printf("您是天蝎座\n");
            }
            break;
        }
        case 11:{
            if (day1<=22) {
                printf("您是天蝎座\n");
            }else{
                printf("您是射手座\n");
            }
            break;
        }
        case 12:{
            if (day1<=21) {
                printf("您是射手座\n");
            }else{
                printf("您是魔蝎座\n");
            }
            break;
        }
        default:{
            printf("error\n");
         break;
        }
           
    }
    
//条件运算符的使用
    //4.(**)编程判断3人中谁的年龄最大,并打印最大者的年龄
//    int age1,age2,age3;
//    printf("Please input three age:");
//    scanf("%d,%d,%d",&age1,&age2,&age3);
//    int max=age1>age2?age1:age2;
//    max=max>age3?max:age3;
//    printf("最大者的年龄是:%d\n",max);
    
    //if{}else{}的使用
    //5.(**)铁路托运行李规定:行李重不超过50公斤的,托运费按0.15元每公斤计算,如果超过50公斤,超出部分每公斤“加收”0.1元。编程实现上述功能
//    float weight,cost;
//    printf("Please input a weight:");
//    scanf("%f",&weight);
//    if (weight<=50) {
//        cost=weight*0.15;
//        printf("%.2f\n",cost);
//    }else{
//        cost=50*0.15+(weight-50)*0.1;//没加收
//        cost=weight*0.15+(weight-50)*0.1;//加收
//        printf("%.2f\n",cost);
//    }
    
    //6.(**)有一个函数:x<1的时候,y = x;1<=x<10的时候,y=2x-1;x>=10的时候,y=3x-11。写一段程序,输入x,输出y值
//    
//    int x,y;
//    printf("Please input x=");
//    scanf("%d",&x);
//    if (x<1) {
//        y=x;
//        printf("%d\n",y);
//    }else if(x>=1&&x<10){
//        y=2*x-1;
//        printf("%d\n",y);
//    }else if(x>=10){
//       y=3*x-11;
//        printf("%d\n",y);
//    }else{
//        printf("error\n");
//    }
    
    //7.(**)编制一个完成两个数四则运算程序。如:用户输入34+56则输出结果为90.00,要求运算结果保留2位有效小数,用户输入时将2个运算数以及运算符都输入,根据运算符求结果
//    int number1,number2,result;
//    char operator;
//    printf("Please input :");
    直接连带运算符一起输入
//    scanf("%d%c%d",&number1,&operator,&number2);
//    if (operator =='+') {
//        result=number1+number2;
//        printf("result is:%d\n",result);
//    }else if (operator =='-') {
//        result=number1-number2;
//        printf("result is:%d\n",result);
//    }else if (operator =='*') {
//        result=number1*number2;
//       printf("result is:%d\n",result);
//    }else if (operator =='/') {
//        result=number1/number2;
//       printf("result is:%d\n",result);
//    }else if (operator =='%') {
//        result=number1%number2;
//        printf("result is:%d\n",result);
//    }else{
//        printf("error!\n");
//        }
//
//
    //8.(***)输入3个数,判断是否能构成三角形(两边和大于第三边,两边的差小于第三边)
//    int a,b,c;
//    printf("Please input three value:");
//    scanf("%d%d%d",&a,&b,&c);
//    if ((a+b>c)&&(b+c>a)&&(a+c>b)&&(a-b<c)&&(a-c<b)&&(b-c<a) ){
//        printf("这是一个三角形!\n");
//    }else{
//        printf("这不是一个三角形!\n");
//    }
    
    //9.(****)输入三个数,用两种方法打印出中间值(即第二大值)提示:第一种,先求最大最小;第二种,只使用条件运算
//    int number1,number2,number3,max,min,result;
//    printf("Please input three number:");
//    scanf("%d%d%d",&number1,&number2,&number3);
//   // 方法1:
//    if (number1>number2) {
//        max=number1;
//    }else{
//        max=number2;
//    }
//    if(max>number3){
//        max=max;
//    }else{
//        max=number3;
//    }
//    if (number1<number2) {
//        min=number1;
//    }else{
//        min=number2;
//    }
//    if(min<number3){
//        min=min;
//    }else{
//        min=number3;
//    }
//    result=number1+number2+number3-max-min;
    //思路拐弯点,求和再相减方法。
//    //另一种方法:if(number1!=max&&number1!=min){
//      //        printf("中间值是:%d",number1);
//      //        }
//    printf("中间值是:%d\n",result);
//    //方法2:
//    max=number1>number2?number1:number2;
//    max=max>number3?max:number3;
//    min=number1<number2?number1:number2;
//    min=min<number3?min:number3;
//    result=number1+number2+number3-max-min;
//    printf("中间值是:%d\n",result);
    
    //第三题
    //方法2:void constellationByDay(int year,int day){
    
//    int dayForLeapYear = 0;
//    
//    if(leapYearJudge(year)){
//        
//        dayForLeapYear = 1;
//        
//    }
//    
//    if((day > 355 + dayForLeapYear && day <=366) || (day <= 20 && day != 0))
//        printf("摩羯座\n");
//    else if(day > 20 && day <=50 && day != 0)
//        printf("水瓶座\n");
//    else if(day > 50 && day <= 79 + dayForLeapYear && day != 0){
//        printf("双鱼座\n");
//    }
//    else if(day > 79 + dayForLeapYear && day <= 110 +dayForLeapYear){
//        printf("白羊座\n");
//    }
//    else if(day > 110 + dayForLeapYear &&  day <= 141 + dayForLeapYear)
//        printf("金牛座\n");
//    else if (day > 141 + dayForLeapYear && day <= 172 + dayForLeapYear)
//        printf("双子座\n");
//    else if(day > 172 + dayForLeapYear && day <= 203 + dayForLeapYear)
//        printf("巨蟹座\n");
//    else if(day > 203 + dayForLeapYear && day <= 234 + dayForLeapYear)
//        printf("狮子座\n");
//    else if(day > 234 +dayForLeapYear && day <= 265 + dayForLeapYear)
//        printf("处女座\n");
//    else if (day > 265 + dayForLeapYear && day <= 296 + dayForLeapYear)
//        printf("天秤座\n");
//    else if (day > 296 + dayForLeapYear && day <= 326 + dayForLeapYear)
//        printf("天蝎座\n");
//    else if ( day > 326 + dayForLeapYear && day <= 355 + dayForLeapYear)
//        printf("射手座\n");
//    else
//        printf("Error\n");
//    
//    
//}
//
日期计数
//int dayCount (int year,int month, int date){
//    int day = 0;
//    
//    switch (month) {
//        case 12:
//            day += 30;
//        case 11:
//            day += 31;
//        case 10:
//            day += 30;
//        case 9:
//            day += 31;
//        case 8:
//            day += 31;
//        case 7:
//            day += 30;
//        case 6:
//            day += 31;
//        case 5:
//            day += 30;
//        case 4:
//            day += 31;
//        case 3:
//            if(leapYearJudge(year)){
//                day += 29;
//            }else
//                day += 28;
//        case 2:
//            day += 31;
//        case 1:
//            day += 0;
//            break;
//        default:
//            printf("Month Error!!");
//            day = -1;
//            break;
//    }
//    
//    day += date;
//    
//    return day;
//    
//}
//
//
判断闰年
//BOOL leapYearJudge(int year){
//    if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
//        return YES;
//    else
//        return NO;
//}
//
//int absolutelyValue (int a){
//    if(a < 0){
//        a = -a;
//    }
//    return a;
//}
//    
//  //第三题
    //方法3:
//    printf("第3题:\n");
//    printf("请输入生日(依次输入年月日):\n");
//    int year = 0,month = 0,day = 0,con = 0;
//    scanf("%d%d%d",&year,&month,&day);
//    con = month * 100 + day;
//    
//    if ((con >= 321 && con <= 331 )||( con >= 401 && con <= 419)) {
//        printf("白羊座\n\n");
//    }else if ((con >= 420 && con <= 430 )||( con >= 501 && con <= 520)){
//        printf("金牛座\n\n");
//    }else if ((con >= 521 && con <= 531 )||( con >= 601 && con <= 621)){
//        printf("双子座\n\n");
//    }else if ((con >= 622 && con <= 630 )||( con >= 701 && con <= 722)){
//        printf("巨蟹座\n\n");
//    }else if ((con >= 723 && con <= 731 )||( con >= 801 && con <= 822)){
//        printf("狮子座\n\n");
//    }else if ((con >= 823 && con <= 831 )||( con >= 901 && con <= 922)){
//        printf("处女座\n\n");
//    }else if ((con >= 923 && con <= 930 )||( con >= 1001 && con <= 1023)){
//        printf("天枰座\n\n");
//    }else if ((con >= 1024 && con <= 1031 )||( con >= 1101 && con <= 1122)){
//        printf("天蝎座\n\n");
//    }else if ((con >= 1123 && con <= 1130 )||( con >= 1201 && con <= 1221)){
//        printf("射手座\n\n");
//    }else if ((con >= 1222 && con <= 1231 )||( con >= 101 && con <= 119)){
//        printf("魔蝎座\n\n");
//    }else if ((con >= 120 && con <= 131 )||( con >= 201 && con <= 218)){
//        printf("水瓶座\n\n");
//    }else if ((con >= 219 && con <= 228 )||( con >= 301 && con <= 320)||((year % 400 == 0 ||(year % 4 == 0 && year % 100 != 0)) && con == 229)){
//        printf("双鱼座\n\n");  //平年双鱼座和闰年2月29日双鱼座
//    }else
//        printf("输入错误!\n");
//    printf("年龄:%d\n\n",2015-year);
//return 0;
    
    //方法4
//    printf("第3题方法2:\n");
//    printf("请输入生日(依次输入年月日):\n");
//    int year2 = 0,month2 = 0,day2 = 0;
//    scanf("%d%d%d",&year2,&month2,&day2);
//    if (year2 <= 2015) {
//        if ((month2==1 || month2==3 || month2==5 || month2==7 || month2==8 ||month2==10 || month2==12) && (day2>0 && day2<32)){
//            switch (month2) {
//                case 1:
//                    if (day2<=19) {
//                        printf("魔蝎座\n");
//                    }else printf("水瓶座\n");
//                    break;
//                case 3:
//                    if (day2<=20) {
//                        printf("双鱼座\n");
//                    }else printf("白羊座\n");
//                    break;
//                case 5:
//                    if (day2<=20) {
//                        printf("金牛座\n");
//                    }else printf("双子座\n");
//                    break;
//                case 7:
//                    if (day2<=22) {
//                        printf("巨蟹座\n");
//                    }else printf("狮子座\n");
//                    break;
//                case 8:
//                    if (day2<=22) {
//                        printf("狮子座\n");
//                    }else printf("处女座\n");
//                    break;
//                case 10:
//                    if (day2<=23) {
//                        printf("天秤座\n");
//                    }else printf("天蝎座\n");
//                    break;
//                case 12:
//                    if (day2<=21) {
//                        printf("射手座\n");
//                    }else printf("魔蝎座\n");
//                    break;
//                default:
//                    break;
//            }
//        }
//        if ((month2==4 || month2==6 || month2 == 9 || month2 ==11) && (day2>0 && day2<31)) {
//            switch (month2) {
//                case 4:
//                    if (day2<=19) {
//                        printf("白羊座\n");
//                    }else printf("金牛座\n");
//                    break;
//                case 6:
//                    if (day2<=21) {
//                        printf("双子座\n");
//                    }else printf("巨蟹座\n");
//                    break;
//                case 9:
//                    if (day2<=22) {
//                        printf("处女座\n");
//                    }else printf("天秤座\n");
//                    break;
//                case 11:
//                    if (day2<=22) {
//                        printf("天蝎座\n");
//                    }else printf("射手座\n");
//                    break;
//                default:
//                    break;
//            }
//            
//        }
//        if ((year2 % 400 == 0 ||(year2 % 4 == 0 && year2 % 100 != 0)) && (month2==2) && (day2>0 && day2<30)) {
//            switch (month2) {
//                case 2:
//                    if (day2<=18) {
//                        printf("水瓶座\n");
//                    }else printf("双鱼座\n");
//                    break;
//                default:
//                    break;
//            }
//            printf("年龄:%d\n\n",2015-year2);
//        }
//    }else printf("输入错误!\n");
}

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、下载 4使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、 4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.m或d论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 、1资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大小小丹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值