版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章概述作业:练习:教材P5:题、题2、3第二章基本的程序语句作业:一、填空题至二、选择题2.23三、编程题要求:所有编程题须上机调试通过,源程序及运行结果用作业本上交。源程序要求按缩格形式书写,文字端正整齐。不合格者退回重做。编写一个程序,从键盘输入任意一个五位数,把这个数值分解为单个数字,然后打印出每一个数字每个数字之间用三个空格分开。例如用户输入了42339,屏幕输出结果为:42339【提示】巧妙使用/和两种运算符。第一部分大作业:一填空1 .C程序都是从函数开始执行。2 .C程序的语句都是用结束。3 .用来在屏幕上显示信息的库函数是。4 .用来从键盘读取数据的库函数是。5 .C程序中
2、用来提高程序的可读性。6 .假设x和n均是int型变量,且x和n的初值均为5,则计算表达式:x+=n+后,x的值为,n的值为。7 .假设有定义:intb=7;floata=2.5,c=4.7;则以下表达式的值为。a+(int)(b/3*(int)(a+c)/2)%48 .假设a是int型变量,且a=6,则计算表达式a+=a-=a*a后,a的值为。9 .假设所有变量均为整型,则表达式(a=2,b=5,a+,b+,a+b)的值为。10 .判断char型变量c1是否为小写字母的正确表达式是。A)'a'<=c1<='z'B)(c1>=a)&&a
3、mp;(c1<=z)C)('a'>=c1)|('z'<=c1)D)(c1>='a')&&(c1<='z')11 .以下程序的运行结果是。main()inta=3,b=2,c=1,k=4;printf("%dn",k<a?k:c<b?c:a);A)4B)3C)2D)112 .已知字符'A'的ASCII码值是65,且charc1='A',c2='D'则执行语句printf("%d,%dn",
4、c1,c2-2);后的输出结果是A)子程序B)过程C)函数14.不止确的字符串常量是oA) 'abc'B) "12'12"C) "0"15 .以卜不止确的语句为oA) if(a=b;)>0) t=a;B) if(a=b)>0) t=a;A) A,DB) A,BC) 65,68语言程序是由 组成的。C) if(a>b);D) 65,66D)主程序和子程序D)""D) if(a<b) a+; b+16 .在C语言中,不同类型数据混合运算,要先转换成同一类型后再进行运算。设一表达式中包含int
5、、long、insigned、char类型的变量和数据,则表达式最后的运算结果是(类型数据。AintBlongCinsignedDchar17 .以下选项中非法的表达式是()A0<=x&&x<100Bi=j=0C(char)(65+3)Dx+1=x+118 .执行语句x=a=3,b=a-;之后,a,b,x的值依次为A3,2,3B2,2,3C2,3,3D3,2,219 .以下程序运行后的输出结果是。maincharm;m='B'+32;printf"cn",m;ABCbD20 .能正确表示a和b同时为正或同时为负的逻辑表达式是()A
6、) (a>=0 II b>=0)&&(a<0 II b<0)B) (a>=0&&b>=0)&&(a<0&&b<0)C) (a+b>0)&&(a+b<=0)D) a*b>0二、计算题1、设整型变量x为5,y为2。以下表达式的值各为多少?1!y=x/22)y!=x%33)x>0&&y<04)x!=y|x>=y2、设单精度型变量f、g均为5.0,执行以下表达式后,f的值为多少?1f+=g2)f-=g+53)f*=g-154
7、)f/=g*103、执行表达式x=(a=3,b=a-)后,x,a,b的值各为多少?4、设实型变量f1、f2、f3、f4的值均为2.0,整型变量m1、m2的值均为表达式m1=f1>=f2&&(m2=f3<f4)的值是多少?5、设单精度型变量f的值为,执行表达式“n=(int)f)%3"后,n的值是多少?6、设i、j初值分别为3和4,则执行j+=i-=1;后i,j的值为多少?7、请给出以下程序的输出结果。main()inta=-1,b=4,k;k=!(+a<0)&&!(b-<=0);printf("%d%d%dn”,k,a
8、,b);8、请给出下面程序的输出结果。#include“stdio.h"main()inta,b,d=241;a=d/100%9;b=(-1)&&(-1);printf("%d,%dn”,a,b);9、请给出下面程序的输出结果。#include<stdio.h>main()intm,n,x,y,z;;n=(int)a+(int)b;m=(x=a+b,n+10);y=x*=2+3;z=y-;printf("%d%d%d%d%dn",m,n,x,y,z);10、有程序intb=6,d=5;(+d=b-)?d+:b-执行后b,d的值
9、是多少?第三章程序的简单算法制定作业(教材p34):一、填空题二、选择题三、编程题:1输入三角形三边,求三角形面积。2输入一个大写字母,要求变成小写字母输出。写出算法,画出相应的流程图、N-S图第四章分支结构作业:一、填空题4.1题二、选择题4.12题三、编程题、补充编程题用支结构语句编程1、从键盘输入三角形的三边长,判断出这三边能否构成三角形2、从键盘上输入数字星期,在屏幕上显示英文星期。第五章循环结构作业:一、填空题、二、选择题、三、编程题、补充1、分别统计输入的字符串中字母、数字和其它字符的个数。第六章函数作业:一、选择题、二、判断题三、填空题四、阅读程序、写出程序运行结果五、程序填空六
10、、编程题、题、题补充编程题:1、写一个判素数的函数,在主函数输入一个整数,输出是否素数的信息。2、函数,由实参传来一个字符串,统计该字符串中的字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述结果。第二部分大作业:一、单项选择题1、在C语言中,不正确的实型常量是。AB-.123C-1.23e-1D-0.1232、在C语言中,正确的字符常量是。A'字'B'x41'C”A"D”ABC3、假设变量已正确定义并赋值,下面符合笊言语法的表达式是A)a:=b+1B)a=b=c+2C)int18.5%3D)a=a+7=c+b4、结构化程序设计所规定的
11、三种基本控制结构是.A)输入、处理、输出B)树形、网形、环形C)顺序、选择、循环D)主程序、子程序、函数5、循环语句的循环体中执行continue语句,其作用是。A立即终止程序执行B)继续执行continue语句之后的循环体各语句C)结束本次循环D)跳出循环6、假设定义inti;则以下循环语句的循环执行次数是。for(i=2;i=0;)printf("%d",i-);A)无限次B)0次C)1次D)2次7、假设有定义intt=0;则语句while(1)if(t+=100)break;的循环次数是A0B1C100D无限次8、以下程序的运行结果是#include<stdio
12、.h>main()doublet;printf("%3.1lfn",(t=1,t+5,+t);A7.0B6.0CD9、假设有以下程序段,Intc1=1,c2=2,c3;c3=1.0/c2*c1;则执行后,c3中的值是。A)0B)0.5C)1D)210、以下程序的运行结果是。main()intnum=13579,c;doprintf(%d”,num%10);while(num/=10)>0);printf(W);A13579B7531C3579D)9753111、以下程序运行结果是。main()intx=1,y=2,z;z=x>y?+x:+y;printf(
13、"%d,%d,%dn",x,y,z);_A)1,2,3B)1,3,3C)2,3,3D)2,2,312、假设定义floata;现要从键盘输入a的数据,其整数位为3位,小数位为2位,则选用。Ascanf("%f",&a);B)scanf("%',a);C)scanf("%,&a);D)scanf("%f",a);13、设有脱明语句:inta=2,b=7,c=5;则执行以下语句后,输出为。switch(a>0)case1:switch(b<0)case0:printf("&q
14、uot;);break;case1:printf("!");break;Case0:switch(c=5)case0:printf("*");break;case1:printf("#");break;default:printf("$");break;default:printf("&");A)#&B)#&C)*&D)$&14、下用户自定义函数中,存在的语法错误是。sign(int)if(a=0)return0;elseifa>0)return1;
15、elsereturn-1;A没有指出返回值类型B函数名是C语言的关键字C形参变量没有定义D函数体中多次出现了return语句15、以下程序运行结果是。#defineN3#defineMN+1#defineNUM(M+1)*M/3main()inti,n=0;for(i=0;i<NUM;i+)n+;printf("%dn",n);A7B8C15D)6二、改错题1、老师要求学生编写一个程序,功能是:当X等于2且-10WyWl0时,输出"z=1,"暂停后,结束程序运行,否则输出”z=0:'x和y值由键盘输入。现有某学生编写程序如下,有诸多错误和不
16、当之处,请你代替老师为他修改程序。voidmain()intx,y,z;scanf("x=%d,%3.2d",x,y);printf("请输入x,y值:");if(x=2&&-10<y<10)printf(“z=1”)getche();elseprintf("z=0");return;2、以下程序用于计算n=50时sum=1+1/2+1/4+1/n的值,并显示出来。要求n从键盘输入。请找出程序中的各处错误,并改正之。#include<stdio.h>main()inti,sum,n;n=50;w
17、hile(1)if(n%2);break;For(i=1;i<=n;i+=2)sum+=1/n;三、程序分析题1、设以程序段中的变量都是int类型,则输出的结果是。sum=pad=5;pAd=sum+,pAd+,+pAd;printf("%d,pad);2、以下程序的运行结果是。main()inta,b,c;a=b=c=1;if(a+|+b)c+;printf("%d,%d,%dn",a,b,c);3、以下程序的运行结果是。main()intc;while(c=getchar()!='n')switch(c-'2')case0
18、:case 1: putchar(c+4);case 2: putchar(c+4);break;case 3: putchar(c+3);default:putchar(c+2);break;printf("n");输入:742回车,程序的输出结果是。4、以下程序的输出结果是。#include"stdio.h"#defineSUM(y)2+ymain() intx=5;printf("%dn",SUM(3)*x%5);5、以下程序的输出结果是。func(inta) staticintm=0;m+=a*2;returnm;main()
19、 intk=6,p;p=func(k);printf("%d,",p);p=func(k);printf("%dn",p);四、请编程序求解问题:有假设干只鸡和兔在同一个笼子里,从上面数,有三十五个头;从下面数,有九十四只脚。求笼中各有几只鸡和兔?20分第七章多维数组书面作业教材p161一、选择题一二、判断题三、填空题四、阅读程序、五、程序填空题六、编程题、提交作业:编程1 .已有一个已按从小到大排好序的整型数组,今输入一个整数,要求按原来排序的规律将它插入数组中。2 .将一个数组中的值按逆序重新存放。例如,原来顺序为8,6,5,4,1;要求改为1,4,
20、3 .求以下两个矩阵之和即对应元素之和12341357567891113159101112171921234 .打印出以下的杨辉三角形要求打印10行。11112113311463115101051第八章指针书面作业:一、选择题题二、判断题题三、填空题、题、题、题、题四、阅读程序题、题五、程序填空题、题六、编程题、题补充编程题:1. 编一个程序,输入15个整数存入一维数组,再按逆序重新存放后再输出。2. 输入一个一维实型数组,输出其中的最大值、最小值和平均值。3. 输入一个3X6的二维整型数组,输出其中最大值、最小值及其所在的行列下标。九章构造数据类型作业:一、选择题题二、判断题题三、填空题题四
21、、阅读程序题、题五、程序填空题六、编程题补充编程题:3.用结构体存放下表中的数据,然后输出每人的和实发数基本工资+浮开工资-支出。基本工资浮开工资支出Zhaoqiansun9 .编一个程序,输入10个职工的标号、基本工资、职务工资,求出其中基本工资+职务工资”最少的职工并输出。10 .编一个程序,输出10个学生的学号、3门课程的成绩,求出总分最高的学生并输出。第十章文件作业:一、选择题一二、判断题三、填空题-30四、程序填空题、五、编程题补充作业:1 .编一个程序,从键盘输入200个字符,存入名为fl.t”的磁盘文件中。2 .从上一题中建立的名为的磁盘文件中读取120个字符,并显示在屏幕上。3
22、.输入100个学生的信息含学号、年龄、7科成绩、总分,统计所有学生的总分,然后存入磁盘二进制数据文件中。然后再读取该文件,寻找总分最高的学生并输出该生的所有信息。第三部分大作业:1单项选择题1、在C语言程序设计中引用数据元素时,其数组下标的数据类型允许是。A)字符常量B)浮点型常量C)整型常量或整型表达式D)任何类型的表达式2、当调用函数时,实参是一个数组名,则向函数传送的是。A)数组的长度B)数组的首地址C)数组每一个元素的地址D)数组每个元素中的值3、设有以下说明语句structexintx;floaty;charz;example;则下面的表达中不正确的选项是-。A)struct结构体类
23、型的关键字B)example是结构体类型名C)x,y,z都是结构体成员名D)structex是结构体类型4、以下表达中错误的选项是。A)二进制文件打开后可以先读文件的末尾,而顺序文件不可以B)在程序结束时,应当用fclose函数关闭已打开的文件C)利用fread函数从二进制文件中读数据,可以用数组名给数组中所有元素读入数据D)不可以用FILE定义指向二进制文件的文件指针5、以下各语句中,字符串abcde”能正确赋值的操作是。A)chars5='a','b','c','d',B)eChar*s;s="abcde”;C)ch
24、ar*s;gets(s);D)chars6;scanf("%S',&s);6、已知:chars20="language",*ps=s;则不能引用字母n的表达式是。Aps+2Bs2Cps2Dps+=2,*ps7、下面程序的输出结果是。main()inta=1,2,3,4,5,6,7,8,9,0,*p;p=a;printf(%dn",*p+9);A)0B)1C)10D)98、已知:inta,x;则正确的赋值语句是。Aa=(a1+a2)/2Ba*=*a+1;Ca=(x=1,x+,x+2);Da="good"9、对于下述定义,
25、不正确的表达是。uniondatainti;charc;floatf;a,b;A变量a所占内存的长度等于成员f的长度B变量a的地址和它的各成员地址都是相同的C可以在定义时对a初始化D不能对变量a赋值,故a=b非法10、假设有以下定义和语句inta=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、假设有以下定义:intx43=1,2,3,4,5,6,7,8,9,10,11,12;int(*P)3=x;则能够正确表示数组元素a12的表达式为。A)*(*(p+1)+2)B)
26、*(*p+1)2)C)*(*(p+5)D)*(*p+1)+2)12、假设有语句chars1="string1",s28,*s3,*s4="string2"则是对库函数strcpy的错误调用。A)strcpy(s1,"stringl");B)strcpy(s4,"string2");C)strcpy("string2",s2);D)strcpy(s3,"stringl");13、以下程序的输出结果是.,main()charst20="”;printf(%d%dn”,s
27、trlen(st),sizeof(st);A)99B)520C)1320D)202014、有以下程序#include<string.h>main(intargc,char*argv口)inti,len=0;for(i=1;i<argc;i+)len+=strlen(argv);printf("%dn",len);程序编译连接后生成的可执行文件是,假设运行时输入带参数的命令行是:ex1abcdefg10<回车则运行的结果是。A)22B)17C)12D)915、执行下面的语句后,输出结果为。enumweek(sun,mon=3,tue,wed,thu);
28、enumweekdaywday;wday=wed;printf("%d,wday);A)5B)3C)4D)编译是出错2判断题3 有说明:staticinta34;,则数组a中各数组元素可在程序的编译阶段得到初值0。4 假设用数组名作为函数调用时的实参,则实际上传递给形参数组的是数组的第一个元素的值。3、结构体的成员可以作为变量使用。4、共用体变量的地址和它的各成员的地址都是同一地址。5、C语言规定只能逐个引用数值数组的元素而不能一次引用整个数组。6、使用结构体struct的目的是将一组数据作为一个整体,以便于其中的成员共享同一空间7、C语言中,枚元素表中的元素又先后次序,可以进行比较
29、。8、语句y=*p+;和*p+;是等价。9、如果一个字符数组中包含多个结束符0',输出时遇到第一个0'字符串输出就结束。10、假设有说明:inta34=0;,则数组a中每个元素均可得到初值0。三、填空题1、有如下程序main()charch25=“6937",“8254”,*p2;inti,j,s=0;for(i=0;i<2;i+)pi=chi;for(i=0;i<2;i+)for(j=0;pij>0''j+=2)s=10*s+pij-'0'printf("%d,s);该程序的输出结果是1o2、以下程序的输出结果是【】unionmyunstructintx,y,z;u;intk;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<st
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论