------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
//******************* swich-case 语句 *******************
//swich需要是整型
//case后可以跟多条语句
//case后边只能跟常量,不能使用小数
//break与default都是可选得
//default可以是任意位置 后边也加break
//
//是专门用于多分支的结构
// const int num = 2; 可以 case num:....; (const 是一个常量)定义与声明需要在一起
#include <stdio.h>
/*int main() {
switch(表达式){
case 变量 语句1;
}
return 0;
}
*/
/*
int main(){
switch (num) {
case 0;
printf("打印");
break;
case 0;
printf("打印");
break;
case 0;
printf("打印");
break;
}
return 0;
}
*/
//******************* case 贯穿的问题 *******************
//在switch-case结构中
//在switch中得表达式的结果,会与case后的常量表达式直接进行匹配
//但是执行完以后,会继续往下执行其他的case
//关键字break 放在case后面的语句的最后其含义为执行完该case语句,就结束switch
//
#include <stdio.h>
int main(){
int num = 2;
switch (num){
case 0: printf("一\n");break;
case 1: printf("二\n");break;
case 2: printf("三\n");break;
case 3: printf("四\n");break;
}
return 0;
}
//
// main.c
// 07-练习题
//
// Created by 今天我很努力 on 15-3-7.
// Copyright (c) 2015年 gongsimingzi. All rights reserved.
//
/*
题目:程序运行的时候提示下列信息
请输入相应数字选择需要执行的运算:
1 加法
2 减法
用户选择运算后,再提示用户输入两个需要进行运算的整数,输入完毕后就输出运算结果
*/
#include <stdio.h>
int main() {
//提示输入
printf("请输入相应数字选择需要执行的运算:\n");
printf("1 加法\n");
printf("2 减法\n");
//定义一个变量存储用户选择的计算类型
int type = 0;
//接收输入 ,用户输入计算类型
scanf("%d",&type);
//type值输入不合理,直接退出程序
if(type != 1 && type != 2){
printf("非法选择\n");
return 0;
}
//提示用户输入两个需要进行运算的整数
printf("请输入两个需要进行运算的整数,并且以空格隔开");
//定义两个变量存储数据
int num1, num2;
//接收数值
scanf("%d %d",&num1,&num2);
//计算
int result;
if(1 == type){
result = num1 + num2;
printf("%d + %d = %d\n",num1,num2,result);
}else if(2 == type ){
result = num1 - num2;
printf("%d - %d = %d\n",num1,num2,result);
}
return 0;
}
//
// main.c
// 简单计算器
//
// Created by 今天我很努力 on 15-3-7.
// Copyright (c) 2015年 gongsimingzi. All rights reserved.
//
#include <stdio.h>
int main() {
//定义变量
int num1,num2,result,oper;
//提示输入
printf("请输入一个运算数字:\n");
//接收输入
scanf("%d",&num1);
printf("请选择运算符(加0减1乘2除3)\n");
scanf("%d",&oper);
printf("请输入一个运算数字:\n");
scanf("%d",&num2);
//计算
switch (oper){
case 0: result = num1 + num2;break;
case 1: result = num1 - num2;break;
case 2: result = num1 * num2;break;
case 3: result = num1 / num2;break;
defult:
break;
}
printf("%d 与 %d 的运算结果是%d\n",num1,num2,result);
return 0;
}
// main.c
// 称重计费
//
// Created by 今天我很努力 on 15-3-7.
// Copyright (c) 2015年 gongsimingzi. All rights reserved.
//
/*2、铁路托运行李规定:行李重不超过50公斤的,托运费按0.15元每公斤计算,
如果超过50公斤,超出部分每公斤加收0.1元。编程实现上述功能。
判断是否超过50公斤
*/
#include <stdio.h>
int main() {
//打印
printf("铁路托运行李规定:行李重不超过50公斤的,托运费按0.15元每公斤计算,如果超过50公斤,超出部分每公斤加收0.1元\n");
//定义变量行李重量,费用
double weight,cost;
//提示用户输入行李用量
printf("请输入行李的重量\n");
//接收输入
scanf("%lf",&weight);
//计算
//如果重量不超过50公斤
if(weight <= 50){
cost = weight * 0.15;
}else{//如果超过50的
cost = weight * 0.15 + (weight - 50) *(0.15 + 0.1);
}
printf("行李的费用是%.2f\n",cost);
return 0;
}
// main.c
// 输出最大的数
//
// Created by 今天我很努力 on 15-3-7.
// Copyright (c) 2015年 gongsimingzi. All rights reserved.
//
/*有3个整数a,b,c,由键盘输入,输出其中最大的数。
*/
#include <stdio.h>
int main() {
//定义变量
int num1,num2,num3;
//提示输入
printf("请输入第一个整数\n");
//接收输入
scanf("%d",&num1);
printf("请输入第二个整数\n");
//接收输入
scanf("%d",&num2);
printf("请输入第三个整数\n");
//接收输入
scanf("%d",&num3);
//计算比较大小
if(num1 > num2 && num1 > num3){
printf("最大值是%d\n",num1);
}else if(num2 > num3 && num2 > num1){
printf("最大值是%d\n",num2);
}else{
printf("最大值是%d\n",num3);
}
return 0;
}
//三目运算
/* int a,b,c;
int max :a > b ? a : b;
int soMax :max > c ? max : b;
*/
// main.c
// 比较日期
//
// Created by 今天我很努力 on 15-3-7.
// Copyright (c) 2015年 gongsimingzi. All rights reserved.
//
#include <stdio.h>
int main(int argc, const char * argv[]) {
//定义变量
int month1,month2,date1,date2,year1,year2;
//提示输入
printf("请输入两个日期,格式为(1/31/1900)\n");
printf("请输入第一个日期\n");
//接收输入
scanf("%d/%d/%d",&month1,&date1,&year1);
printf("请输入第二个日期\n");
scanf("%d/%d/%d",&month2,&date2,&year2);
//比较
if(year2 > year1){
printf("日期更早得是:%d/%d/%d\n",month1,date1,year1);
}else if(month2 > month1 && year2 == year1){
printf("日期更早得是:%d/%d/%d\n",month1,date1,year1);
}else if(date2 > date1 && month2 == month1 && year2 == year1){
printf("日期更早得是:%d/%d/%d\n",month1,date1,year1);
}else{
printf("日期更早得是:%d/%d/%d\n",month2,date2,year2);
}
return 0;
}
// main.c
// 数字用汉字输出
//
// Created by 今天我很努力 on 15-3-7.
// Copyright (c) 2015年 gongsimingzi. All rights reserved.
//
#include <stdio.h>
int main() {
int num;
//提示输入
printf("请输入一个数字:\n");
//接收输入
scanf("%d",&num);
//分类
if(num % 10 == 0){
switch(num / 10){ //利用switch打印第一个数字,然后打印十
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;
}
printf("十");
}else if(num / 10 == 1){// 先打印十,然后用switch打印第二个数字
printf("十");
switch(num % 10){
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;
}
}else{ //利用switch打印两端的数字,中间打印十
switch(num / 10){
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;
}
printf("十\n");
switch(num % 10){
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;
}
}
return 0;
}