C语言选择结构程序设计编程题.doc

合集下载

C语言-第4章 选择结构程序设计

C语言-第4章 选择结构程序设计

第4章选择结构程序设计注:选择结构的考点,最重要的有两个,一个是逻辑表达式的值,另一个是分支界限。

弄明白这两个知识点,就能够以不变应万变了。

一、单项选择题1. 在C语言中,能代表逻辑值"真"的是。

A) true B)大于0的数C)非0整数D)非0的数2. 表示关系x<=y<=z的c语言表达式为。

A) (x<=y)&&(y<=z) B) (x<=y)AND(y<=z) C) (x<=y<=z) D) (x<=y)&(y<=z)3. 能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是。

A) a>=10 or a<=0 B) a>=0|a<=10 C) a>=10 &&a<=0 D) a>=10‖a<=04、判断char型变量c1是否为大写字母的表达式为。

A)’A’<=c1<=’Z’ B)(c1>=’A’) & (c1<=’Z’)C)(’A’<=c1)AND (‘Z’>=c1) D)(c1>=’A’)&& (c1<=’’Z’)5. 有定义char c; c=getchar(); 判断字符变量c为大写字母的正确表达式为。

A) ‘A’=<c<=’Z’ B)c>=‘A’&& c<=’Z C)A=<c<=Z D) c>=A && c<=Z6. 设有语句“int a=4;b=3,c=-2,d=2;”,则逻辑表达式“a>0&&b&&c<0&&d>0”的值是。

A)1B)0 C)-1 D)出错7. 设a为整型变量,则不能正确表达数学关系10<a<15的C语言表达式是。

C语言程序设计试题及答案完整版

C语言程序设计试题及答案完整版

C语言复习资料必须清楚的:1)程序结构是三种: 顺序结构, 循环结构(三个循环结构), 选择结构(if 和switch)2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。

3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址.4)bit是位是指为0 或者1。

byte 是指字节, 一个字节= 八个位.5)一定要记住二进制如何划成十进制。

概念常考到的:1、编译预处理不是C语言的一部分,不再运行时间。

C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。

2、每个C语言程序中main函数是有且只有一个。

3、在函数中不可以再定义函数。

4、算法的是一定要有输出的,他可以没有输入。

5、break可用于循环结构和switch语句。

6、逗号运算符的级别最低。

第一章1)合法的用户标识符考查:合法的要求是由字母,数字,下划线组成。

有其它元素就错了。

并且第一个必须为字母或则是下划线。

第一个为数字就错了。

关键字不可以作为用户标识符号。

main define scanf printf 都不是关键字。

迷惑你的地方If 是可以做为用户标识符。

因为If中的第一个字母大写了,所以不是关键字。

2)实型数据的合法形式:2.333e-1 就是合法的,且数据是2.333×10-1。

考试口诀:e前e后必有数,e 后必为整数。

.3)字符数据的合法形式::'1' 是字符占一个字节,"1"是字符串占两个字节(含有一个结束符号)。

'0' 的ASCII数值表示为48,'a' 的ASCII数值是97,'A'的ASCII数值是65。

4)整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节:考试时候一般会说,在16位编译系统,或者是32位系统。

碰到这种情况,不要去管,一样做题。

掌握整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节就可以了。

C语言_实验二、选择结构程序设计

C语言_实验二、选择结构程序设计

实验二 选择结构程序设计一、实验目的1. 掌握关系表达式和逻辑表达式的使用。

2. 熟悉选择结构程序设计。

3. 熟练使用if 语句进行程序设计。

4. 使用switch 语句实现多分支选择结构。

二、实验内容(1 计算a+|b| 2 判断一个整数是否可以被3和5整除)1.[目的]掌握判断一个字符型数据是否数字字符的方法,以及数字字符转换为相应整数的方法。

[题目内容]从键盘输入一个字符型数据,若输入一个数字字符('0'-'9'),则将其转换成相应的整数显示出来;若输入其它字符,则显示出错信息。

[输入]一个字符型数据[输出]整数或出错信息[提示] 根据字符型数据的ASCII 码值是否在‘0’字符与‘9’字符之间进行判断。

使用if …else …语句和复合语句。

2.[目的]掌握条件表达式的使用[题目内容] 编写一个程序,其功能为:从键盘输入三个数x 、y 、z ,判断x+y=z 是否成立,若成立输出‚x+y=z ‛的信息,否则输出‚x+y!=z ‛的信息。

[输入] 三个数x 、y 、z[输出] ‚x+y=z ‛或‚x+y!=z ‛[提示] 条件判断表达式x+y==z3.[目的]掌握求最大值最小值的方法。

[题目内容] 编写一个程序,其功能为:输入三个整数,输出最大数和最小数。

[输入] 三个整数[输出] 最大值和最小值[提示] 设置最大值变量max 和最小值变量min ;首先比较a,b 的大小,并把大数存入max , 小数存入min ;然后最大值变量max 和最小值变量min 再与c 比较,若c 大于max ,则max 取值c ,否则保持不变;如果c 小于min ,则min 取值c ,否则保持不变。

最后输出max 和min 的值。

使用if …else …语句、if 语句以及复合语句。

4.[目的]运用已学知识解决实际问题。

[题目内容]如下两个线性方程组的两个未知数为x1和x2:ax 1+bx 2=mcx 1+dx 2=n该方程的唯一解为(ad-cb 不等于零时):cb ad bn md x --=1 bcad mc na x --=2 请编写一个程序,读取a 、b 、c 、d 的值,计算x1和x2的值。

【c语言程序设计】选择结构程序设计

【c语言程序设计】选择结构程序设计

