第六题:求解一元二次方程组(待定)
第七题:判断闰年(表达式的 与 或)
#include<stdio.h>
int main()
{
int year;
scanf("%d", &year);
if ((year % 4 == 0) && (year % 100 != 0) || (year % 400 == 0))
{
printf("YES");
}
else
{
printf("NO");
}
return 0;
}
规则与写法没什么好说的,主要强调&&(与)和||(或)
&&(与—有一假则为假)(遇到第一个假的就会停止,后面的不再进行,结果为假)
||(或—有一真则为真)(遇到第一个真的就会停止,后面的不再进行,结果为真)
(**在书写时要注意式子的先后顺序和逻辑条件** 插排时会详细说一下)
第八题:获奖分等级(switch结构)
#include<stdio.h>
int main()
{
int win;
int mark;
printf("please input your score:");
scanf("%d", &mark);
getchar();
printf("please input your prize:\n");
printf("0:no 1:participant 2:third 3:second 4:first");
scanf("%d", &win);
switch (win)
{
case 0:break;
case 1:mark = mark + 5; break;
case 2:mark = mark + 15; break;
case 3:mark = mark + 20; break;
case 4:mark = mark + 30;
}
if (mark > 100)
mark = 100;
printf("your score is %d", mark);
return 0;
}
1.注意switch书写的格式与结构:switch会先计算()里的表达式的值,然后与case中的值进行对比,所以switch()中的表达式必须能算出具体的数
2.注意break的用法和default的用法
3.此处的getchar去掉也可以,取不取走空格对后面读入数字没有影响
第九题:计算N科成绩的平均成绩(循环结构)
#include<stdio.h>
int main()
{
float sum=0;
int n;
scanf("%d", &n);
int k=1, m;
do {
printf("please input an achievement");
scanf("%d", &m);
sum = sum + m;
k = k + 1;
} while (k <= n);
printf("average is :%5.2f", sum / n);
return 0;
}
1.注意do—while先执行后判断,注意循环次数
2.不要忘记最后的while()后有“;”
3.做循环时可以采用以下做法辅助理解: