最简单的C程序设计-顺序程序设计 习题四及参考答案
C程序设计基础练习题4及答案

一、单选题1、以下数组定义中,错误的是()。
A.inta[3]={‰2,3,4};B.inta[]={l,2,3};C.inta[5]={l z2,3};D.inta[5],b;正确答案:A解析:A、数组长度为3,但赋了4个初值2、设有定义inta[10]={0};则说法正确的是()。
A.数组初始化错误,初值个数少于数组元素个数B.数组a有10个元素,各元素的值为0C.数组a有1个元素,其值为0D.数组a有10个元素,其中a[0]的值为0,其他元素的值不确定正确答案:B解析:B、当定义的同时,给数组赋了初值,但初值个数小于数组长度时,剩余的数组元素全赋为03、执行下面的初始化语句,()保存的不是字符串。
A.charstr[6]={,S, ,r,,,i√n,,,g,};B.charstr[]={'S';t','r,,,i,z,n∖,g,,0};C.charstr[10]={'S',,t',,r',,i√n∖,g,,,∖0,};D.charstr[10]="String";正确答案:A解析:A、Str数组长度为6,6个元素值都不是'0)没有成为字符串B›,∖0,的ASClI码是0,初始化为。
或'∖0'是一样的。
4、设有以下定义,则数组Sl和s2()ocharsl[]={'S'z,t','r'∕i√n','g');chars2[]="String";A.长度不同,但内容相同B.长度相同,内容也相同C.长度相同,但内容不同D.长度不同,内容也不同正确答案:D解析:D、s2比Sl多一个∖0T长度多15、设已定义charstr[6]={,a√b√∖O√c√d√∖O,};执行语句printf(("%s",str)后,输出结果为()。
c语言程序设计c语言程序设计练习四(参考答案).docx

《C语言程序设计》练习四(参考答案)1. 输入一个学生的成绩(在o〜100分之间,超出此范围显示错),进行五级评分并显示。
答案:第一空:score>=0 && score<=100第二空:score/10第三空:break2. 使用二维数组形成并按下列形式输出数据0 12 3 412 3 4 52 3 4 5 63 4 5 6 74 5 6 7 8答案:第一空:a[5][5]第二空:i+j第三空:printf(n\n n)3. 对含有10个元素的数组“先按元素的存储次序倒序输入,再按其正序输出。
答案:第一空:N 10第二空:i>=0第三空:&a[i]4.学生成绩的字母等级和分数范围如下:字母等级分数范围9()〜100B 80-89C 70〜7960 〜690〜59输入错误输入字母等级之后,输出相应的分数范围。
答案:第一空:char score 第二空:break 第三空:default5.从键盘输入x 的值,根据以下公式计算并输岀x 和 J = <y 的值。
X 0<x<2 x 2 +l 2<x<6 Jx + l 6SxvlOY、in答案: 第一空:&X 第二空:break 第三空:sqrt(x-i-l)A 二IVU 2 +i6. 分别统计并输出17、18、19和20岁各年龄的学生人数。
答案:第一空:prim 廿(”输入年龄有\n”) 第二空:age 第三空:a[i]7. 将从键盘输入的字符串逆序显示。
答案: 第一空:str 第二空:n 第三空:p-E其它字母8. 输入100名学生的出生月份,统计并输出每个月份过生FI的学生人数。
答案:第一空:&month第二空:iv=12第三空:%d9. ........................................................................... 输入n(ndl),计算1+ (1+2) + (1+2+3) + ...................................................................... +(1+2+……+n)的值。
语言程序设计习题答案

C 语言程序设计习题答案习题一 C 语言程序设计概述一、名词解释(1)程序P1 (2)程序设计P1 (3)机器语言P1 (4)汇编程序P2(5)高级语言P2 (6)编译程序P3 (7)解释程序P3 (8)算法P4(9)结构化的程序设计P9二、简述题1. 设计程序时应遵循哪些基本原则P4答:正确性、可靠性、简明性、有效性、可维护性、可移植性。
2. 算法的要素是什么算法具有哪些特点答:算法的要素是:操作与控制结构;算法的特点有:有穷性、确定性、有效性、有零个或多个输入、有一个或多个输出。
3. 算法的表示形式有哪几种答:算法的表示形式有:自然语言、传统流程图、伪代码、结构化的流程图(N_S 流程图,盒图)。
4. 有哪三种基本结构答:三种基本结构是:顺序结构、选择结构和循环结构。
5. 传统流程图与N-S 流程图最大的区别是什么答:N-S 流程图去掉了在传统流程图中常用的流程线,使得程序的结构显得更加清晰、简单。
三、用传统流程图、N-S 图分别表示求解以下问题的算法。
1. 有3个数a ,b ,c ,要求按由大到小的顺序把它们输出。
2. 依次将10个数输入,求出其中最大的数 和最小的数并输出。
3. 求1+2+3+…+100的值。
4. 求1×2×3×…×10的值。
5. 求下列分段函数的值。
6. 求100~200之间的所有素数。
7. 求一元二次方程ax 2+bx+c=0的根。
分别考虑d=b 2-4ac 大于0、等于0和小于0三种情况。
四、注释下面C 程序的各个组成部分。
main() /*主函数 */{ /*程序开始 */int a,k,m; /*定义三个用来存放整数的变量 */a=10; /*将整数10赋值给变量a */k=2; /*将整数2赋值给变量k */m=1; /*将整数1赋值给变量1 */a=(k+m)*k/(k-m); /*先求出算术表达式的值,并将其赋值给变量a */printf("%d\n",a); /*在屏幕上打印出变量a 的值 */} /*程序结束 */习题二 数据类型、运算符与表达式一、选择题1~10:BCDCB DDBCA11~20: ADDAA DBADC21~28: DABAD CDDY= 3X (X<1) 4X-1 (X=1) 5(X-1)+6 (1<X<5) 6-3X (X ≥5) 输入一个数给x X<=1 Yes no X<1 x<5 Yes no yes no Y=3x y=4x-1 y=5x+1 y=6-3x 输出s 的值 i =100 当i<=200时 n=2; flag=1; 当n< i 时i 能否被n 整除yes no flag=0 n = n+1 flag=1yes no输出i 的值i = i+1二、填空题1.字母L 或字母l2.字符或%c 、整数或%d3.在程序运行过程中,其值可以在一定的范围内变化的量。
C语言(顺序结构程序设计)习题与答案

正确答案:D
16、已知ch是字符型变量,下面正确的赋值语句是( )。
A.ch="\";
B.ch= '\xff';ห้องสมุดไป่ตู้
C.ch= '123';
D.ch= '\08';
正确答案:B
二、判断题
1、每个语句和数据定义的最后都必须有分号。(√)
2、算述运算*、/、+和一具有相同的优先级。(×)
A.0~65535
B.0~2147483647
C.0~32767
D.0~255
正确答案:A
12、已有如下定义和输入语句,若要求a1,a2,c1,c2值分别为10,20,A和B,当从第一列开始输入数据时,正确的数据输入方式是( )。
int a1,a2; char c1,c2;
scanf("%d%c%d%c",&a1,&c1,&a2,&c2);
A.必须在系统调用的库函数的后面
B.必须在最开始
C.可以任意
D.必须在最后
正确答案:C
3、下面四个选项中,均是不合法的浮点数的选项是( )。
A.160.
0.12
e3
B.123
2e4.2
.e5
C.-e3
.234
1e3
D..18
123e4
0.
正确答案:B
4、下面四个选项中,均是合法浮点数的选项是( )。
A.+le+1
5e-9.4
03e2
B.123e
1.2e-.4
+2e-1
c语言程序设计课后习题及答案

c语言程序设计课后习题及答案C语言程序设计是计算机科学与技术专业的核心课程之一,它不仅教授了编程语言的基本知识,还培养了学生的逻辑思维能力和问题解决能力。
课后习题是巩固课堂学习内容的重要手段,以下是一些C语言程序设计的典型课后习题及答案。
习题1:基本数据类型编写一个程序,输入一个整数和一个浮点数,然后输出它们的和。
```c#include <stdio.h>int main() {int a;float b, sum;printf("请输入一个整数:");scanf("%d", &a);printf("请输入一个浮点数:");scanf("%f", &b);sum = a + b;printf("它们的和是:%f\n", sum);return 0;}```习题2:条件语句编写一个程序,根据输入的成绩判断学生的等级。
```c#include <stdio.h>int main() {float score;printf("请输入学生的成绩:");scanf("%f", &score);if (score >= 90) {printf("等级:A\n");} else if (score >= 80) {printf("等级:B\n");} else if (score >= 70) {printf("等级:C\n");} else if (score >= 60) {printf("等级:D\n");} else {printf("等级:F\n");}return 0;}```习题3:循环结构编写一个程序,计算1到100的整数之和。
C语言-第3章 最简单的C程序设计 练习题

第3章最简单的C程序设计—顺序程序设计一、单项选择题1. 不是C语言提供的合法关键字是。
A)switch B)cher C)case D)default2. C语言提供的合法关键字是。
A)next B)string C)do case D)struct3. 下列不属于C语言中关键字的是。
A) long B) print C)default D)typedef4. 下列不正确的标识符是。
A) -a1 B) a[i] C)a2_i D)x5. 下列C语言用户标识符中合法的是。
A)*y B)sum C)int D)%5f6. 下面四个选项中,合法的标识符是。
A)auto B)define C)6a D)c7.下列C语言用户标识符中合法的是。
A)3ax B)x C)case D)-e28. 以下选项中合法的用户标识符是。
A) long B) _2Test C) 3Dmax D) A.dat9.下列四组选项中,正确的C语言标识符是。
A)%x B)a+b C)a123 D)12310. 请选出可用作C语言用户标识符的一组标识符A) void B) a3_b3 C) For D) 2adefine _123-abc DOWORD sum Case sizeof11. 下列四组字符串中都可以用作C语言程序中的标识符的是。
A)print _3d oodb aBc B)I\am one_half start$it 3paiC)str_1 Cpp pow while D)Pxq My->book line# His.age12. 下列C语言标识符中合法的变量名是。
A)2e3 B)you C)*y D)float1-12题解析:参照讲义中知识点--标识符与关键字,13. C语言中的简单数据类型包括。
A)整型、实型、逻辑型B)整型、实型、逻辑型、字符型C)整型、字符型、逻辑型D)整型、实型、字符型13题解析:C语言中没有逻辑型变量14.下列可以正确表示字符型常量的是。
C语言-第3课 最简单的C程序设计 练习题