第一章CH4 选择结构程序设计4.1 读程序1.有如下代码:#include<stdio.h>main( ){ char ch;ch=getchar( );switch(ch){ case ‘A’ : printf(“%c”,’A’);case ‘B’ : printf(“%c”,’B’); break;default: printf(“%s\n”,”other”);}}当从键盘输入字母A时,运行结果为:AB详见switch语句switch(表达式){ case 常量1 :语句1case 常量2 :语句2┇┇┇case 常量n :语句ndefault : 语句n+1}其中表达式,常量1,…,常量n都为整型或字符型case相当于给出执行程序的入口和起始位置,若找到匹配的常量,则从此处开始往下执行程序,不再匹配常量,直至遇到break或switch结束本题过程:首先从键盘接收一个字符’A’并将其放在变量ch中。

执行switch语句。

Switch后面的条件表达式为ch,因此表达式的值即为字符’A’. 用字符’A’依次与下面的case中的常量匹配。

与第1个case后的常量匹配,则从其后的语句开始往下执行程序(在执行过程中不再进行匹配。

)因此先执行printf(“%c”,’A’),屏幕上输出A;再往下继续执行printf(“%c”,’B’),屏幕上输出B;再继续执行break,此时跳出switch语句。

2. 有如下代码:#include <stdio.h>main( ){ int a=1,b=0;scanf(“%d”,&a);switch(a){ case 1: b=1;break;case 2: b=2;break;default : b=10;}printf("%d ", b);}若键盘输入5,运行结果为:10本题过程:首先用scanf函数为变量a赋值为5。

C语言选择结构程序设计编程题

C语言选择结构程序设计编程题

实验2选择结构程序设计一.实验目的:1.掌握选择控制语句的使用方法;2.了解C程序语句的执行过程。

二.实验内容:1.编写程序:输入一个整数,判断该数的奇偶性。

(输出相应的标志even-偶数odd-奇数,请记住这两个单词)。

2.从键盘输入的正整数,判断是否能被5和7同时整除,若是, 则输出Yes;否则输出N。

3.输入一个字符,如果是大写字母改变为小写字母;如果是小写字母,则把它变为大写字母;若是其它字符则不变。

4.编写程序,对于给定的一个百分比制成绩,输出相应的五分制成绩。

设:90分以上为'A' , 80~89分为'B' , 70~79分为'C', 60、69分为’D' , 60分以下为'E'(用if •••else…与switch语句两种方法实现)。

5.企业发放的奖金根据利润提成。

利润(i)低于或等于10万元时,奖金可提成10%;利润高于10万元,低于20万元时,低于10 万元的部分按10%提成,高于10万元的部分,可提成7. 5%; 20万元到40万元之间时,高于20万元的部分,可提5%; 40万元到60万元之间时,高于40万元的部分,可提成3%; 60万元到100万元之间时, 高于60万元的部分,可提成1.5%;高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润i,求发放奖金总数。

6.输入某年某月某日,判断这一天是这一年的第几天。

7.输入一个字符,请判断是字母、数字还是特殊字符。

8.身高预测:男性成人身高二(父亲身高+母亲身高)*0. 54cm女性成人身高二(父亲身高*0.923+母亲身高)/2cm如果喜爱体育锻炼,那么身高可增加2%;如果有良好的饮食习惯,可增加身高1.5%。

键盘输入性别、父母身高、是否爱好体育锻炼、是否有良好的饮食习惯,利用给定身高预测方法对你的身高进行预测。

9.要求用switch语句编程设计一个简单的计算器程序。

C语言程序设计选择题

C语言程序设计选择题

