//
// main.m
// C2_分支结构
//
// Created by李连有 on 14-10-16.
// Copyright (c) 2014年 lanou3g.com蓝鸥科技. All rights reserved.
//
#import <Foundation/Foundation.h>
//enum job {
// ZHANSHI=11,
// Paladin,
// DeathKnight,
// LIEREN=21,
// SHAMAN,
// DAOZEI=31,
// DELUYI,
// WUSENG,
// FASHI=41,
// SHUSHI,
// MUSHI
// };
int main(int argc, const char * argv[]) {
//逻辑运算符
// int a=5;
//
// BOOL c=!a;
// printf("%d\n",c);// !取反;
// //短路现象
// &&-----假即假,
// ||------真即真;
// // If语句第一种形式
// // 小括号是条件表达式,表达式为真,执行大括号语句;
// if (5>3)//注意不要使用; {
// printf("OK");
// }
// //练习1.
// //定义一个字符型变量
// char c=0;
// //输入C的值
// scanf("%c",&c);
// //进行判断,如果是m(将常量写在==的前面,变量写在==的后面)
// if ('m'==c) {
// //如果条件成立,则输出男性
// printf("your are boy\n");
// } else {
// //If语句的第二种形式
//
// printf("女性");
// }
// //练习2.判断闰年.
// int year = 0;
// BOOL condition1 = (0 == year % 400);
// BOOL condition2 = (0 ==year % 4 && year % 100 != 0);
// scanf("%d",&year);
// if (condition1 || condition2 ){
// printf("%d是闰年",year);
// } else {
// printf("%d是平年",year);
//
// }
// int year = 0;
// scanf("%d",&year);
// if (year % 400 == 0) {
// printf("闰年\n");
// } else if (year % 4 == 0 && year % 100 != 0){
// printf("闰年\n");
//
// } else {
// printf("不是闰年");
//
// }
// char a = 0;
// scanf("%c",&a);
// if (a >= 'A' && a <= 'Z') {
// printf("大写字母\n");
// } else if (a >= 'a' && a <= 'z') {
// printf("小写字母\n");
// } else if (a >= '0' && a <= '9') {
// //需要注意数字要加单引号
// printf("数字\n");
// } else {
// printf("其他字符\n");
// }
// //条件运算符
// int a = 0 , b = 0 , c = 0;
// int max;
// scanf("%d%d%d",&a,&b,&c);
// max = a > b ? a : b; //max = max == c ? max : c也对.
// max = max > c ? max : c;
// printf("%d\n",max);
// int a = 0 , b = 0 , c = 0;
// int min;
// scanf("%d%d%d",&a,&b,&c);
// min = a< b ? a : b;
// min = min < c ? min : c;
// printf("%d\n",min);
// //switch语句
// int number = 0;
// scanf("%d",&number);
// switch (number ) {
// case 110:
// printf("警察局\n");
// break;
// case 119:
// printf("消防队\n");
// break;
// //break的作用,跳出switch语句
// //如果不加break,当选择一个case后将不做任何判断,直接执行下面的语句.
// case 120:
// printf("急救中心\n");
// break;
// //不满足各个case时,执行default内的语句.
// default:
// printf("欢迎来到地球\n");
// break;
// }
// int number = 0;
// scanf("%d",&number);
// switch (number) {
// case ZHANSHI:
// printf("战士\n");
// break;
// case Paladin:
// printf("圣骑\n");
// break;
// case DeathKnight:
// printf("死骑\n");
// break;
// case LIEREN:
// printf("猎人\n");
// break;
// case SHAMAN:
// printf("萨满\n");
// break;
// case DAOZEI:
// printf("盗贼\n");
// break;
// case DELUYI:
// printf("德鲁伊\n");
// break;
// case WUSENG:
// printf("武僧\n");
// break;
// case FASHI:
// printf("法师\n");
// break;
// case SHUSHI:
// printf("术士\n");
// break;
// case MUSHI:
// printf("牧师\n");
// break;
// default:
// printf("请认真重新输入数字:\n");
// break;
// }
return 0;
}
1.(*)输入一个整数,判断奇偶,并输出“某某是奇数”或者“某某是偶数”。
int num = 0;
scanf("%d",&num);
if (num % 2 == 1) {
printf("%d是奇数",num);
} else {
printf("%d是偶数",num);
}
2.(*)输入一个数,判断符号。如果大于0,输出“正数”;如果小于0,输出“负数”;如果等于0,输出“0”。
int number = 0;
scanf("%d",&number);
if (number > 0) {
printf("正数");
}else if (number < 0){
printf("负数");
}else {
printf("0");
}
3.(***)输入生日,输出年龄(周岁)和星座。
今年是2014年
int year = 0;
int month = 0;
int day = 0;
scanf("%d-%d-%d",&year,&month,&day);
int age = 2014 - 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;
}
白羊座 3.21-4.19
金牛座 4.20-5.20
双子座 5.21-6.21
巨蟹座 6.22-7.22
狮子座 7.23-8.22
处女座 8.23-9.22
天平座 9.23-10.23
天蝎座 10.24-11.22
射手座 11.23-12.21
摩羯座 12.22-1.19
水瓶座 1.20-2.18
双鱼座 2.19-3.20
4.(**)编程判断3人中谁的年龄最大,并打印最大者的年龄
int age1 = 0,age2 = 0,age3 = 0;
scanf("%d%d%d",&age1,&age2,&age3);
int max = 0;
max = age1 > age2 ? age1 : age2;
max = max > age3 ? max : age3;
printf("max = %d",max);
5.(**)铁路托运行李规定:行李重不超过50公斤的,托运费按0.15元每公斤计算,如果超过50公斤,超出部分每公斤加收0.1元。编程实现上述功能
int weight = 0;
scanf("%d",&weight);
float money = 0;
if (weight > 50) {
money = (weight - 50) * (0.15 + 0.1) + 50 * 0.15;
}else {
money = weight * 0.15;
}
printf("money = %.2f",money);
6.(**)有一个函数:x<1的时候,y = x;1<=x<10的时候,y=2x-1;x>=10的时候,y=3x-11。写一段程序,输入x,输出y值
int x = 0;
scanf("%d",&x);
int y = 0;
if (x < 1) {
y = x;
}else if (x >= 1 && x < 10){
y = 2 * x -1;
}else {
y = 3 * x - 11;
}
printf("y = %d",y);
7.(**)编制一个完成两个数四则运算程序。如:用户输入34+56则输出结果为90.00,要求运算结果保留2位有效小数,用户输入时将2个运算数以及运算符都输入,根据运算符求结果
int a = 0,b = 0;
char op = 0;
scanf("%d%c%d",&a,&op,&b);
float result = 0;
switch (op) {
case '+':
result = a + b;
break;
case '-':
result = a - b;
break;
case '*':
result = a * b;
break;
case '/':
result = 1.0 * a / b;
break;
default:
break;
}
printf("result = %.2f",result);
8.(***)输入3个数,判断是否能构成三角形
int a = 0,b = 0, c = 0;
scanf("%d%d%d",&a,&b,&c);
if (a + b >= c && a + c >= b && b + c >= a) {
printf("能构成三角形");
}else{
printf("不能构成三角形");
}
9.(****)输入三个数,用两种方法打印出中间值(即第二大值)
提示:第一种,先求最大最小;第二种,只使用比较运算符
方法一:先求最大最小
int a = 0,b = 0, c = 0;
scanf("%d%d%d",&a,&b,&c);
int max = 0,min = 0;
max = a > b ? a : b;
max = max > c ? max : c;
min = a < b ? a : b;
min = min < c ? min : c;
printf("%d",a + b + c - max - min);
方法二
int a = 0,b = 0, c = 0;
scanf("%d%d%d",&a,&b,&c);
if ((a >= b && a <= c) || (a >= c && a <= b)) {
printf("%d",a);
}
if ((b >= a && b <= c) || (b >= c && b <= a)) {
printf("%d",b);
}
if ((c >= a && c <= b) || (c >= b && c <= a)) {
printf("%d",c);
}