//
// main.m
// C2-c语言基础
//
// Created by dllo on 15/10/6.
// Copyright (c) 2015年 dllo. All rights reserved.
//
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
//定义bool类型的变量
//bool数据类型,特点是只关心真假
// BOOL ret = 0;
// ret = 5 > 3;//5>3叫做表达式,表达式是由变量,常量,运算符组成,表达式都有返回值.如5>3这个表达式的返回值即这个判断结果的(真/假)
// bool a = 4 小bool输出只输出o和1,但是真的表示不一定要是1,非0 即可
// //真 : 非0 假:0
// int a = 5;
// ret = 5 == a;//语法规范. == 变量写在右边,常量写在左边
// printf("%d ",ret);
// int a = 0;
// int b = 0;
// scanf("%d%d",&a,&b);
// ret = a > b;
// printf("a>b为:%d",ret);
//BOOL ret = 0;
// int a = 0 ;
// 逻辑与,两端表达式都为真,结果才为真,
// ret = 5 > 3 && 6 < 7;
// ret = 5 > 3 || ++a;
//逻辑或的短路效应,若表达式1 的值为假,表达式2不执行
//逻辑非,要注意与谁先结合
// ret = !(5 > 3 && 6 < 7 );
// printf("%d",ret);
//# define summer 1
//从键盘输入一个整数(100以内),如果输入的输不是7的倍数,且不含7, 个位十位都不含7.输出这个数否则输出过.输入之前提醒输入100以内的整数
//
// int i= 0;
// printf("请输入100以内的整数:");
// scanf("%d",&i);
// if (((i/10) != 7) && ((i%10) != 7 ) && ((i % 7 )!= 0)) {
// printf("过");
// }else{
// printf("%d",i);
// }
//控制台输入一个字符,如果输入的是m,则输出男性,否则什么都不输出/否则输出女性
// char a = 0 ;
// //a = 'm' ;
// scanf("%c", &a);
// if (a == 109) {
// printf(" 你是男的");
// }
// else
// printf("你是女的");
//printf("%d",a);
// 输入数字在区间内输出good
//
// int i = 0;
// scanf("%d", &i);
// if (i >= 3 && i <= 10) {
// printf("good");
// }
//
// int x = 0;
// int y = 0;
// char a = 0;
// scanf("%c",&a);
// if (a >= 48 && a <= 58) {
// printf("this is a digital");
// } else if (a >= 65 && a < 97) {
// printf("this is a xiaoxienumber");
// }else if( a > 97){
// printf("this is daxie number");
//
// }
// scanf("%d",&x);
// if (x >= 5) {
// y = 2 * x ;
// printf("%d",y);
// } else if (x >= 3){
// y = x * x ;
// }
// else{
// y = 3 * x - 1;
// printf("%d",y);
// }
//输入2个数比较大小,输出较大的值
// int a = 0;
// int b = 0;
// scanf("%d%d",&a,&b);
// if (a > b) {
// printf("较大值:%d",a);
//
// } else {
// printf("较大值:%d",b);
// }
//// 条件运算符
// a > b ? printf("较大值:%d",a): printf("较大值:%d",b);
//注意 case后面加常量表达式,default可以不写 case可以添加任意多个,,
// int season = 0 ; // switch 后面括号加的是整型表达式.字符型对应的ASCII码也是整型,break若不加,程序继续执行下面的分支,直到遇到break时停止
// scanf("%d",&season);
// enum season{
// spring = 1,//默认从0开始,下面系统自动添加
// summer,
// autumn,
// winter
// };
// switch (season) {
// case spring:
// printf("spring ");
// break;
// case summer:
// printf("summer ");
// //break;
// case 3:
// printf("autumn ");
// //break;
// case 4:
// printf("winter ");
// break;
// case 5:
// printf("bird ");
// break;
// case 6:
// printf("blue ");
// break;
// default:
// break;
// }
// 枚举类型
//enum season{
// spring = 1,
//sunmmer,
//autumn,
//winter
//};
// //判断一个年份是不是闰年
/* 第二讲:分支结构课后作业
1.(*)输入一个整数,判断奇偶,并输出“某某是奇数”或者“某某是偶数”。
2.(*)输入一个数,判断符号。如果大于0,输出“正数”;如果小于0,输出“负数”;如果等于0,输出“0”。
3.(***)输入生日,输出年龄(周岁)和星座。
4.(**)编程判断3人中谁的年龄最大,并打印最大者的年龄
5.(**)铁路托运行李规定:行李重不超过50公斤的,托运费按0.15元每公斤计算,如果超过50公斤,超出部分每公斤加收0.1元。编程实现上述功能
6.(**)有一个函数:x<1的时候,y = x;1<=x<10的时候,y=2x-1;x>=10的时候,y=3x-11。写一段程序,输入x,输出y值
7.(**)编制一个完成两个数四则运算程序。如:用户输入34+56则输出结果为90.00,要求运算结果保留2位有效小数,用户输入时将2个运算数以及运算符都输入,根据运算符求结果
8.(***)输入3个数,判断是否能构成三角形
9.(****)输入三个数,用两种方法打印出中间值(即第二大值)
提示:第一种,先求最大最小;第二种,只使用条件运算符
*/
// 1
// int i = 0;
// scanf("%d",&i);
// if (i / 2 == 0)
// {
// printf("%d是偶数",i);
// }
// else{
// printf("%d是奇数",i);
// }
//
//2
// int i = 0 ;
// scanf("%d",&i);
// if (i >= 0) {
// if (i == 0) {
// printf("0");
//
// }else{
// printf(" 正数");
// }
// }
// else{
// printf("负数");
//
// }
//2
// int i = 0 ;
// scanf("%d",&i);
// if (i == 0)
// printf("0");
// else if(i > 0)
// printf(" 正数");
// else if(i < 0)
// printf("负数");
//3
//
// int year = 0;
// int month = 0;
// int day = 0;
// int age = 0;
// printf(" 请输入出生年月日:格式:年份-月份-日期");
// scanf("%d-%d-%d",&year,&month,&day);
// if(month < 9 || (month == 10 && day <= 7)){
// age = 2015 - year - 1;
// printf("你的年纪为:%d周岁 ",age);
// } else {
// age = 2015 - year;
// printf("你的年纪为:%d周岁 ",age);
// }
// switch (month) {
// case 1:{
// if (day<=19) {
// printf("魔蝎座");
// } else {
// printf("水瓶座");
// }
// break;
// }
// case 2:{
// if (day<=18) {
// printf("水瓶座");
// } else {
// printf("双鱼座");
// }
// break;
// }
// case 3:{
// if (day<=20) {
// printf("双鱼座");
// } else {
// printf("白羊座");
// }
// break;
// }
// case 4:{
// if (day<=19) {
// printf("白羊座");
// } else {
// printf("金牛座");
// }
// break;
// }
// case 5:{
// if (day<=20) {
// printf("金牛座");
// } else {
// printf("双子座");
// }
// break;
// }
// case 6:{
// if (day<=21) {
// printf("双子座");
// } else {
// printf("巨蟹座");
// }
// break;
// }
// case 7:{
// if (day<=22) {
// printf("巨蟹座");
// } else {
// printf("狮子座");
// }
// break;
// }
// case 8:{
// if (day<=22) {
// printf("狮子座");
// } else {
// printf("处女座");
// }
// break;
// }
// case 9:{
// if (day<=22) {
// printf("处女座");
// } else {
// printf("天枰座");
// }
// break;
// }
// case 10:{
// if (day<=23) {
// printf("天枰座");
// } else {
// printf("天蝎座");
// }
// break;
// }
// case 11:{
// if (day<=22) {
// printf("天蝎座");
// } else {
// printf("射手座");
// }
// break;
// }
// case 12:{
// if (day<=21) {
// printf("射手座");
// } else {
// printf("魔蝎座");
// }
// break;
// }
// default:
// break;
//
//
// }
//
//4 编程判断3人中谁的年龄最大,并打印最大者的年龄
// int a = 0;
// int b = 0;
// int c = 0;
// scanf("%d%d%d",&a,&b,&c);
// if ( a > b ) {
// if ( a > c ) {
// printf("a最大,年纪为:%d",a);
// }
// else if ( a < c ){
// printf("c最大,年纪为:%d",c);
// }
//
//
// } else if( a < b){
// if ( b > c ) {
// printf("b最大,年纪为:%d",b);
// }
// else if ( b < c )
// printf("c最大,年纪为:%d",c);
// }
//
//
// 5 铁路托运行李规定:行李重不超过50公斤的,托运费按0.15元每公斤计算,如果超过50公斤,超出部分每公斤加收0.1元。编程实现上述功能
// int weight = 0;
// float price = 0;
// scanf("%d",&weight);
// if (weight < 50) {
// price = weight * 0.15;
// } else {
// price = (weight - 50) * 0.1 + weight * 0.15;
// }
// printf("%f",price);
//6.(**)有一个函数:x<1的时候,y = x;1<=x<10的时候,y=2x-1;x>=10的时候,y=3x-11。写一段程序,输入x,输出y值
// int x = 0;
// int y = 0;
// if (x < 1) {
// y = x ;
// }
// else if(x >=1 && x > 10 ){
// y = 2 * x - 1;
// } else if(x >= 10)
// {
// y = 3 * x - 11;
// }
// 7.(**)编制一个完成两个数四则运算程序。如:用户输入34+56则输出结果为90.00,要求运算结果保留2位有效小数,用户输入时将2个运算数以及运算符都输入,根据运算符求结果
float a = 0;
float b = 0;
char c = 0;
printf("输入2个运算数以及运算符:");
scanf("%f%c%f ",&a ,&c ,&b);
getchar();
switch (c){
case '*':
printf("%.2f",a * b);
break;
case '+':
printf("%.2f",a + b);
break;
case '/':
printf("%.2f",a / b);
break;
case '-':
printf("%.2f", a - b);
break;
default:
break;
}
// 8.(***)输入3个数,判断是否能构成三角形
// float a = 0;
// float b = 0;
// float c = 0;
// scanf("%f%f%f",&a,&b,&c);
// if (a + b > c && a + c > b && c + b > a) {
// printf("ok!");
//
// }else
// printf(" 不能构成三脚型");
//
// 9.(****)输入三个数,用两种方法打印出中间值(即第二大值)
//提示:第一种,先求最大最小;第二种,只使用条件运算符 条件运算符
// 实例 a > b ? printf("较大值:%d",a): printf("较大值:%d",b);
// int a = 0;
// int b = 0;
// int c = 0;
// scanf("%d%d%d",&a,&b,&c);
// (a > b && a < c) ||(a < b && a >c)? printf("中间值:%d",a ):(b > a && b < c )||(b < a && b > c )? printf("中间值:%d",b ):(c > a && c < b )|| (c < a && c >b ) ? printf("中间值:%d",c ): a == b || a == c ? printf("中间值:%d",a ):a == b || b == c ? printf("中间值:%d",b ):a == c || b == c ?printf("中间值:%d",c ):printf(" 全部相等" );
////
//
// int a = 0;
// int b = 0;
// int c = 0;
// scanf("%d%d%d",&a,&b,&c);
// if((a > b && a < c) ||(a < b && a >c)){
// printf("中间值:%d",a );
//
// }else if((b > a && b < c )||(b < a && b > c )){
// printf("中间值:%d",b );
//
// }else if((c > a && c < b )|| (c < a && c >b )){
// printf("中间值:%d",c );
// }else if(a == b || a == c){
// printf("中间值:%d",a );
// }else if(a == b || b == c){
// printf("中间值:%d",b );
// }else if(a == c || b == c){
// printf("中间值:%d",c );
// }else
// printf(" 全部相等" );
return 0;
}