在C语言中,最基本的数据类型包括(A)整型、实型、字符型(B)整型、字符型、逻辑型(C)整型、实型、逻辑型(D)实型、字符型、逻辑型C语言中整常数的书写形式不能使用的数制形式是(A)十进制(B)八进制(C)十六进制(D)二进制字符串常量"ab\n\\cde\125"包含字符的个数是(A)8(B)9(C)12(D)13C语言的标识符只能由字母、数字和下划线三种字符组成,且第一个字符(A)必须为字母(B)必须为下划线(C)必须为字母或下划线(D)可以是这三种字符中的任一种下列是用户自定义标识符的是(A)int(B)2x(C)#x(D)_x在C语言中,下列常数不能作为常量的是(A)2e5(B) 5.6E-3(C)068(D)0xA3在C语言中,运算对象必须是整型的运算符是(A)%(B)>=(C)&&(D)=下列表达式与x = (y++)等价的是(A)x = y, y = y + 1(B)x = x + 1, y = x(C)x = ++y(D)x += y + 1若定义int x = 17; ,则表达式x++ * 1 / 6的值是(A)1(B)2(C)3(D)4如果在一个C语言表达式中有多个运算符,则运算时应该(A)只考虑优先级(B)只考虑结合性(C)先考虑优先级,然后考虑结合性(D)先考虑结合性,然后考虑优先级在C程序中,下面叙述不正确的是(A)x和X 是两个不同的变量(B)逗号运算符的优先级最低(C)从键盘输入数据时,对整型变量只能输入整型数据,对于实型变量只能输入实型数据(D)若x、y类型相同,则执行语句y = x,后,将把x的值放入y中,而x的值不变已知字符A的ASCII值为65,若定义int i;,则执行语句i = 'A' + 3.5;后,正确的叙述是(A)i的值是字符A的ASCII值加上3.5,即68.5(B)i的值是字符A的ASCII值加上3,即68(C)i的值是字符E(D)语句不合法C语言是计算机高级语言,它适合作为系统描述语言,它(A)可以用来编写系统软件,也可以用来编写应用软件(B)可以用来编写系统软件,不可以用来编写应用软件(C)不以用来编写系统软件,可以用来编写应用软件(D)不以用来编写系统软件,不可以用来编写应用软件在纸上写好一个C语言程序后,上机运行的基本步骤为(A)编辑、编译、连接、运行(B)编辑、连接、编译、运行(C)编译、编辑、连接、运行(D)编译、连接、编辑、运行用C语言等高级语言编写的程序称为(A)源程序(B)目标程序(C)可执行程序(D)编译程序一个C语言源程序经过“编译程序”翻译后生成一个二进制代码文件,它的扩展名为(A).c(B).obj(C).exe(D).dat通过“连接程序”软件,把C语言目标程序与C语言提供的各种库函数连接起来生成一个文件,它的扩展名为(A).c(B).obj(C).exe(D).dat下面叙述中正确的是(A)在C语言程序中,main()函数必须放在程序的开始位置(B)在C语言程序中,要调用的函数必须在main()函数中定义(C)C语言程序总是从第一个函数开始执行(D)C语言程序总是从main()函数开始执行在一个C语言源程序中,main()函数的位置(A)必须在固定位置(B)必须在其他所有的函数之前(C)必须在其他所有的函数之后(D)可以在任意位置一个C语言程序由(A)一个主函数和若干个子函数构成(B)一个主程序和若干个子程序构成(C)若干个过程组成(D)若干个子程序组成一个函数的组成有(A)主函数和子函数(B)函数名、函数类型、函数参数名、函数参数类型(C)函数的声明部分和执行部分(D)函数首部和函数体下面叙述不正确的是(A)C语言中的每条执行语句都需要用分号结束(B)在程序中任意合适的地方都可以加上注释以便阅读(C)include命令所在行后面需要加分号(D)C语言具有高级语言的功能,也具有低级语言的一些功能下面叙述正确的是(A)在C程序中,main()函数的位置必须在其他所有的函数之前(B)在C程序的编译过程中可以发现注释中的拼写错误(C)C语言自身没有输入输出语句(D)C程序的每一行只能写一条语句在C语言中,用来表示“取地址”的符号是(A)@(B)#(C)$(D)&在C语言中,用于结构化程序设计的三种基本结构是(A)顺序结构、选择结构、循环结构(B)顺序结构、选择结构、转移结构(C)顺序结构、选择结构、重复结构(D)顺序结构、条件结构、循环结构一个算法应具有“确定性”等5个特性,则对另外4个特性描述错误的是(A)有穷性(B)有效性(C)有零个或多个输入(D)有零个或多个输出程序设计一般可以简化为以下4个步骤,其中首先应该完成的是(A)建立数学模型(B)设计数据结构和算法(C)编写程序(D)调试并运行程序以下不正确的C语言标识符是(A)ABC(B)abc(C)a_bc (D)ab.c以下正确的C语言标识符是(A)%x(B)a+b(C)_123(D)test!编辑程序的功能是(A)建立并修改程序(B)将C源程序编译成目标程序(C)调试程序(D)命令计算机执行指定的操作C语言程序的基本单位是(A)过程(B)函数(C)子程序(D)标识符下列说法中错误的是(A)主函数可以分为两部分:主函数首部和主函数体(B)主函数可以调用任何非主函数的其它函数(C)任何非主函数可以调用其它任何非主函数(D)程序可以从任何非主函数开始执行在下列数据中属于“字符串常量”的是(A)ABC(B)"ABC"(C)'abc'(D)'a'在C语言中,字符'\n'在内存占用的字节数是(A)1(B)2(C)3(D)4字符串"ABC"在内存占用的字节数是(A)3(B)4(C)6(D)8在C语言中,合法的长整型常数是(A)0L(B)4321(C)0.07654321(D) 2.3456e10char型常量在内存中存放的是(A)ASCII值(B)BCD码值(C)内码值(D)十进制代码值设m, n, a, b, c, d均为0,执行(m = a == b) || (n = c == d)后,m,n的值是(A)0,0(B)0,1(C)1,0(D)1,1设a为5,执行下列语句后,b的值不为2的是(A) b = a / 2(B) b = 6 - (--a)(C) b = a % 2(D) b = a > 3 ? 2 : 4表达式10 != 9的值是(A)true(B)真(C)0(D)1若已定义x和y为double类型,则表达式x = 1, y = x + 3 / 2的值是(A) 1.0(B) 2.0(C)0.0(D) 2.5若有char a; int b; float c; double d;,则表达式a * b + d - c的值的类型是(A)float(B)int(C)char(D)double在以下一组运算符中,优先级最高的运算符是(A)<=(B)=(C)%(D)&&下列叙述中正确的是(A)C程序中的所有字母都必须小写(B)C程序中的关键字必须小写,其他标识符不区分大小写(C)C语言中的所有字母都不区分大小写(D)C语言中的所有关键字必须小写下面不属于C语言关键字的是(A)integer(B)typedef(C)enum(D)union以下叙述不正确的是(A)分号是C语句的必要组成部分(B)C程序的注释可以写在语句的后面(C)函数是C程序的基本单位(D)主函数的名字是mian下列能正确表示a≥10或a≤0的C语言关系表达式是(A) a >= 10 or a <= 0(B) a >= 10 | a <= 0(C) a >= 10 || a <= 0(D) a >= 10 && a <= 0下列只有当整数x为奇数时,才是逻辑“真”的表达式是(A)x % 2 == 0(B)!(x % 2 == 0)(C)!(x % 2 )(D)(x - x / 2 * 2) == 0设a为整型变量,不能正确表达数学关系10<a<15的C语言表达式是(A)10 < a < 15(B) a == 11 || a == 12 || a == 13 || a == 14(C) a > 10 && a < 15(D)!(a <= 10) && !(a >= 15)表达式17 % 4 / 8的值是(A)0(B)1(C)2(D)3下列说法正确的是(A)在执行C程序时不是从main()函数开始(B)C语言程序书写格式限制严格,一行内只能写一条语句(C)C语言程序书写格式比较自由,一条语句可以分写在多行上(D)C语言程序书写格式严格,要求一行内必须写一条语句,并要有行号逻辑运算符两侧运算对象的数据类型(A)只能是0或1(B)只能是0或非0正数(C)可以是正数或字符型数据(D)是逻辑型若有代数式3ae/(bc),则错误的C语言表达式为(A) a / b / c * e * 3(B) 3 * a * e / b / c(C) 3 * a * e / b * c(D) a * e / c / b * 3用C语言编写的代码程序(A)可立即执行(B)是一个源程序(C)经过编译即可执行(D)经过编译解释才能执行以下叙述中正确的是(A)C语言的源程序不必通过编译就可以直接运行(B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令(C)C源程序经编译形成的二进制代码可以直接运行(D)C语言中的函数不可以单独进行编译以下关于if语句的错误描述是(A)条件表达式可以是任意的表达式(B)条件表达式只能是关系表达式或逻辑表达式(C)条件表达式的括号不能省(D)与else配对的if语句是其之前最近的未配对的if语句若变量x、y、z被定义为float型,通过语句scanf("%f%f%f", &x, &y, &z);给x输入15.0,给y 输入25.0,给z输入35.0,下列输入形式不正确的是(A)15 25 35(B)15 25 35(C)15.0 25.0 35.0 (D)15.0,25.0,35.0若变量x、y被定义为float型,通过语句scanf("x=%f,y=%f", &x, &y);给x输入1.23,给y输入1.26,下列输入形式正确的是(A)x=1.23,y=1.26(B) 1.23,1.26(C) 1.23 1.26 (D)x=1.23 y=1.26若变量a、b、c被定义为int型,从键盘给他们输入数据,正确的输入语句是(A)scanf("%d%d%d", &a, &b, &c);(B)scanf("%d%d%d", a, b, c);(C)scanf("%f%f%f", &a, &b, &c);(D)input a, b, c;若定义float a;,要从键盘给a输入数据,其整数位为3位,小数位为2位,则选用(A)scanf("%f", &a);(B)scanf("%f", a);(C)scanf("%6.2f", &a);(D)scanf("%6.2f", a);对于以下程序代码段,叙述正确的是char c1='D', c2='d';printf("%c\n", (c1,c2));(A)缺少一个格式说明符,编译出错(B)程序运行时产生出错信息(C)程序输出大写字母D(D)程序输出小写字母d下面程序代码段输出的结果是int x=2, y=5;printf("%f\n", (float)(x / y));(A)0.000000(B)0(C)0.40000(D)0.4当输入数据形式为“25,13,10”时,下面程序代码段输出的结果是int a, b, c;scanf("%d%d%d", &a, &b, &c);printf("a+b+c=%d\n", a+b+c);(A)a+b+c=48(B)a+b+c=35(C)a+c=48(D)随机数以下说法正确的是(A)输入项可以为一个实型常量,如scanf("%f", 3.5);(B)只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d");(C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf("%4.2f", &x);(D)当输入数据时,必须指明变量的地址,如scanf("%f", &x);putchar函数可以向终端输出一个(A)整型变量表达式(B)实型变量值(C)字符串(D)字符或字符变量值已知ch是字符变量,下面正确的赋值语句是(A)ch = '123';(B)ch = '\xff';(C)ch = '\08';(D)ch = '\';若有a=1, b=0, c=2, d=3,则条件表达式a < b ? a : c < d ? c : d的值是(A)0(B)1(C)2(D)3如果从键盘输入数据23,下面程序代码段输出的结果是int x;scanf("%d", &x);if (x > 10){printf("%d", x);}if (x > 20){printf("%d", x);}if (x > 30){printf("%d", x);}(A)23(B)2323(C)232323(D)都不正确下面程序代码段的输出结果是int a=15, b=10, c=20, d;d = a > 12 ? b : c;switch(d){case 5:printf("%d,", a);case 10:printf("%d,", b);case 20:printf("%d,", c);default:printf("#\n"); }(A)15,10,20,#(B)10,20,# (C)10,20(D)10下面程序代码段的输出结果是int a=2, b=3, c=1;switch(c){case 0:a++;case 1:a++;b++;case 2:b++;}printf("a=%d,b=%d\n", a, b); (A)a=3,b=5(B)a=3,b=4 (C)a=4,b=4(D)a=4,b=5关于为什么要学习C语言,以下描述错误的是(A)C语言早就过时了,应该学习最流行的语言。

