} } else
case 7: case 6: case 5: case 4: case 3: case 2: case 1: case 0:
cout<<\break;
cout<<\break;
cout<<\break;
cout<<\break;
cout<<\请输入正确的分数\
default:
cout<<\请输入正确的分数\
}
② 解决本题的算法思路描述
Ifelse一共有五种结果,,故有四个分支;
Switch五种结果,六种情况(其中一情况为满分)即可 ③ 调试过程的记载(包括出现的错误,以及修改过程)
Ifelse语句未出现错误 Switch语句
① switch后面需要判断的变量未加括号 ② switch后面未加上花括号 ③switch(a/10)后面误加分号
3)编写程序,求一元二次方程ax2+bx+c=0的根。包括以下判断和结果,若输入a=0,b=0给出提示;a=0,b<>0 , 一元一次方程的根;△=b2?4ac,若△>0,输出两个不等的实根;若△=0,输出两个相等实根;若△<0,输出两个复数根。
return 0;
如:a=-2, b=2 ,c=-1 两虚根是 0.5+0.5i 0.5-0.5i 。
?提示:本题需要使用if-else结构的嵌套,关键是搞清楚嵌套关系。
计算机的没有虚根的概念,虚根的输出必须分别输出实部和虚部。
① 程序原代码。(直接粘贴在此)
#include
double a,b,c,x,x1,x2,x3,x4,D; cin>>a>>b>>c; D=b*b-4*a*c; if (a==0&&b==0) { }
else if (D==0) { }
else if (D>0) { }
else if (a>0) { } else {
x3=-b/(2*a); x3=-b/(2*a); x4=sqrt(-D)/(2*a);
cout<<\cout<<\x1=(-b+sqrt(D))/(2*a); x2=(-b-sqrt(D))/(2*a);
cout<<\x1=-b/(2*a);
cout<<\x=-c/b;
cout<<\cout<<\
else if (a==0)
}
}
x4=sqrt(-D)/(2*a);
cout<<\cout<<\
return 0;
② 解决本题的算法思路描述
运用ifelse语句完成
③调试过程的记载(包括出现的错误,以及修改过程)
①判断时用=改正为== ③ 2*a误写成2a
③不区分a的正负导致虚数结果中出现+-和--
4)编写程序实现税费的计算。输入一个奖金数,求应交税款及实得奖金数。奖金税 率如下(a 代表奖金,r 代表税率):
a<500r=0% 500≤a<1000r=3% 1000≤a<2000r=5% 2000≤a<5000 r=8% a≥5000r=12%
?提示:应交税费是各段计算的税费之和。
① 程序原代码。(直接粘贴在此)
#include
int a; double b; cin>>a; if (!(a<5000)) { }
else if (!(a<2000)&&a<5000) {
b=(a-5000)*0.12+3000*0.08+1000*0.05+500*0.03; cout<<\税费为\
}
} {
b=(a-2000)*0.08+1000*0.05+500*0.03;
cout<<\税费为\
else if (!(a<1000)&&a<2000)
b=(a-1000)*0.05+500*0.03; }
else if (!(a<500)&&a<1000) { } else
cout<<\税费为0\
return 0;
b=(a-500)*0.03;
cout<<\税费为\cout<<\税费为\
② 解决本题的算法思路描述
用Ifelse语句划分范围进行计算
③ 调试过程的记载(包括出现的错误,以及修改过程)
Return 0 后面忘加分号
5)计算几种图形的面积。圆面积的计算公式为S=PI*r*r;长方形面积的计算公式为S=a*b;正方形面积的计算公式为S=a*a。
?提示:程序中定义一个表示图形类型的数据,例如用PicType表示;用cout语句输出提示信息让用户选择要计算的图形类别;例如:1:圆; 2:长方形; 3:正方形;
然后提示输入需要的参数,计算出面积后输出面积大小。
① 程序原代码。(直接粘贴在此)
#include
cout<<\圆\:长方形\:正方形\int a; cin>>a; switch (a) {
cout<<\请根据需要计算面积的图形的类型,输入1,2,3进行选择
}
case 1: case 2: case 3: } return 0;
cout<<\请输入正方形边长\double d,s2; cin>>d; s2=d*d;
cout<<\正方形面积为\break;
cout<<\请输入1-3的数字做出选择\cout<<\请输入长方形的长和宽\double b,c,s1; cin>>b>>c; s1=b*c;
cout<<\长方形的面积为\break; double r,s;
cout<<\请输入圆的半径\cin>>r; s=3.14*r*r;
cout<<\圆的面积为\break;
default:
② 解决本题的算法思路描述
运用switch语句 进行三个选择 然后分别计算
③ 调试过程的记载(包括出现的错误,以及修改过程)
在不同的case中定义了同一个变量导致程序错误 漏用分号
6)编写程序 求s=1!+2!+3!+ .........+ n!,n的值由用户输入。 ① 程序原代码。(直接粘贴在此)
#include
{
int n,i; double s,a; a=1; s=0;
cin>>n; for(i=1;i<=n;i++) {
a=a*i;
s=s+a; } cout<<\ return 0; }
② 决本题的算法思路描述
运用for循环计算阶乘
然后运用for循环相加即得出结果
③ 试过程的记载(包括出现的错误,以及修改过程)
忘记规定a和s的初始值