c语言分支结构习题
- 格式:doc
- 大小:28.00 KB
- 文档页数:2
C语言分支结构程序举例输入三个整数,输出最大数和最小数。
1.#include<stdio.h>2.int main(void){3.int a,b,c,max,min;4.printf("input three numbers: ");5.scanf("%d%d%d",&a,&b,&c);6.if(a>b){7.max=a;8.min=b;9.}else{10.max=b;11.min=a;12.}13.if(max<c){14.max=c;15.}else if(min>c){16.min=c;17.}18.printf("max=%d\nmin=%d",max,min);19.return0;20.}本程序中,首先比较输入的a、b的大小,并把大数装入max,小数装入min中,然后再与c比较,若max小于c,则把c赋予max;如果c小于min,则把c赋予min。
因此max内总是最大数,而min内总是最小数。
最后输出max和min的值即可。
计算器程序。
用户输入运算数和四则运算符,输出计算结果。
1.#include<stdio.h>2.int main(void){3.float a,b;4.char c;5.printf("input expression: a+(-,*,/)b \n");6.scanf("%f%c%f",&a,&c,&b);7.switch(c){8.case'+':printf("%f\n",a+b);break;9.case'-':printf("%f\n",a-b);break;10.case'*':printf("%f\n",a*b);break;11.case'/':printf("%f\n",a/b);break;12.default:printf("input error\n");13.}14.return0;15.}本例可用于四则运算求值。
分支结构程序设计[实验目的]1、进一步理解逻辑量的表示方法。
2、掌握C语言的逻辑运算符及逻辑表达式的正确使用。
3、熟练掌握if 语句与switch语句的正确应用。
[实验内容和步骤]1、有如下函数,请编程,输入x的值,输出y的值。
x (x<1)y= 2x-1 (1<=x<10)3x-11 (x>=10)#include <stdio.h>void main() {int x , y ;printf("Please input x : ") ;scanf("%d" , &x) ;if ( x < 1)y = x ;else if ( x >=1 && x < 10)y = 2 * x - 1 ;elsey = 3 * x - 11 ;printf("y = %d\n" , y) ;}2、根据学生成绩档次输出:成绩A档输出“85~100”成绩B档输出“70~84”成绩C档输出“60~69”其它输出“不及格”#include <stdio.h>void main() {int score ;printf("Please Input score: ") ;scanf( "%d" , &score ) ;if ( score >=85 && score <= 100)printf("85 ~ 100\n") ;else if (score >= 70 && score < 85)printf("70 ~ 84\n") ;else if (score >= 60 && score < 70)printf("60 ~ 69\n") ;elseprintf("bujige\n") ;}[问题讨论]1、对于多分枝选择结构何时使用if语句的嵌套,何时使用switch语句?2、 switch语句中break语句的作用是什么?。
c语言分支结构C语言的分支结构包括if语句、switch语句等。
1. if语句if语句的基本结构为:```if (condition){statement(s);}```其中,`condition`为判断条件,如果该条件成立,则执行`statement(s)`。
if语句还可以使用else语句来完成两种情况下的执行,语法如下:```if (condition){statement(s);}else{statement(s);}```2. switch语句switch语句用于根据不同的条件来执行不同的操作。
其基本结构为:```switch(expression){case constant-expression:statement(s);break; /* 如果忘记了break,程序将会继续执行下面的case,这可能会导致意外的结果 */case constant-expression:statement(s);break;default:statement(s);}```其中,`expression`为条件表达式,后面跟着多个`case`语句,每个`case`后跟一个常量表达式,如果`expression`的值与某个`case`后的常量值相等,则执行该`case`对应的语句,并跳出`switch`语句(如果没有`break`语句,则会继续执行下一个`case`语句)。
如果所有的`case`后的值都不匹配,则执行`default`对应的语句。
C语言顺序分支结构选择题及答案1.设ch是char型变量,其值为a,且有下面的表达式:ch=(ch>='a'&&ch<='z')?(ch+32):ch上面表达式的值是a)ab)ac)zd)zb2.设a,b和c都就是int型变量,且a=3,b=4,c=5,则下面的表达式中,值0的表达式就是a)'a'&&'b'b)a<=bc)a||b+c&&b-cd)!((a3.为表示关系x≥y≥z,应使用c语言表达式a)(x>=y)&&(y>=z)b)(x>=y)and(y>=z)c)(x>=y>=z)d)(x>=y)||(y>=z)a4.继续执行下面程序段intx=35;charz='a';intb;b=((x=15)&&(za)0b)1c)2d)3b5.表达式:10!=9的值是a)trueb)非零值c)0d)1d6.能正确表示a≥10或a≤0的关系表达式是a)a>=10ora<=0b)a>=10|a<=0c)a>=10||a<=0d)a>=10||a<=0d7.若建议在if后一对圆括号中则表示a不等同于0的关系,则能够恰当则表示这一关系的表达式为a)a<>0b)!ac)a=0d)ad8.设a=5,b=6,c=5,d=8,m=2,n=2,继续执行(m=a>b)&&(n=c>d)后n的值a)1b)2c)3d)0b9.设a为整型变量,无法恰当抒发数学关系:10表达式是a)1010&&a<15d)!(a<=10)&&!(a>=15)a10.若有以下定义:floatx;inta,b;则正确的switch语句是a)switch(x)b)switch(x){case1.0:printf(\{case1,2:printf(\case2.0:printf(\case3: printf(\}}c)switch(a+b)d)switch(a-b);{case1:printf(\{case1:printf(\case1-2:printf(\case2:printf(\}}a11.设a=1,b=2,c=3,d=4,则表达式:a12.设x、y、z、t均为int型变量,则执行以下语句后,t的值为x=y=z=1;t=++x||++y&&++z;a)不定值b)4c)1d)0c13.语句:printf(\的输入结果就是a)并无输入b)结果不确认c)-1d)1d14.能够恰当则表示a和b同时为正或同时为负数的逻辑表达式就是a)(a>=0||b>=0)&&(a<0||b<0)b)(a>=0&&b>=0)&&(a<0&&b<0)c)(a+b>0&&a+b<=0)d)a*b>0d15.有如下程序段inta=14,b=15,x;charc='a';x=(a&&b)&&(cc)0d)1d16.为了防止嵌套的if-else语句的二义性,c语言规定else总是与()组成配对关系。
c语言分支结构试题C语言的分支结构是编程中常用的一种结构,用于根据条件的不同执行不同的代码块。
下面是一些C语言分支结构的试题及其解答。
1. 请解释C语言中的if语句,并给出一个简单的示例代码。
if语句是C语言中用于条件判断的一种结构。
它根据条件的真假来决定是否执行特定的代码块。
示例代码:c.#include <stdio.h>。
int main() {。
int num = 10;if (num > 0) {。
printf("num是正数\n");}。
return 0;}。
以上代码中,如果变量`num`的值大于0,则会输出"num是正数"。
2. 请解释C语言中的if-else语句,并给出一个示例代码。
if-else语句是C语言中用于条件判断的一种结构,它根据条件的真假来决定执行不同的代码块。
示例代码:c.#include <stdio.h>。
int main() {。
int num = 10;if (num > 0) {。
printf("num是正数\n");} else {。
printf("num是负数\n");}。
return 0;}。
以上代码中,如果变量`num`的值大于0,则会输出"num是正数";否则,会输出"num是负数"。
3. 请解释C语言中的if-else if-else语句,并给出一个示例代码。
if-else if-else语句是C语言中用于多条件判断的一种结构,它根据多个条件的真假来决定执行不同的代码块。
示例代码:c.#include <stdio.h>。
int main() {。
int num = 0;if (num > 0) {。
printf("num是正数\n");} else if (num < 0) {。
分支结构
1、以下4个选项中,不能看作一条语句的是(d)
A){;} B)a=0,b=0,c=0; C)if(a>0); D)if(b==0) m
=1;n=2;
2、以下程序段中与语句k=a>b?(b>c?1:0):0;功能等价的是(a)
A)if((a>b)&&(b>c)) k=1; B) if((a>b)||(b>c))
k=1
else k=0;
C)if(a<=b) k=0; D)if(a>b) k=
1;
else if(b<=c) k=1; else if(b>
c) k=1;
3、有以下程序
main()
{ int i=1,j=1,k=2;
if((j++||k++)&&i++) printf("%d,%d,%d\n",i,j,k);
}
执行后输出的结果是 C
A) 1,1,2 B) 2,2,1 C) 2,2,2 D) 2,2,3
4、有以下程序
main()
{ int a=5,b=4,c=3,d=2;
if(a>b>c)
printf("%d\n",d);
else if((c-1>=d)==1)
printf("%d\n",d+1);
else
printf("%d\n",d+2);
}
执行后输出的结果是B
A) 2 B) 3 C) 4 D) 编译时有错,无结果
5、有以下程序
main()
{ int a=15,b=21,m=0;
switch(a%3)
{ case 0:m++;break;
case 1:m++;
switch(b%2)
{ default:m++;
case 0:m++;break;
}
}
printf("%d\n",m);
}
程序运行后的输出结果是_ A__。
A) 1 B) 2 C) 3 D) 4
6、以下程序的输出结果是C
main()
{ int a=5,b=4,c=6,d;
printf("%d\n",d=a>b?(a>c?a:c):(b));}
A) 5 B) 4 C) 6 D) 不确定
7、以下程序的输出结果是A
main()
{ int a=4,b=5,c=0,d;
d=!a&&!b||!c;
printf("%d\n",d);
}
A) 1 B) 0 C) 非0的数 D) -1
8、能正确表示逻辑关系:"a≥=10或a≤0"的C语言表达式是D
A) a>=10 or a<=0 B) a>=0|a<=10 C) a>=10 &&a<=0 D) a>=10‖a<=0
9、有如下程序
main0
{ 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);
}
该程序的输出结果是 A
A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=2
10、有如下程序
main()
{ float x=2.0,y;
if(x<0.0) y=0.0;
else if(x<10.0) y=1.0/x;
else y=1.0;
printf("%f\n",y);
}
该程序的输出结果是C
A) 0.000000 B) 0.250000 C) 0.500000 D) 1.000000
11、有如下程序
main()
{ int a=2,b=-1,c=2;
if(a<b)
if(b<0) c=0;
else c++;
printf("%d\n",c);
}
该程序的输出结果是
A) 0 B) 1 C) 2 D) 3
12、当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是C
A) c=b=a;B) (a=c) ‖(b=c) ;C) (a=c) &&(b=c); D) a=c=b;
13、能正确表示a和b同时为正或同时为负的逻辑表达式是D
A) (a>=0‖b>=0)&&(a<0‖b<0) B) (a>=0&&b>=0)&&(a<0&&b<0)
C) (a+b>0)&&(a+b<=0) D) a*b>0
14、以下程序输出结果是 B
A)7 B) 6 C) 5 D) 4
main ( )。