最新c语言第五章选择结构程序设计(习题册答案)

最新c语言第五章选择结构程序设计(习题册答案)

最新c语⾔第五章选择结构程序设计(习题册答案)第五章选择结构程序设计基础练习(A)⼀、填空题1、关系表达式的运算结果是逻辑值。

C语⾔没有逻辑型数据,以1代表“真”,以0代表“假”。

2、逻辑运算符!是单⽬运算符,其结合性是由右结合性。

3、C语⾔提供的三种逻辑运算符是&&、|| 、!。

其中优先级最⾼的为!,优先级最低的为| | 。

4、逻辑运算符两侧的运算对象不但可以是0和1,或者是0和⾮0的整数,也可以是任何类型的数据。

系统最终以0 和⾮0 来判定它们属于“真”或“假”。

5、设y为int型变量,请写出描述“y是偶数”的表达式(y%2==0)。

6、设x,y,z均为int型变量,请写出描述“x或y中有⼀个⼩于z”的表达式x7、条件“22&&x<3。

8、判断char型变量ch是否为⼤写字母的正确表达式是(ch>=‘A’)&&(ch<=‘Z’)。

9、当a=3,b=2,c=1时,表达式f=a>b>c的值是0。

10、当a=5,b=4,c=2时,表达式a>b!=c的值是1。

11、已知A=7.5,B=2,C=3.6,表达式A>B&&C>A||AB的值是0。

12、若a=6,b=4,c=2,则表达式!(a-b)+c-1&&b+c/2的值是1。

13、有int x,y,z;且x=3,y=-4,z=5,则表达式(x&&y)==(x||z)的值为1。

14、有int x,y,z;且x=3,y=-4,z=5,则以下表达式的值为1。

!(x>y)+(y!=z)||(x+y)&&(y-z)15、有int a=3,b=4,c=5,x,y;,则以下表达式的值为0。

