int main() { }
接下来往{}里面return 0;前添加代码进行实现
2. 定义字符型char变量存储用户输入的字符:char a; 3. printf函数提示用户输入字符:
printf(“请输入一个英文字符,回车结束”);
4. scanf函数把用户输入的英文字符,输入控制符用%c,放入字符型char变
量a中
scanf(“%c”,&a);
5. 考虑输入的是小写字母的情况,用关系运算符>=和<=和逻辑运算符并且&& (a >=’a’&&a<=’z’)
6. 考虑输入的是大写字母的情况,用关系运算符>=和<=逻辑运算符并且&&
(a >=’A’&&a<=’Z’)
7. 输入的是大写字母,输入的是小写字母和用户输入的不是英文字符这三种情
况用if...else if...else进行处理
if (a >=’a’&&a<=’z’) { }
else if (a >=’A’&&a<=’Z’) {
printf(“%c\\n”,a+32); //转换成小写字符; } else {
printf(“用户输入的不是英文字符”); printf(“%c\\n”,a-32); //转换成大写字符; return 0;
}
实验题目3假定征税的办法如下:收入在800元以下(含800元)的不征税;收入在800元以上,1200元以下者,超过800元的部分按5%收税;收入在1200元以上, 2000元以下者,超过1200元的部分按8%收税;收入在2000元以上者,2000元以上部分按按20%的税率收税,试编写按收入计算税费的程序(要求用switch语句编写程序) 提示:
1. 首先写c程序的基本框架
#include
return 0;
}
接下来往{}里面return 0;前添加代码进行实现
2. 定义变量存储用户输入的收入s_r,不同征收情况的整数值p,不同情况的
整数值就是switch后面的那个值p,应缴税收shui_shou: int s_r,p; double shui_shou;
3. printf函数提示用户输入收入: printf(“请输入你的收入,回车结束”); 4. scanf函数把用户输入的收入,放入变量s_r中 scanf(“%d”,&s_r);
5. 根据不同收入s_r的征税shui_shou情况不同进行考虑
收入小于800元 不征税 s_r<=800 shui_shou=0.0
收入大于800元小于1200元 超过800元的部分按5%收税; 800< s_r <=1200 shui_shou =( s_r -800)*0.05 收入在1200元以上2000元以下者 超过1200元的部分按8%收税
1200
6. 如何将条件表达式转换成整数数值:(s_r-800)/100 条件表达式 s_r<=800 800< s_r <=1200 1200
对应的整数值p都是4
但是根据题目要求:收入在1200元以上, 2000元以下者,超过1200元的部分按8%收税;得知收入1200元和1220元征收税额应该不同。 假设收入分别为1200元,1220元 我们发现
(1200-800)0=0 等于0
(1220-800)0=20 不等于0
采用(s_r-800)0!=0,即收入减去800对100取余数不等于0 采用(s_r-800)0=0,即收入减去800对100取余数等于0 进行条件判断。
如果不等于0,则加1,就是整数值p加1,采用p=(s-800)/100+1; 如果等于0,则不加1,整数值p不加1,采用p=(s-800)/100; !=表示不等于 代码如下:
if ((s_r-800)0!=0)
p=(s_r-800)/100+1; else
p=(s_r-800)/100;//p为switch后面的表达式 8. 不同情况的处理采用switch
switch(p) {
case0:shui_shou =0.00;break; case 1: case 2: case3: case 4:
shui_shou =(s_r-800)*0.05; break; case 5: case 6: case 7: case 8: case 9 case 10: case 11: case 12:
shui_shou=400*0.05+(s_r-1200)*0.08; break default:
shui_shou =400*0.05+800*0.08+(s_r-2000)*0.2; } 9. 输出计算得出的应缴税额和收入
printf(“你的收入为%d元\\n”,s_r);
printf(“你的应缴税额为%lf元\\n”,shui_shou);
实验6 分支结构嵌套和for循环编程练习
实验题目1 输入三角形的三条边的边长,从键盘输入三个整数,判断能否构成三角形的三边,如果能就判定它是等边还是等腰还是直角三角形还是任意三角形,并输出三角形的名称。 提示:
1. 首先写c程序的基本框架
#include
int main() { }
接下来往{}里面,return 0;前添加代码进行实现 2. 定义变量存储三角形三边:double a,b, c,
3. printf函数提示用户输入三条边: printf(“请输入三个整数,中间用空格分开”); 4. scanf函数把用户输入的三个值,放入变量a,b,c中
scanf(“%lf %lf %lf”,&a,&b,&c); 5. 考虑输入的三条边不构成三角形的情况,即要求任意两边之和大于第三边采
用关系运算符>和逻辑运算符并且&&
(a+b>c&&a+c>b&&b+c>a) 6. 等边三角形的判断条件:(a==b&&b==c&&c==a) 7. 等腰三角形的判断条件:(a==b||b==c||c==a)
8. 直角三角形的判定条件,两边的平方的和等于第三边:(a*a + b*b == c*c ||b*b +
c*c == a*a || a*a + c*c == b*b ) 9. 构成三角形和构成三角形类型,用if嵌套进行处理
if (a+b>c&&a+c>b&&b+c>a) {
if (a==b&&b==c&&==a) {
printf(“这是一个等边三角形”); }
else if (a==b||b==c||c==a) {
printf(“这是一个等腰三角形”); }
return 0;
else if (a*a + b*b == c*c ||b*b + c*c == a*a || a*a + c*c == b*b )
{ }
else { }
实验题目2 输入今天的日期y(年),m(月),d(日),输出明天的日期 提示:
1. 首先写c程序的基本框架
#include
return 0;
printf(“输入的三条边不构成三角形”); printf(“这是一个直角三角形”); }
接下来往{}里面,return 0;前添加代码进行实现 2. 定义整型int变量存储用户输入的年y,月m,日d:int y,m,d; 3. printf函数提示用户输入今天的日期:
printf(“请输入今天的日期,输入格式为2012 3 27”); 4. scanf函数把用户输入的年月日,分别放入整型int变量y,m,d中
scanf(“%d %d %d”,&y,&m,&d); 5. 几种不同情况的考虑,采用if…else if…else if…else进行处理
闰年的判断条件:该年能被4整除y%4==0,并且&&不能被100整除y0!=0,或者||该年能被400整除 y@0==0 a) 如果输入的日期是闰年的2月29日
if (y%4==0&&y0!=0|| y@0==0&&m==2&&d==29) 明天的日期为3月1日
printf(“明天的日期为%d年 %d月 %d日”,y,m=3,d=1); b) 如果输入的日期是平年的2月28日 else if (m==2&&d==28) 明天的日期为3月1日
printf(“明天的日期为%d年 %d月 %d日”,y,m=3,d=1); c) 如果输入今天的日期为一年的最后一天 else if (m==12&&d==31),