第3章最简单的C程序设计—顺序程序设计一、单项选择题1. 不是C语言提供的合法关键字是。
A)switch B)cher C)case D)default2. C语言提供的合法关键字是。
A)next B)string C)do case D)struct3. 下列不属于C语言中关键字的是。
A) long B) print C)default D)typedef4. 下列不正确的标识符是。
A) -a1 B) a[i] C)a2_i D)x5. 下列C语言用户标识符中合法的是。
A)*y B)sum C)int D)%5f6. 下面四个选项中,合法的标识符是。
A)auto B)define C)6a D)c7.下列C语言用户标识符中合法的是。
A)3ax B)x C)case D)-e28. 以下选项中合法的用户标识符是。
A) long B) _2Test C) 3Dmax D) A.dat9.下列四组选项中,正确的C语言标识符是。
A)%x B)a+b C)a123 D)12310. 请选出可用作C语言用户标识符的一组标识符A) void B) a3_b3 C) For D) 2adefine _123-abc DOWORD sum Case sizeof11. 下列四组字符串中都可以用作C语言程序中的标识符的是。
A)print _3d oodb aBc B)I\am one_half start$it 3paiC)str_1 Cpp pow while D)Pxq My->book line# His.age12. 下列C语言标识符中合法的变量名是。
A)2e3 B)you C)*y D)float1-12题解析:参照讲义中知识点--标识符与关键字,13. C语言中的简单数据类型包括。
A)整型、实型、逻辑型B)整型、实型、逻辑型、字符型C)整型、字符型、逻辑型D)整型、实型、字符型13题解析:C语言中没有逻辑型变量14.下列可以正确表示字符型常量的是。
C语言程序设计习题集及参考答案