!(x=a)&&(y=b)&&016、if (!k) a=3;语句中的!k可以改写为k= =0,使其功能不变。

C语言习题四选择结构程序设计

C语言习题四选择结构程序设计

习题四选择结构程序设计1. 设变量x和y均已正确定义并赋值。

以下if语句中,在编译时将产生错误信息的是______。

A、if(x++);B、if(x>y && y!=0);C、if(x>0) x--D、if(y<0) {;}else y++; else x++;解析:本题考查的是if语句。

if后表达式两侧的圆括号不可少,最后是一条语句或是用花括号括起来的一组语句。

选项A和B是在表达式后跟了一条空语句,选项D是在表达式后跟了一组空语句,选项C中x--是表达式而不是语句,所以在编译时会出现错误信息。

故本题答案选C。

2. 有以下程序main(){ int i;for(i=1;i<=40;i++){ if(i++%5==0)if(++i%8==0) printf ("%d",i);}printf("\n"); }执行后的输出结果是______。

A、5B、24C、32D、40解析:本题考查的是if语句的应用。

在满足for 语句条件下,第一个if语句的条件是指i先对5取余后,再自行加1;第二个if语句的条件是指:i=i+1后,再对8取余。

故本题答案选C。

3. 在嵌套使用if语句时,C语言规定else总是______。

A、和之前与其具有相同缩进位置的if配对B、和之前与其最近的if配对C、和之前与其最近的且不带else的if配对D、和之前的第一个if配对解析:本题考查的是if语句的使用规则。

在嵌套使用if语句时,C语言规定else总是和之前与其最近的且不带else的if配对。

故本题答案为C。

4. 有以下程序main(){ int i=1,j=2,k=3;if(i++==1&&(++j==3||k++==3))printf("%d %d %d\n",i,j,k); }程序运行后的输出结果是______。

C语言程序设计各章练习题

C语言程序设计各章练习题

《C 语言程序设计》各章练习题2016年12月汇编第1-3章 C 语言基础、编程规范、顺序结构程序设计编程题1:设a 和b 均为int 型变量,编写一个程序,通过键盘读入a,b 的值,然后交换a,b 的值。

要求屏幕显示“输入2个整数,用空格隔开”的提示语句,并且输出交换前a,b 的值,交换后a,b 的值。

附加要求:(1)允许定义第3个变量,实现交换;(2)不允许定义第3个变量,实现交换。

第4章选择结构程序设计编程题2:根据下列函数关系写程序,要求提示输入x 的值,输出y 的值。

编程题2:根据下列函数关系写程序,要求提示输入x 的值,输出y 的值。

编程题3:求 ax 2+bx+c=0方程的解。

(只输出b 2-4ac>=0的求解结果,小于0,输出“不予求解!”)第5章 循环结构程序设计编程题4:编程计算∑=ni i 1。

要求提示键盘输入n ,如n 为负数,不予计算,直接返回。

编程题5:编程序计算n !,要求n 从键盘输入,如n 小于0,不予计算。

编程题6:从键盘输入一个数n ,判断n 是否是素数。

编程题6:编写程序输出1~100之间的偶数,要求屏幕显示时5个偶数一行,每个数占5位,右对齐。

编程题7:编程计算100到1000之间有多少个数其各位数字之和是5,并将其输出。

编程题8:求满足下列条件的三位数n,它除以11(整数相除)所得到的商等于n的各位数字的平方和,且其中至少有二位数字相同的数。

编程题9:有一些十进制整数对ab和cd具有如下特性:ab×cd=ba×dc,其中a≠b且c≠d。

如:12×42=21×24。

请编程找出30~50之间满足上述等式所有m,n值,并按上述等式的格式输出。

(×用*表示)编程题10:从键盘上输入一个整数,然后把这个整数的各位逆序输出。

例如,输入123456,输出654321。

第6章数组编程题11:有一个已排好序的数组int a[11]={-5,-3,0,6,8,12,16,28,66,88};,要求输入一个数后,按原来排序的规律将它插入数组中。

c语言第4章 选择结构程序设计习题答案

c语言第4章 选择结构程序设计习题答案

第4章选择结构程序设计习题(P111)4。

2 C语言中如何表示“真”和“假”?系统如何判断一个量的“真”和“假”?答:C语言中用1表示真,0表示假;系统按照“非0为真,0为假”判断一个逻辑量的真假。

4.3 写出下面各逻辑表达式的值。

设a=3,b=4,c=5。

(1)a+b〉c&&b==c (2)a||b+c&&b-c (3)!(a〉b)&&!c||1(4)!(x=a)&&(y=b)&&0 (5)!(a+b)+c—1&&b+c/2解:该题在求解过程中注意:一、优先级。

逻辑运算符(&&和||)低于算术运算符和关系运算符而高于赋值运算符,在逻辑运算符中,逻辑非最高,逻辑与其次,逻辑或最低;二、逻辑表达式的求值规则。

(P94)所以得以上表达式的值分别为:(1)0 (2)1 (3)1 (4)0 (5)14。

4有3个整数a、b、c,由键盘输入,输出其中最大的数。

分析:这是一个规模较小的求最值的算法,习题1.6用函数的方法实现。

该题不用函数调用实现,但方法类似。

法一:先求前两个数的最值,再用前两个数的最值和第三个数比较即得结果。

法二:先假设第一个数是最值,再依次和第二、第三个数比较得结果。

其中都要用到单分支或双分支选择结构语句。

参考程序如下:法一:main(){ int a,b,c,max;/*定义4个整型变量,其中a,b,c存原始数据,max存最值*/ printf(”\ninput the value of a,b,c:"); /*提示输入*/scanf(”%d%d%d",&a,&b,&c);/*格式符之间无分隔符,输入时可以以空格、回车、跳格分隔*/if(a>b) max=a;else max=b;if(max<c) max=c;printf("\nmax=%d\n",max);}法二:main(){int a,b,c,max;printf(”\ninput the value of a,b,c:”);scanf(”%d%d%d",&a,&b,&c);max=a;if(max〈b) max=b;if(max<c) max=c;printf("\nmax=%d\n”,max);}4.6有一个函数:写一段程序,输入x,输出y的值。

