文档库 最新最全的文档下载
当前位置:文档库 › Exam05_C作业与实验05

Exam05_C作业与实验05

实验项目名称:分支和循环程序设计

姓名:吴振国专业:工学学号:3110103147 同组学生姓名:无联系电话152******** Email:1157086433@https://www.wendangku.net/doc/f010128536.html,

一、要求

1、掌握逻辑运算符的使用。

2、掌握用switch编程。

3、掌握for、while、do…while语句。

二、作业结果、实验程序及运行结果(必填)

ⅱ判断题

要求:实验程序使用文本方式,运行结果必须粘贴运行图(尽可能把图弄小一些)。

程序

#include

int main()

{

int n;

double grade,total,max,min;

n=total=max=0;

min=100;

printf("Enter grades:");

scanf("%lf",&grade);

while(grade>=0){

total=total+grade;

n++;

if(grade>=max)

max=grade;

if(grade<=min)

min=grade;

scanf("%lf",&grade);

}

if(n!=0)

printf("Grade average is %.2f\n",(total-max-min)/(n-2));

else

printf("Grade average is 0\n");

}

结果

三、讨论、心得

由自己根据情况写

1、掌握逻辑运算符的使用。

2、掌握用switch编程。

3、掌握for、while、do…while语句。

四、实验内容

(三)理论知识题

i. 单选题

1.对于if语句,以下()是正确的。

A、if语句可以嵌套,嵌套时的else总与它最近的没有else的if相匹配

B、如果有if(a>=3){if(a==3)y=1;}else y=10;,则else与第一个if匹配

C、如果有if(a>=3){if(a==3)y=1;}else y=10;,则else与第二个if匹配

D、if语句不可以嵌套

2.若a、b、c1、c2、x、y、均是整型变量,正确的switch语句是:______

A、

swich(a+b);

{ case 1:y=a+b; break;

case 0:y=a-b; break;

} B、

switch(a*a+b*b) {case 3:

case 1:y=a+b;break; case 3:y=b-a,break; }

C、

switch a

{case c1 :y=a-b; break case c2: x=a*d; break default:x=a+b;

} D、

switch(a-b)

{default:y=a*b;break;

case 3:case 4:x=a+b;break; case 10:case 11:y=a-b;break; }

3.下列程序段的输出结果是。 int k=1;

switch(k) {

case 1: putchar('P');

case 2:

case 3: putchar('Q'); break; case 4: putchar('R');

default: putchar('S');

}

A、P

B、PQ

C、PQR

D、PQRS

4.只有当输入的数据满足1<=month<=12时,循环语句才能正常退出。

A.do{

scanf("%d", &month);

} while (month >= 1 || month <= 12);

B.do{

scanf("%d", &month);

} while (month >= 1 && month <= 12);

C.do{

scanf("%d", &month);

} while (month < 1 || month > 12);

D.do{

scanf("%d", &month);

} while (month <= 1 || month >= 12);

ii. 判断题

1. while循环有可能循环体一次也不执行。

2 int x=0;while(1){x++;}存在语法错误,程序不会执行。

3 int x=0;for(;;){x++;}是死循环程序。

4.do-while语句先执行循环体,后判断循环条件,所以循环体至少会执行一次。

(二)编程:

从键盘输入一批评分数据(以输入负数表示输入结束),求去掉一个最高分、一个最低分后的平均得分。

相关文档
相关文档 最新文档