C语言程序设计习题集及参考答案C语言程序设计习题集及参考答案一、简介C语言是一种广泛使用的程序设计语言,它具有高效、灵活和易于维护的特点。
在学习C语言的过程中,通过练习题的方式可以帮助我们加深对语言的理解和应用。
本文将提供一些C语言的练习题,并给出参考答案,以帮助读者巩固所学知识。
二、习题集1、选择题(1) C语言中的基本数据类型包括哪些? A. int, float, char B. int, float, double C. char, float, double D. int, float, boolean (2) 下列哪个标识符是合法的C语言变量名? A. 123 B. _abc C. ab-c D. a bc(3) 下面哪个运算符的优先级最高? A. + B. && C. ++ D. !2、填空题(1) 在C语言中,整数的默认存储类型是____________。
(2) 写出计算a和b的最大值的表达式:max = a ______ b; (3) 写出判断一个数是否为偶数的表达式:num % ______ == 0。
3、编程题(1) 编写一个程序,输出1到10之间的所有奇数和偶数。
(2) 编写一个程序,判断一个整数是否为素数。
如果是素数,输出"Yes",否则输出"No"。
(3) 编写一个程序,输入一个字符串,然后将字符串中的所有字母转换为大写。
三、参考答案1、选择题(1) C语言中的基本数据类型包括int、float和char,因此答案为A。
(2) 在C语言中,合法的标识符不能以数字开头,不能包含特殊字符和空格,因此选项A和C是错误的。
选项B中使用下划线作为变量名的一部分是合法的,因此是正确的选项。
选项D中的a和bc之间没有分隔符,不符合标识符的命名规则,因此也是错误的。
因此,答案为B。
(3) 在C语言中,运算符的优先级从高到低依次为:()、[]、.&、!、++、--、~、* &、+ -、% 、/ %、<< >>、< > <= >= 、== !=、& ^ |、&& ||以及所有的逻辑运算符。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
10. 若右int a=10,b=20,c=30; 则能使a和c的值互换的语句是 ________。 两种方法:(1) 增加一个临时变量t。t=a; a=c; c=t; (2) a=a+c; c=a-c; a=a-c;
三、编程题
1、 编写程序,输出如下信息: ********************************** very good! ********************************** main( ) { printf(" ***************************\n"); printf(" very good! \n"); printf(" ***************************\n"); }
scanf("%f,%f,%f",&a,&b,&c); if((a+b>c)||(a+c>b)||(b+c>a)) */ { s=(a+b+c)/2; area=sqrt(s*(s-a)*(s-b)*(s-c)); 积 */ printf("area=%f\n",area); } }
/* 判断两边之和大于第三边 /*调用开方函数,计算面
第四章习题参考答案
1、 单项选择题(P90)
1、putchar()函数可以向屏幕输出一个( ) A)整形变量值 B)实型变量值 C)字符 D)字符或字符变量值 2、以下选项中不是C语句的是( )。 A){int i;i++;printf("%d\n",i);} B); C)a=5,c=10 D){;} 3、以下合法的C语句是( )。 A){a=b}; B)k=int(a+b); C)k=a+b=c; D)—i; 4、执行以下程序段后,c3的值是( )。 int c1=1,c2=2,c3; c3=c1/c2; A)0 B)1/2 C)0.5 D)1 5、若int a,b,c;则为它们输入数据的正确的语句是( )。 A)read(a,b,c); B)scanf("%d%d%d",a,b,c); C)scanf("%D%D%D",&a,&b,&c); D)scanf("%d%d%d",&a,&b,&c); 6、若float a,b,c; 要通过语句:scanf("%f %f %f",&a,&b,&c); 分别 为a,b,c输入10,22,23。以下不正确的输入形式是( )。 A)10 B)10.0,22.0,33.0 C)10.0 D)10 22 22 22.0 33.0 33 33 7、若在键盘上输入:283.1900,想使单精度实型变量c的值为283.19, 则正确的输入语句是( )。 A)scanf("%f",&c); B)scanf("8.4f",&c); C)scanf("%6.2f",&c); D)scanf("8f",&c); 8、执行语句:printf("|%10.5f|\n"12345.678;的输出是( )。 A)|2345.67800| B)|12345.6780| C)|12345.67800| D)|12345.678| 9、若右以下程序段,其输出结果是( )。 int a=0,b=0,c=0; c=(a-=a-5),(a=b,b+3); printf("%d,%d,%d\n",a,b,c); A)3,0,-10 B)0,0,5 C)-10,3,-10 D)3,0,3 10、若a为int类型,且a=125,执行下拉语句后的输出是( )。 printf("%d,%o,%x\n",a,z+1,a+2); A)125,175,7D B)125,176,7f C)125,176,7D
2、编些程序,输入9时23分并把它化成分钟后输出。(从零点开始计 算) main( ) { int hour,min; scanf("%d,%d",&hour,&min); min=60*hour+min; printf("%d\n",min); } 3、 编写程序,分别转换摄氏温度-10℃,0℃,15℃,34℃为华氏 温度,摄氏温度与华氏温度满足下列关系式(C表示摄氏温度, F表示华氏温度) C=(5/9)(f-32) main( ) { float c , f; scanf("%f",&c); f=32+9.0*c/5; printf("%f\n",f); } 按题目要求分别输入-10,0,15和34计算相应的华氏温度。 4、设圆半径为5,编写成,求圆的周长和圆面积。 main() { float r,l,s; scanf("%f",&r); l=2*3.141592*r; s=3.14159*r*r; printf("r=%f, l=%f, s=%f\n",r,l,s); } 5、编写程序,输入三角形的3个边长A、B、C,求三角形的面积搜索。 公式为: 其中,s=(a+b+c)/2 #include<math.h> main( ) { float a,b,c,s,area;
其中,3个数**依次表示a,b,c的值,**.** 表示a,b,c的平均值 main( ) { float a,b,c,aver; printf(“Please input three numbers:\n”); scanf("%f,%f,%f",&a,&b,&c); aver=(a+b+c)/3; printf("average of %5.2f,%5.2f and %5.2f is %5.2f",a,b,c,aver); } 9、执行下列程序,按制定方式输入(□表示空格),能否得到指定的输出 结果?若不能,请修改程序,使之能得到指定的输出结果。 输出:2□3□4 输出:a=2,b=3,c=4 x=6,y=24 main( ) { int a,b,c ,x,y; scanf("%d %d %d",&a,&b,&c); x=a*b;y=x*c; printf("a=%d,b=%d,c=%d\n",a,b,c); printf("x=%d,y=%d\n",x,y); }
6、设a=3,b=4,c=5,d=1.2,e=2.23,f=-43.56,编写程序,使程序输出: a=□□3,b=4□□□□,c=**5 d=1.2 e=□□2.23 f=-43.56□□** main( ) { int a=3,b=4,c=5; float d=1.2,e=2.23,f=-43.56; printf("a=%3d,b=%-4d,c=**%d\n",a,b,c); printf("d=%3.1f\ne=%6.2f\nf=%-10.4f**",d,e,f); } 7、编写程序,读入3个整数给a,b,c,然后交换它们中的数,使a存放b 的值,b存放c的值,c存放a的值。 main( ) { int a,b,c,t ; scanf("%d,%d,%d",&a,&b,&c); printf("a=%d,b=%d,c=%d\n",a,b,c); t=a; a=b; b=c; c=t; printf("a=%d,b=%d,c=%d\n",a,b,c); } 8、编写程序输入3个数a,b,c,求它们的平均值,并安如下形式输出: average of **、** and ** is **.**
a=b=c=0; c=(a-=a-3,a=b,b+3); printf("%d,%d,%d\n",a,b,c); 7.下面程序的输出结果是________。(3) main() {int x=10,y=3,z; printf("%d\n",z=(x%y,x/y)); } 8.若double a,b,c; 要求为a、b、c分别输入10、20、30。输入序列为:(□表示空格) □ 10.0□□20.0□□30.0 则正确的输入语句是_____________。(输入语句的格式是: scanf(" %lf %lf %lf");) 9.下面程序的输出结果是__________。(13 13.000000 main() {double a;float b;int c; c=b=a=40/3; printf("%d %f %f\n",c,b,a); } 13.000000)
D)125,175,2F
二、
填空题
1.{a=3; c+=a-b;}在语法上被认为是________条语句,空语句的形式是 ______。 (一条 ;) 2.若float x; 以下程序段的输出结果是__________。(5.169000) 3.以下程序段中输出语句执行后的结果依次是___________、 __________、__________。 (1)-200 2500 (2)i=-200,j=2500 (3)i=-200 j=2500 int i=-200,j=2500; printf("(1)%d %d",i,j); printf("(2)i=%d,j=%d\n",i,j); printf("(3)i=%d\nj=%d\n",i,j); 4.当运行以下程序时,在键盘上从第一列开始输入9876543210<cr>(此 处<cr>代表按回车键),则程序的输出结果是__________。(a=98, b=765.000000, c=4321.000000) main() {int a; float b,c; scanf("%2d%3f%4f",&a,&b,&c); printf("\na=%d,b=%f,c=%f\n",a,b,c); } 5.以下程序段要求通过scanf函数给变量赋制,然后输出变量的值。 写出运行时给k输入100,给a输入25.81,给x输入1.89234时的三种 可能输入形式__________、__________和__________。 int k; float a;double x; scanf("%d%f%lf"),&k,&a,&x); printf("k=%d,a=%f,x=%f\n",k,a,x); 三种可能的输入是: (1) (1) 100<回车> 25.81<回车> 1.89234<回车> (2) (2) 100<空格> 25.81<空格> 1.89234<回车> (3) (3) 100<TAB> 25.81<TAB> 1.89234<回车> 6.执行下列程序段后,输出结果是__________。(0,0,3) int a,b,c;