C语言程序设计第四次作业-选择结构(2)

C语言程序设计第四次作业-选择结构(2)

C语⾔程序设计第四次作业-选择结构(2)(⼀)改错题输出三⾓形的⾯积和周长,输⼊三⾓形的三条边a、b、c,如果能构成⼀个三⾓形,输出⾯积area和周长perimeter(保留2位⼩数);否则,输出“These sides do not correspond to a valid triangle”。

输⼊输出样例1: Enter 3 sides of the triangle: 5 5 3 area = 7.15; perimeter = 13.00输⼊输出样例2: Enter 3 sides of the triangle: 1 4 1 These sides do not correspond to a valid triangle源程序(有错误的程序)#include <stdio.h>#include <math.h>int main(void){double a,b,c;double area,perimeter,s;printf("Enter 3 sides of the triangle: ");scanf( "%lf%lf%lf",&a,&b,&c );if( a + b > c || b + c > a || a + c > b)s = ( a + b + c ) / 2;area = sqrt( s * ( s - a ) * ( s - b ) * ( s - c );perimeter = a + b + c;printf("area = %.2f; perimeter = %.2f\n",area,perimeter);elseprintf("These sides do not correspond to a valid triangle\n");return 0;}错误信息1:错误原因:少⼀个右括号。

C语言编程实验课之选择结构

C语言编程实验课之选择结构

1.计算分段函数本题目要求计算下列分段函数f(x)的值:注:可在头文件中包含math.h,并调用sqrt函数求平方根,调用pow函数求幂。

输入格式:输入在一行中给出实数x。

输出格式:在一行中按“f(x) = result”的格式输出,其中x与result都保留两位小数。

输入样例1:10输出样例1:f(10.00) = 3.16输入样例2:-0.5输出样例2:f(-0.50) = -2.75(1)编程思路。

简单的if …else …结构。

(2)源程序。

#include <stdio.h>#include <math.h>int main (){double x,y;scanf("%lf",&x);if (x>=0){y=sqrt(x);}else{y=(x+1)*(x+1)+2*x+1/x;}printf("f(%.2f) = %.2f\n",x,y);return(0);}2.三天打鱼两天晒网中国有句俗语叫“三天打鱼两天晒网”。

假设某人从某天起,开始“三天打鱼两天晒网”,问这个人在以后的第N天中是“打鱼”还是“晒网”?输入格式:输入在一行中给出一个不超过1000的正整数N。

输出格式:在一行中输出此人在第N天中是“Fishing”(即“打鱼”)还是“Drying”(即“晒网”),并且输出“in day N”。

输入样例1:103输出样例1:Fishing in day 103输入样例2:34输出样例2:Drying in day 34(1)编程思路。

按输入的N五天一个周期,因此分成两种情况:1)N%5等于1或2或3,打鱼;2)N%5等于4或0,嗮网。

写成简单的if…else …结构。

(2)源程序。

#include <stdio.h>int main(){int n;scanf("%d",&n);if (n%5>=1 && n%5<=3)printf("Fishing in day %d\n",n);elseprintf("Drying in day %d\n",n);return 0;}3.比较大小本题要求将输入的任意3个整数从小到大输出。

C语言程序设计试题第十套-试卷

C语言程序设计试题第十套-试卷

“程序设计基础--C”试卷试题一、单项选择题(每小题 2 分,共20 分)1.C 语言程序的三种基本结构是顺序结构、选择结构和______结构。

A、循环B、递归C、转移D、嵌套2.若x是单精度实型变量,表达式(x = 10/4) 的值是_____ 。

A、2.5B、2.0C、3D、 23. 表达式!x 等价于_____。

A、x==0B、x==1C、x != 0D、x != 14.若变量已正确定义且k 的值是4,计算表达式( j = k--) 后,_____。

A、j=3, k=3B、j=3, k=4C、j=4, k=4D、j=4, k=35. 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低的顺序依次为_____。

A、算术运算、赋值运算、关系运算B、关系运算、赋值运算、算术运算C、算术运算、关系运算、赋值运算D、关系运算、算术运算、赋值运算6.C语言中,形参的缺省的存储类说明是______。

A、autoB、staticC、registerD、extern7.下列语句定义pf为指向float类型变量f的指针,_____是正确的。

A、float f, *pf = f;B、float f, *pf = &f;C、float *pf = &f, f;D、float f, pf = f; 8.表达式sizeof(“key”) 的值是______。

A、1B、2C、3D、49.将程序prog.c编译后运行:prog –nla hello world 则*(*(argv+2)) 是______。

A、’p’B、‘-‘C、‘h’D、‘w’10.若a是整型变量,表达式~(a ^ ~a ) 等价于______。

A、~aB、1C、0D、2试题二、填空题(每小题 3 分,共24 分)1.写出语句printf ("%d, %o, %x", 0x12, 12, 012); 的输出结果。

2.写出下列程序段的输出结果。

C语言编程练习题与答案 选择结构2-3

