Report实验04_737Exam04_C作业与实验04

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

姓名:王宇恒专业:机自学号:3110104791 联系电话152******** Email:1262304269@https://www.360docs.net/doc/f76414176.html,

一、要求

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

2、掌握用switch编程。

3、掌握else-if语句和嵌套if的编程。

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

(二)实验程序与运行结果

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

程序

#include

int main(void)

{

char x;

scanf("%c",&x);

switch(x)

{

case'A':

printf("90~100\n");

break;

case'B':

printf("80~89\n");

break;

case'C':

printf("70~79\n");

break;

case'D':

printf("60~69\n");

break;

case'E':

printf("0~59\n");

break;

default:break;

}

return 0;

}

结果

三、实验内容

(三)理论知识题

单选题

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.设x,y,t为整型变量,且已赋值。下列程序段中,()在实现两个变量x和y的交换可能会出错。

A、{ t=x; x=y; y=t; }

B、{x=x+y; y=x-y; x=x-y; }

C、{ x=x*y; y=x/y; x=x/y; }

D、{ x=x-y; y=x+y; x=y-x; }

3. 执行语句“s=0; for(k=1; s<20||k<=12; k=k+2) s=s+k;”后,s、k的值为()。

A、25、9

B、25、11

C、36、11

D、36、13

4.若有如下程序,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c大于0)

s=a;

for(b=1;b<=c;b++) s=s+1;

则与上述程序段功能等价的赋值语句是()

A、s=a+b;

B、s=a+c;

C、s=s+c;

D、s=b+c;

5.能正确表示逻辑关系“a≥ 10或a≤0”的C语言表达式是___。

A)a>=10 or a<= O B) a>=0|a<=10 C)a>=10&&a<=O D) a>=10|| a<=0

6.下列叙述中正确的是____。

A)break语句只能用于switch语句

B)在switch语句中必须使用default

C)break语句必须与switch语句中的case配对使用

D)在switch语句中,不一定要使用break语句

7.有一函数y=,以下程序段中错误的是____。

8.下列程序段的输出结果是____。

int main()

{

int a=2,b=-1,c=2;

if(a

if(b<0) c=0;

else c++;

printf("%d\n",c);

return 0;

}

A)0 B)1 C)2 D)3

9.下列程序段的输出结果是____。

#include

int main()

{

int x=1,a=0,b=0;

switch(x)

{

case 0: b++;

case 1: a++;

case 2: a++;b++;

}

printf("a=%d,b=%d\n",a,b) ;

return 0;

}

A)a=2,b=1 B)a=1,b=1 C) a=1,b=0 D)a=2,b=2

10.在执行以下程序时,为使输出结果为:t=4,则给a和b输入的值应满足的条件是______。int main()

{

int a,b,s,t;

scanf("%d,%d",&a,&b);

s=1;t=1;

if(a>0)s=s+1;

if(a>b)t=s+t;

else if(a==b)t=5;

else t=2*s;

printf("t=%d\n",t);

}

A)a>b B)aa>b

填空题

1.下列程序段的输出是______。

int k;

float s;

for (k=0, s=0; k < 7; k ++)

s =s+ k/2;

printf("%d, %f\n", k, s);

2. 设ch是字符型变量,判断ch为英文字母的表达式是______。

3. 表示条件10

4.表达式!!5的值是______。

(二)编程:

即:输入五级制成绩(A~E),输出相应的百分制成绩(0~100)区间,要求用switch语句,比如,输入A,输出则为90~100。

相关文档
最新文档