《2022年高升专课程复习资料-计算机应用技术-程序设计基础-C语言习题.docx》由会员分享,可在线阅读,更多相关《2022年高升专课程复习资料-计算机应用技术-程序设计基础-C语言习题.docx(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选学习资料 - - - - - - - - - 第一章 概述作业:练习:教材 P5:题、题 2、3其次章 基本的程序语句作业:一、填空 题至二、挑选 题 2.23 三、编程题要求: 全部编程题须上机调试通过,源程序及运行结果用作业本上交;源程序要求按缩格形式书写,文字端正整齐;不合格者退回重做;编写一个程序, 从键盘输入任意一个五位数,把这个数值分解为单个数字,然后打印出每一个数字每个数字之间用三个空格分开;例如用户输入了 42339,屏幕输出结果为:4 2 3 3 9 【 提示 】奇妙使用 / 和 % 两种运算符 ;第一部分大作业:一填空1. C 程序都是从 函数开头执行;2. C 程序的
2、语句都是用 终止;3. 用来在屏幕上显示信息的库函数是;4. 用来从键盘读取数据的库函数是;5. C 程序中 用来提高程序的可读性;6. 假设 x和n均是 int型变量,且 x和 n的初值均为 5,就运算表达式:x=n后, x的值为,n的值为;7. 假设有定义: int b=7; float a=2.5,c=4.7; 就以下表达式的值为;a+intb/3*inta+c/2%4 8. 假设 a是int型变量,且 a=6 ,就运算表达式 a+=a-=a*a 后, a的值为;9. 假设全部变量均为整型,就表达式 a=2,b=5,a+,b+,a+b 的值为;10. 判定 char 型变量 c1是否为小
3、写字母的正确表达式是;A a=c1=a&c1=c1|z=a&c1=z 11.以下程序的运行结果是;main int a=3, b=2, c=1, k=4; 名师归纳总结 - - - - - - -第 1 页,共 15 页精选学习资料 - - - - - - - - - printf%dn, ka. k:c0 t=a; B ifa=b0 t=a; C ifab; D ifab a+; b+ 16 在 C语言中,不同类型数据混合运算,要先转换成同一类型后再进行运算;设一表达式中包含 int、long 、insigned 、 char 类型的变量和数据,就表达式最终的运算结果是 类型数据;Aint
4、B long Cinsigned Dchar 17 以下选项中非法的表达式是 A0=x&x=0 b=0&a0 b=0&b=0&a0&b0&a+b0 二、运算题1、设整型变量 x为5,y为2;以下表达式的值各为多少?1 ! y = = x / 2 2 y . = x % 3 3 x 0 & y = y 2、设单精度型变量 f、g均为 5.0 , 执行以下表达式后,f的值为多少?1 f + = g 2 f - = g + 5 3 f* = g 15 4 f / = g * 10 3、执行表达式 x = a = 3 , b = a - - 后, x , a , b 的值各为多少?4、设实型变量 f1
5、、f2 、f3、f4的值均为 .,整型变量 m1 、 m2的值均为名师归纳总结 表达式 m1 = = f1 = f2 & m2 = = f3 f4 的值是多少?第 2 页,共 15 页5、设单精度型变量f的值为,执行表达式“ n = int f % 3 ”后, n的值是多少?6、设 i 、j 初值分别为 3和4,就执行 j+=i-=1;后 i,j的值为多少?- - - - - - -精选学习资料 - - - - - - - - - 7 、请给出以下程序的输出结果;main int a=-1, b=4, k; k=.+a0&.b-=0; printf%d%d%dn, k, a, b; 8、请给出
6、下面程序的输出结果;# include “ stdio.h”main int a ,b,d=241; a=d/100%9; b=-1&-1; printf%d,%dn,a,b; 9、请给出下面程序的输出结果;#include main int m,n,x,y,z ;n=inta+intb; m=x=a+b,n+10; y=x*=2+3; z=y-; printf%d %d %d %d %dn,m,n,x,y,z; 10 、有程序 int b=6,d=5; +d=b- ?d+ : b - - 执行后 b,d的值是多少?名师归纳总结 - - - - - - -第 3 页,共 15 页精选学习资料
7、- - - - - - - - - 第三章 程序的简洁算法制定作业 教材p34 :一、填空 题二、挑选 题三、编程题:1 输入三角形三边 , 求三角形面积;2 输入一个大写字母 , 要求变成小写字母输出;写出算法,画出相应的流程图、N-S图第四章 分支结构作业:一、填空 题4.1 题二、挑选 题4.12 题三、编程 题、补充编程题用支结构语句编程1、从键盘输入三角形的三边长,判定出这三边能否构成三角形2、从键盘上输入数字星期,在屏幕上显示英文星期;第五章 循环结构作业:一、填空 题、二、挑选 题、三、编程 题、补充 1、 分别统计输入的字符串中字母、数字和其它字符的个数;第六章 函数作业:名师
8、归纳总结 一、挑选题、第 4 页,共 15 页二、判定题- - - - - - -精选学习资料 - - - - - - - - - 三、填空 题四、阅读程序、写出程序运行结果五、程序填空六、编程 题、题、题补充编程题:1、写一个判素数的函数,在主函数输入一个整数,输出是否素数的信息;2、函数,由实参传来一个字符串,统计该字符串中的字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述结果;其次部分大作业:一、单项挑选题1、在 C语言中,不正确的实型常量是;AB-.123 C-1 .23e-1 D-0.1232、在 C语言中,正确的字符常量是;A 字B x41C” A” D” ABC
9、”3、假设变量已正确定义并赋值,下面符合 C语言语法的表达式是A a:=b+1 B a=b=c+2 C int 18.5%3 D a=a+7=c+b 4、结构化程序设计所规定的三种基本掌握结构是 _. A 输入、处理、输出 B 树形、网形、环形C 次序、挑选、循环 D 主程序、子程序、函数5、循环语句的循环体中执行 continue 语句,其作用是;A立刻终止程序执行B 连续执行 continue 语句之后的循环体各语句C 终止本次循环D 跳出循环;_;6、假设定义 int i; 就以下循环语句的循环执行次数是fori=2; i=0; printf%d, i-; D 2 次A 无限次B 0 次
10、C 1 次7、假设有定义 int t=0; 就语句 while 1 if t+=100 break; 的循环次数是 _ A0 B1 C100D无限次8、以下程序的运行结果是;#include main double t; printf%3.1lfn,t=1,t+5,+t; A7.0 B6.0 CD9、假设有以下程序段,I nt c1=1,c2=2,c3; c3=1.0/c2*c1; 名师归纳总结 就执行后, c3中的值是 _;第 5 页,共 15 页- - - - - - -精选学习资料 - - - - - - - - - A 0 B 0.5 C 1 D 2 10 、以下程序的运行结果是;ma
11、in int num=13579,c; do printf “%d ”, num%10; whilenum/=100; printf “n”; A 13579 B7531 C 3579 D 97531 ;11 、以下程序运行结果是;main int x=1,y=2,z; z=xy.+x:+y; printf%d,%d,%dn,x,y,z; _ A 1,2,3 B 1,3,3 C 2,3,3 D 2,2,3 12 、假设定义 float a ;现要从键盘输入a的数据,其整数位为3位,小数位为 2位,就选用;Ascanf “ %f” ,&a; B scanf“ %” ,a; C scanf“ %”
12、 ,&a; D scanf“ %f” ,a;13 、设有説明语句:inta=2,b=7,c=5 ;就执行以下语句后,输出为_switch a0 case 1: switch b0 return 1; else return 1; A没有指出返回值类型B函数名是 C语言的关键字名师归纳总结 C形参变量没有定义D函数体中多次显现了return 语句第 6 页,共 15 页15 、以下程序运行结果是;#define N 3 #define M N+1 #define NUM M+1*M/3 main - - - - - - -精选学习资料 - - - - - - - - - int i,n=0; n
13、+; fori=0;iNUM;i+ printf%dn,n; A 7 B8 C15D 6 二、改错题1、老师要求同学编写一个程序,功能是:当x等于 2且-10 y10时,输出 ” z=1”,暂停后,结束程序运行,否就输出” z=0”;x和y值由键盘输入;现有某同学编写程序如下,有诸多错误和不当之处,请你代替老师为他修改程序;void main int x,y,z; scanfx=%d,%3.2d,x,y; printf 请输入 x,y 值: ; if x=2&-10 y 10 printf“ z=1” 的值,并显示出来;要求n 从键盘输入;getche; else printf“ z=0” ;
14、return; 2、以下程序用于运算n=50 时sum=1+1/2+1/4+.+1/n请找出程序中的各处错误,并改正之;#include main break; int i,sum,n; n=50; while1 if n%2 ; For i=1;i=n; i+=2 sum+=1/n; 三、程序分析题名师归纳总结 1、设以程序段中的变量都是int类型,就输出的结果是;第 7 页,共 15 页sum=pad=5; pAd=sum+,pAd+,+pAd; printf“ %d n” ,pad;2、以下程序的运行结果是;main int a,b,c; a=b=c=1; if a+|+b c+; pr
15、intf%d,%d,%dn,a,b,c; 3、以下程序的运行结果是;main int c; while c=getchar.=n switch c-2 case 0: case 1: putcharc+4; case 2: putcharc+4;break; - - - - - - -精选学习资料 - - - - - - - - - case 3: putcharc+3; default:putcharc+2;break; printfn; 输入: 742,程序的输出结果是;4、以下程序的输出结果是;#include stdio.h #define SUMy 2+y main int x=5;
16、 printf%dn,SUM3*x%5; 5、以下程序的输出结果是;funcint a static int m=0; m+=a*2; return m; main int k=6,p; p=funck; printf%d,p; p=funck; printf%dn,p; 四、请编程序求解问题:有假设干只鸡和兔在同一个笼子里,从上面数,有三十五个头;从下面数,有九十四只脚;求笼中各有几只鸡和兔?20分第七章 多维数组书面作业教材 p161一、挑选 题二、判定 题三、填空 题四、阅读程序、五、程序填空 题六、编程 题、提交作业:编程1. 已有一个已按从小到大排好序的整型数组,今输入一 它插入数组
17、中;个整数,要求按原先排序的规律将2. 将一个数组中的值按逆序重新存放;例如,原先次序为8, 6,5,4,1;要求改为1,4,5,6,8 ;名师归纳总结 - - - - - - -第 8 页,共 15 页精选学习资料 - - - - - - - - - 3. 求以下两个矩阵之和即对应元素之和;1 2 3 4 1 3 5 7 5 6 7 8 9 11 13 15 9 10 11 12 17 19 21 23 4. 打印出以下的杨辉三角形要求打印10行;1 1 1 1 2 1 1 1 1 3 3 1 4 6 3 1 1 5 10 10 5 书面作业:第八章 指针一、挑选题题二、判定题题三、填空题、
18、题、题、题、题四、阅读程序题、题五、程序填空题、题六、编程题、题 补充编程题:1. 编一个程序,输入 15个整数存入一维数组,再按逆序重新存放后再输出;2. 输入一个一维实型数组,输出其中的最大值、最小值和平均值;3. 输入一个 3 6的二维整型数组,输出其中最大值、最小值及其所在的行列下标;九章 构造数据类型 作业:一、挑选 题题 二、判定 题题 三、填空 题题 四、阅读程序 题、题 五、程序填空 题 六、编程 题 补充编程题:名师归纳总结 3. 用结构体存放下表中的数据,然后输出每人的和实发数基本工资+ 浮开工资 支出;第 9 页,共 15 页- - - - - - -精选学习资料 - -
19、 - - - - - - - 基本工资浮开工资支出Zhao qian sun 9. 编一个程序,输入10 个职工的标号、 、基本工资、职务工资,求出其中“基本工资职务工资 ”最少的职工并输出;10. 编一个程序,输出作业:10个同学的学号、 、门课程的成果,求出总分最高的同学并输出;第十章 文件一、挑选题二、判定题三、填空题 30 四、程序填空题、五、编程题补充作业:1. 编一个程序,从键盘输入200个字符,存入名为“ f1.t”的磁盘文件中;2. 从上一题中建立的名为的磁盘文件中读取120个字符,并显示在屏幕上;3. 输入 100个同学的信息含学号、年龄、 7科成果、总分 ,统计全部同学的总
20、分,然后存入磁盘二进制数据文件中;然后再读取该文件,查找总分最高的同学并输出该生的全部信息;第三部分大作业:1 单项挑选题1、在 C语言程序设计中引用数据元素时,其数组下标的数据类型答应是 _ ;A 字符常量 B 浮点型常量C 整型常量或整型表达式 D 任何类型的表达式2、当调用函数时,实参是一个数组名,就向函数传送的是 _ ;A 数组的长度 B 数组的首地址C 数组每一个元素的地址 3、设有以下说明语句 struct ex D 数组每个元素中的值 int x ; float y; char z ; example; 就下面的表达中不正确的选项是 _- ;A struct 结构体类型的关键字B
21、 example 是结构体类型名名师归纳总结 - - - - - - -第 10 页,共 15 页精选学习资料 - - - - - - - - - C x,y,z 都是结构体成员名D struct ex 是结构体类型4、以下表达中错误的选项是 _ ;A 二进制文件打开后可以先读文件的末尾,而次序文件不行以B 在程序终止时,应当用fclose 函数关闭已打开的文件C 利用 fread 函数从二进制文件中读数据,可以用数组名给数组中全部元素读入数据 D 不行以用 FILE 定义指向二进制文件的文件指针5、以下各语句中,字符串“abcde”能正确赋值的操作是;“ %s” ,&s;A char s5=
22、a, b, c, d, B char *s;s=” abcde” ;C char *s;getss; D char s6;scanf6、已知: char s20=language, *ps=s; 就不能引用字母n的表达式是 _;A ps+2 Bs2 Cps2 Dps+=2, *ps 7、下面程序的输出结果是_ ;main int a =1,2,3,4,5,6,7,8,9,0,*p; p=a; printf “%dn ”,*p+9; C 10 D9 BA 0 B 1 8、已知: int a, x; 就正确的赋值语句是_;A a=a1+a2/2 a*=*a+1; C a=x=1, x+, x+2;
23、 _;D a=good; 9、对于下述定义,不正确的表达是union data int i; char c; float f; a, b; A 变量 a所占内存的长度等于成员 f的长度B变量 a的地址和它的各成员地址都是相同的C可以在定义时对 a初始化D不能对变量 a赋值,故 a=b非法10 、假设有以下定义和语句int a=4,b=3,*p,*q,*w;p=&a; q=&b; w=q; q=NULL; 就以下语句中错误的选项是 _ ;A *q=0; B w=p; C *p=a; D *p=*w; 11、假设有以下定义:int x43=1, 2, 3, 4, 5, 6, 7, 8, 9, 10
24、, 11, 12; int *p3=x; 就能够正确表示数组元素a12 的表达式为;D *p+1+2 A *p+1+2 B *p+12 C *p+5 12 、假设有语句名师归纳总结 - - - - - - -第 11 页,共 15 页精选学习资料 - - - - - - - - - char s1=string1, s28, *s3, *s4=string2; 就 是对库函数 strcpy 的错误调用;A strcpys1, string1; B strcpys4, string2; C strcpystring2, s2; D strcpys3, string1; 13 、以下程序的输出结果
25、是 _. ,main char st20= “”; printf%d %d n”,strlenst,sizeofst; A 9 9 B 5 20 C 13 20 D 20 20 14 、有以下程序 #include mainint argc,char *argv int i,len=0; len+=strlenargv; fori=1;iargc;i+ printf%dn,len; 程序编译连接后生成的可执行文件是,假设运行时输入带参数的命令行是:ex1 abcd efg 10 C 12 就运行的结果是_ ;B 17 A 22 D 9 名师归纳总结 15 、执行下面的语句后,输出结果为_;B
26、3 第 12 页,共 15 页enum weeksun,mon=3,tue,wed,thu ;enum weekday wday ;wday=wed ;printf“ %d n” ,wday ;A 5 C 4 D 编译是出错02判定题3有说明: static int a34;,就数组 a中各数组元素可在程序的编译阶段得到初值;4假设用数组名作为函数调用时的实参,就实际上传递给形参数组的是数组的第一个元素的值;3、结构体的成员可以作为变量使用;- - - - - - -精选学习资料 - - - - - - - - - 4、共用体变量的地址和它的各成员的地址都是同一地址;5、C语言规定只能逐个引用
27、数值数组的元素而不能一次引用整个数组;6、使用结构体 struct 的目的是将一组数据作为一个整体,以便于其中的成员共享同一空间7、C语言中,枚元素表中的元素又先后次序,可以进行比较;8、语句 y=*p+; 和 *p+; 是等价;9、假如一个字符数组中包含多个终止符 0 , 输出时遇到第一个 0 字符串输出就终止;10、假设有说明:int a34=0;,就数组 a中每个元素均可得到初值 0;三、 填空题1、有如下程序 main ; char ch25=“ 6937” , ” 8254” ,*p2; int i,j,s=0; fori=0;i2;i+ pi=chi; fori=0;i0;j+=2
28、 s=10*s+pij-0printf“ %d n” ,s; 该程序的输出结果是【】;2、以下程序的输出结果是【】union myun struct int x, y, z; u; int k; a; main a.u.x=4; a.u.y=5; a.u.z=6; a.k=0; printf%dn ”,a.u.x; 9下程序功能是当输入同学序号以数组一维下标加1作为同学序号后,能输出该同学的全部成果共有三位同学,每位同学有4门成果;#include main float score4=60,70,80,90,56,89,67,88,34,78,90,66; float *p4; int n,i
29、; p= 【】; printfn 请输入同学的序号:; scanf%d,&n; printf 序号为 %d 的同学成果是 :,n; for i=0;i4;i+ 名师归纳总结 printf%, 【】; /*用p引用 score 的元素值 */ 第 13 页,共 15 页 - - - - - - -精选学习资料 - - - - - - - - - 4、面程序的功能是从键盘输入 10个整数,去掉一个最大数和一个最小数,然后求剩下的 8个数的平均值,请填空;#include “ stdio.h”void main int t,a10,max,min; float aver; fort=0;t10;t+
30、 scanf “ %d” ,&at;aver=min=max=a0; fort=1;tat 【】; aver=aver+at; aver=aver-max-min; aver=aver/8.0; printf“ Aver=% n” ,aver;5、从键盘输入 :100 回车 ,以下程序运行结果是【】;main int a=45,23,54,87,51,89; int k,m; scanf%d,&m; fork=5;k=0&ak.=m;k- printf%dn,k; 6、以下程序是用来输出如以下图形:请写出三个下线划处应填上的有关内容,使本程序得以完整;#include main int i, j; fori=1; i=5; i+ forj=1; j= 【】 ; j+ printf; forj=1; j=2 * i-1; j+ if 【】 printf *; else printf#; 名师归纳总结 【】 ;第 14 页,共 15 页- - - - - - -精选学习资料 - - - - - - - - - 四、编程题1求以下算式中,庆、祝、六、一各代表什么数字?其中用变量 q,z,l,y 分别代表庆,祝,六,一;名师归纳总结 - - - - - - -第 15 页,共 15 页