C语言编程练习题与答案 选择结构2-3
if (b!=2) {
if (b==1 || b==3 || b==5 || b==7 || b==8 || b==10 || b==12) printf("%d",31);
else printf("%d",30); }
return 0; }
2.测试数据 (不提供,请在网站上进行测试)
三、判断一个数能否被 2、3、5 整数(codeup,21662,原题,25 日第 5 题升级)答案 1.源代码: #include <stdio.h>
2.测试数据 (不提供,请在网站上进行测试)
二、某月天数判断(codeup,21663,原题) 答案 1.源代码: #include <stdio.h>
int main() {
int a,b; scanf("%d %d",&a,&b);
if (b==2) {
if ((a%4==0 && a%100!=0)||(a%400==0)) printf("%d",29); else printf("%d",28); }
break; case 3:printf("%d,%d,%d",hundred,ten,indiv);
printf("\n%d %d %d\n",indiv,ten,hundred); break;
case 2:printf("%d,%d",ten,indiv); printf("\n%d %d\n",indiv,ten);
int main() {
int num,indiv,ten,hundred,thousand,ten_thousand,place; 十位,百位,千位,万位和位数

C语言程序设计试题附答案3篇

C语言程序设计试题附答案3篇

C语言程序设计试题附答案3篇C语言程序设计试题附答案11. 用C语言编写的代码程序( B )A)可立即执行 B)是一个源程序 C)经过编译即可执行 D)经过编译解释才能执行2. C语言中用于结构化程序设计的三种基本结构是( A )A)顺序结构、选择结构、循环结构 B)if、switch、break C)for、while、do-while D)if、for、continue3. 以下定义语句中正确的是( C )A)char a='A'b='B'; B float a=b=10.0;C)int a=10,b= D)float a,b=4.下列选项中,不能用作标识符的是( D )A)_1234_ B)_1_2 C) int_2_ D)2_int_5.在函数调用过程中,如果函数funA调用了函数 funB,函数funB又调用了函数funA,则 ( B )A)称为函数的直接递归调用 B)称为函数的间接递归调用C)称为函数的循环调用 D)C语言中不允许这样的递归调用6.以下叙述中正确的是 ( A )A)局部变量说明为static存储类,其生存期将得到延长B)全局变量说明为static存储类,其作用域将被扩大C)任何存储类的变量在未赋初值时,其值都是不确定的D)形参可以使用的存储类说明符与局部变量完全相同7.若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是( B)A)for(i=1,p=1;i=0_______;i--){if(____i%17==0____④________) break;}printf("%d\n",__⑤_i____);}3.以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和。

main(){ int i,a[20],sum,count;sum=count=0;for(i=0;i0)?? { count++;?? sum+= _a[i]__③___ ;?? }? }printf("sum=%d,count=%d\n",__sum④___,__⑤__count___);}4.以下程序的功能是调用函数fun计算:m=1+2+3+4+…+9+10,并输出结果。

C语言 第四章 选择结构程序设计期末测试习题与答案

C语言 第四章 选择结构程序设计期末测试习题与答案
C.其之后最近的if
D.其之前最近的没有else配对的if
参考答案:D
12、在下面的条件语句中,只有一个在功能上与其它三个语句不等价,它是( )。
A.if (a)语句1 else语句2
B.if (a!=0)语句1 else语句2
C.if (a==0)语句2 else语句1
D.if (a==0)语句1 else语句2
printf(“a=%d,b=%d\n”,aa=2,b=2
C.a=1,b=0
D.a=1,b=1
参考答案:B
16、假定所有变量均已正确说明,以下程序段运行后的输出结果是( )。
int a=1,b=5,c=3;
if(a>b)
a=b;
b=c;
c=a;
printf("a=%d b=%d c=%d\n",a,b,c);
D.if(a==0) printf("%d\n",x); else printf("%d\n",y);
参考答案:D
2、假定所有变量均已正确说明,下列程序段运行后x的值是( )。
a=b=c=0;x=12; if(!a)x--; else x=5; if(c) x=3; else x=4;
A.3
B.4
C.12
int a=1,b=3,c=5; if(c=a+b) printf("yes\n"); else printf("no\n");
A.3
B.5
C.1
D.2
参考答案:A
5、当把以下4个表达式用作if语句的控制表达式时,有一个选项与其他3个选项含义不同,这个选项是( )。
A.k%2==1

C语言程序设计》课后习题详细答案

C语言程序设计》课后习题详细答案

《全国计算机等级考试二级教程——C语言程序设计》习题分析与详细解答第一章程序设计基本概念习题分析与解答1.1 【参考答案】EXE1.2 【参考答案】[1].C [2].OBJ [3].EXE1.3 【参考答案】[1]顺序结构[2]选择结构[3]循环结构第二章C程序设计的初步知识习题分析与解答一、选择题2.1 【参考答案】B)2.2 【参考答案】D)2.3 【参考答案】B)2.4 【参考答案】A)2.5 【参考答案】C)2.6 【参考答案】A)2.7 【参考答案】B)2.8 【参考答案】B)2.9 【参考答案】D)2.10 【参考答案】C)2.11 【参考答案】B)2.12 【参考答案】B)2.13 【参考答案】A)二、填空题2.14 【参考答案】[1]11 [2]122.15 【参考答案】[1]4.2 [2]4.22.16 【参考答案】[1]{ [2]} [3]定义[4]执行2.17 【参考答案】[1]关键字[2]用户标识符2.18 【参考答案】[1]int [2]float [3]double2.19 【参考答案】float a1=1.0, a2=1.0;或float a1=1, a2=1;(系统将自动把1转换为1.0)2.20 【参考答案】存储单元2.21 【参考答案】 3.52.22 【参考答案】[1]a*b/c [2]a/c*b [3]b/c*a2.23 【参考答案】把10赋给变量s2.24 【参考答案】[1]位[2]1位二进制数据(0或1)2.25 【参考答案】[1]8 [2]127 [3]01111111 [4]-128 [ 5 ] 10000000 2.26 【参考答案】[1]32767 [2]-32768 [3]10000000000000002.27 【参考答案】[1]十[2]八[3]十六三、上机改错题2.28 【分析与解答】第1行的错误:(1) include是一个程序行,因此在此行的最后不应当有分号(;)。

第2章 C语言程序设计结构-选择题

第2章 C语言程序设计结构-选择题

(1)以下叙述中正确的是A)赋值语句是一种执行语句,必须放在函数的可执行部分B)scanf和printf是C语言提供的输入和输出语句C)由printf输出的数据都隐含左对齐D)由printf输出的数据的实际精度是由格式控制中的域宽和小数的域宽来完全决定的(2)有以下程序main() {int a=3;a+=a-=a*a;printf( "%d\n", a ); }程序的输出结果是A)9B)3C)-12D)0(3)有如下程序段:int x=12;double y=3.141593;printf("%d%8.6f", x, y);其输出结果是A)12 3.141593B)12, 3.141593C)123.1415930D)123.141593(4)若有以下程序#include <stdio.h>main() {int b=10, a=-11;a %=b %= 4;printf("%d %d\n", a, b); }则程序的输出结果是A)1 2B)-1 -2C)-1 2D)1 -2(5)有以下程序main() {int a=2, c=5;printf( "a=%%d,b=%%d\n", a,c ); }程序的输出结果是A)a=%2,b=%5B)a=%d,b=%dC)a=2,b=5D)a=%%d,b=%%d(6)有以下程序main() {chara,b,c,d;scanf("%c%c",&a, &b);c=getchar();d=getchar();printf("%c%c%c%c\n",a,b,c,d); }当执行程序时,按下列方式输入数据(从第1列开始,代表回车,注意:回车也是一个字符)12 34 则输出结果是A)12B)1234C)12 3D)12 34(7)若变量已正确定义为int型,要通过语句scanf("%d,%d,%d",&a,&b,&c); 给a赋值1、给b赋值2、给c赋值3,以下输入形式中错误的是(注:□代表一个空格符)A)□□□1,2,3B)1,□□□2,□□□3C)1,2,3D)1□2□3(8)设变量均已正确定义,若要通过scanf("%d%c%d%c",&a1,&c1,&a2,&c2); 语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。

大学C语言程序设计(编程题)

大学C语言程序设计(编程题)

2 / 36
C 语言程序设计习题(编程题)
习题 6(编程题)[知识点:选择结构] 将以下程序段改用嵌套的 if 语句实现。 int s,t,m; t=(int)(s/10); switch(t) {case:m=5;break; case 9:m=4;break; case 8:m=3;break; case 7:m=2;break; case 6:m=1;break; default: m=0; } 习题 6-参考答案 if(s>=110&&s<60) m=0 else if(s<110) m=5; else if(s<100) m=4; else if(s<90) m=3; else if(s<80) m=2; else m=1; 习题 7(编程题)[知识点:选择结构] 编程实现以下功能:读入两个运算数(data1 和 data2)及一个运算符(op),计算表达式 data1 op data2 的值,其中 op 可为 +,-,*,/(用 switch 语句实现)。 习题 7-参考答案 #include<stdio.h> #include<stdlib.h> main() {float data1,data2,result; char op; printf("Type in your expression:"); scanf("%f %c %f",&data1,&op,&data2); switch(op) {case '+':result=data1+data2;break; case '-':result=data1-data2;break; case '*':result=data1*data2;break; case '/':if(data2==0){printf("\nDivision by zero!");exit(1);} result=data1/data2;break; } printf("This is %6.2f %c %6.2f=%6.2f\n",data1,op,data2,result); } 习题 8(编程题)[知识点:选择结构] 编一程序, 对于给定的一个百分制成绩, 输出相应的五分值成绩。 设 90 分以上为'A',80-89 分为'B',70-79 分为'C',60-69 分为'D',60 分以下为'E'(用 switch 语句实现)。 习题 8-参考答案 main() {int score=-1,temp; 3 / 36
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验2 选择结构程序设计
一.实验目的:
1.掌握选择控制语句的使用方法;
2.了解C程序语句的执行过程。

二.实验内容:
1.编写程序:输入一个整数,判断该数的奇偶性。

(输出相应的标志even-偶数odd-奇数,请记住这两个单词)。

2.从键盘输入的正整数,判断是否能被5和7同时整除,若是,则输出Yes;否则输出No。

3.输入一个字符,如果是大写字母改变为小写字母;如果是小写字母,则把它变为大写字母;若是其它字符则不变。

4.编写程序,对于给定的一个百分比制成绩,输出相应的五分制成绩。

设:90分以上为‘A’,80~89分为‘B’,70~79分为‘C’,60~69分为‘D’,60分以下为’E’(用if…else…与switch 语句两种方法实现)。

5. 企业发放的奖金根据利润提成。

利润(i)低于或等于10万元时,奖金可提成10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万元到40万元之间时,高于20万元的部分,可提5%;40万元到60万元之间时,高于40万元的部分,可提成3%;60万元到100万元之间时,高于60万元的部分,可提成1.5%;高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润i,求发放奖金总数。

6. 输入某年某月某日,判断这一天是这一年的第几天。

7. 输入一个字符,请判断是字母、数字还是特殊字符。

8. 身高预测:
男性成人身高=(父亲身高+母亲身高)*0.54cm
女性成人身高=(父亲身高*0.923+母亲身高)/2cm
如果喜爱体育锻炼,那么身高可增加2%;如果有良好的饮食习惯,可增加身高1.5%。

键盘输入性别、父母身高、是否爱好体育锻炼、是否有良好的饮食习惯,利用给定身高预测方法对你的身高进行预测。

9. 要求用switch语句编程设计一个简单的计算器程序。

要求根据用户从键盘输入的表达式。

操作数1 运算符op 操作数2
计算表达式的值。

指定的算术运算符为加(+)、减(-)、乘(*)、除(/)。

在此基础上,增加如下要求:
(1)如果要求程序能进行浮点数运算,程序应该如何修改?如何比较实型变量和常数0是否相等?
(2)如果要求输入的算术表达式中的操作数和运算符之间可以加入任意多个空格符,那么程序如何修改?
(3)如果要求连续多次算术运算,每次运算结束后,程序都给出提示:
Do you want to continue(Y/N y/n)?
如果用户输入Y或y时,程序继续进行其它算术运算,否则程序才退出运行状态。

那么程序如何进行修改?
三.实验步骤:四. 实验结果分析:。

相关文档
最新文档