从键盘输入字符串然后对输入的字符串进行排序
二级计算机公共基础知识课后习题及答案

全国计算机等级考试二级公共基础知识课后习题及答案1第一章数据结构与算法一.选择题1.算法的时间复杂度是指( )A. 执行算法程序所需要的时间B. 算法程序的长度C. 算法执行过程中所需要的基本运算次数D. 算法程序中的指令条数2.算法的空间复杂度是指( )A. 算法程序的长度B. 算法程序中的指令条数C. 算法程序所占的存储空间D. 算法执行过程中所需要的存储空间3.下列叙述中正确的是( )A. 线性表是线性结构B. 栈与队列是非线性结构C. 线性链表是非线性结构D. 二叉树是线性结构4.数据的存储结构是指( )A. 数据所占的存储空间量B. 数据的逻辑结构在计算机中的表示C. 数据在计算机中的顺序存储方式D. 存储在外存中的数据5.下列关于队列的叙述中正确的是( )A. 在队列中只能插入数据B. 在队列中只能删除数据C. 队列是先进先出的线性表D. 队列是先进后出的线性表6.下列关于栈的叙述中正确的是( )A. 在栈中只能插入数据B. 在栈中只能删除数据C. 栈是先进先出的线性表D. 栈是先进后出的线性表8.在深度为5的满二叉树中,叶子结点的个数为( )A. 32B. 31C. 16D. 159.对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为( )A. N+1B. N C .(N+1)/2 D. N/210.设树T的度为4,其中度为1,2,3,4的结点个数分别为4,2,1,1 .则T的叶子结点数为A. 8B. 7 C . 6 D. 5二.填空题1. 对长度为n的有序线性表中进行二分查找,需要的比较次数为( )2. 设一棵完全二叉树共有700个结点,则在该二叉树中有( )个叶子结点3. 设一棵二叉树的中序遍历结果为DBEAFC,前序遍历结果为ABDECF,则后序遍历结果为( )4. 在最坏情况下,冒泡排序的时间复杂度为( )5. 在一个容量为15的循环队列中,若头指针front=6,尾指针rear=9,则该循环队列中共有( )个元素第一章参考答案一.选择题1.C 2. D 3. A 4. B 5. C 6. D 7. B 8. B 9. B 10. A二. 填空题1) log2n 2) 350 3) DEBFCA 4) N(N-1)/2 5) 3第二章程序设计基础一. 选择题1.结构化程序设计主要强调的是( )A. 程序的规模B. 程序的易读性C. 程序的执行效率D. 程序的可移植性2.对建立良好的程序设计风格,下面描述正确的是( )A.程序应简单、清晰、可读性好B.符号名的命名只要符合语法C.充分考虑程序的执行效率D.程序的注释可有可无3.在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送( )A.调用语句B.命令C.口令D.消息4.信息隐蔽的概念与下述哪一种概念直接相关?( )A.软件结构定义B.模块独立性C.模块类型划分D.模块耦合度5.下面对对象概念描述错误的是( )A.任何对象都必须有继承性B.对象是属性和方法的封装体C.对象间的通讯靠消息传递D.操作是对象的动态属性二.填空题1.结构化程序设计的三种基本逻辑结构为顺序、选择和()2.源程序文档化要求程序应加注释。
(加强版)程序设计答案word版

1.1题目:请编写函数fun,该函数的功能是: 将放在字符串数组中的M个字符串(每串的长度不超过N),按顺序合并组成一个新的字符串。
例如: 若字符串数组中的M个字符串为{AAAA",“BBBBBB","CC"则合并后的字符串内容应该是“AAABBBBBBCC"注意: 请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语可。
int i,j, k=0;for (i=0;i<M;i++)for (j=0;a[i][j]!=’\0’;j++)b[k++]=a[i][j];b[k]=’\0’;1.2题目:题目: 请编写fun函数程序,从键盘输入某一年,判断该年是否为闰年。
闰年的条件是: (1) 能被4整除但不能被100整除。
(2) 能被400整除。
符合任何一个条件就是闰年。
输入年份为整型if ((year%4==0&&year%100!=0)||year%400==0)return 1;elsereturn 0;1.3题目:(待议)题目: 编写函数fun; 其功能是: 根据以下公式求的值,结果由函数值带回。
m与n为两个正整数且要求m>n.如“样张”。
P=m!/n!(m-n)!)例如: m=12,n=8时,运行结果为495 000000注意请勿改动主函数main和其他函数中的任何内容。
仅在函数fun的花括号中填入你编写的若干语句。
(参考百度)float p ;p=1.0*jc(m)/jc(n)/jc(m-n);return p;2.1功能: 对长度为8个字符的字符串,将8个字符按降序排列。
例如: 原来的字符串为CEAedcab,排序后输出为edcbaECAint i,j;char t;for(i=0;i<mum; i++)for (j=i+1;j<num;j++)if(s[i]<s[j]){t=s[i];s[i]=s[j];s[j]=t;}2.2编写程序,实现矩阵(3 行、3 列)的转置(即行列互换)。
高级语言程序设计A:期末练习3及答案

一、单项选择题:1.对于一个正常运行和正常退出的C程序,以下叙述正确的是。
A)程序从main函数第一条可执行语句开始执行,在main函数结束B)程序的执行总是从程序的第一个函数开始,在main函数结束C)程序的执行总是从main函数开始,在最后一个函数中结束D)从程序的第一个函数开始,在程序的最后一个函数中结束2.以下不能对二维数组a进行正确初始化的语句是。
A)int a [2][3]={0}; B)int a [][3]={{1,2},{0}};C)int a [2][3]={{1,2},{3,4},{5,6}}; D)int a [][3]={1,2,3,4,5,6}; 3.有以下程序片断float fun(int x, int y){return (x+y);}main(){int a=2,b=5,c=8;printf("%3.0f\n", fun((int)fun(a+c,b), a-c));}程序运行后的输出结果是。
A)编译出错 B)9 C)21 D)9.04.下列程序执行后的输出结果是。
#include <stdio.h>main(){int a[3][3], *p, i;p = &a[0][0];for (i=1; i<9; i++){p[i] = i + 1;}printf("%d\n",a[1][2]);}A)3 B)6 C)9 D)随机数5.有如下程序片段:#include <stdio.h>main( ){int a = 5, b = 4, x, y;x = 2 * a++;printf("a=%d, x=%d\n", a, x);y = --b * 2;printf("b=%d, y=%d\n", b, y);}则正确的执行结果是。
A) a=6, x=10 b=3, y=8 B) a=6, x=10 b=3, y=6C) a=6, x=12 b=3, y=6 D) 以上均不对6.对于以下程序片段,描述正确的是。
程序设计基础(一)实验

程序设计基础(一)实验实验一上机操作初步(2学时)一、实验方式:一人一机二、实验目的:1、熟悉VC++语言的上机环境及上机操作过程。
2、了解如何编辑、编译、连接和运行一个C程序。
3、初步了解C程序的特点。
三、实验内容:说明:前三题为必做题目,后两题为选做题目。
1、输出入下信息:*************************Very Good*************************2、计算两个整数的和与积。
3、从键盘输入一个角度的弧度值x,计算该角度的余弦值,将计算结果输出到屏幕。
4、在屏幕上显示一个文字菜单模样的图案:=================================1 输入数据2 修改数据3 查询数据4 打印数据=================================5、从键盘上输入两个整数,交换这两个整数。
四、实验步骤与过程:五、实验调试记录:实验二简单的C程序设计(4学时)一、实验方式:一人一机二、实验目的:1、掌握C语言的数据类型。
2、学会使用C语言的运算符及表达式。
3、掌握不同数据类型的输入输出方法。
三、实验内容:说明:前四题为必做题目,后两题为选做题目。
1、输入r1、r2,求出圆形垫片面积。
2、输入华氏温度h,输出摄氏温度c。
3、从键盘输入一个3位整数,将输出该数的逆序数。
4、输入并运行以下程序,分析运行结果。
#include <stdio.h>void main( ){ int i,j;i=8; j=10;printf(“%d,%d\n”,++i,++j);i=8; j=10;printf(“%d,%d\n”,i++,j++);i=8; j=10;printf(“%d,%d\n”,++i,i);i=8; j=10;printf(“%d,%d\n”,i++,i);}5、输入三角形三条边的边长,求三角形的面积。
6、输入3个字符型数据,将其转换成相应的整数后,求它们的平均值并输出。
2011年计算机二级C语言编写程序题及答案解析精选1

2011年计算机二级C语言编写程序题及答案解析精选【4.1】已知银行整存整取存款不同期限的月息利率分别为:0.315%期限一年0.330%期限二年月息利率=0.345%期限三年0.375%期限五年0.420%期限八年要求输入存钱的本金和期限,求到期时能从银行得到的利息与本金的合计。
【4.2】输入年份year和月month,求该月有多少天。
判断是否为闰年,可用如下C语言表达式:year%4==0&&year0!=0||year@0==0。
若表达式成立(即表达式值为1),则year 为闰年;否则,表达式不成立(即值为0),year为平年。
【4.3】编写一个简单计算器程序,输入格式为:data1op data2。
其中data1和data2是参加运算的两个数,op为运算符,它的取值只能是+、-、*、/。
【4.4】输入n值,输出如图所示矩形。
【4.5】输入n值,输出如图所示平行四边形。
【4.6】输入n值,输出如图所示高为n的等腰三角形。
【4.7】输入n值,输出如图所示高为n的等腰三角形。
【4.8】输入n值,输出如图所示高和上底均为n的等腰梯形。
【4.9】输入n值,输出如图所示高和上底均为n的等腰空心梯形。
【4.10】输入n值,输出如图所示边长为n的空心正六边型。
【4.11】输入n值,输出如图所示图形。
【4.12】输入n值,输出如图所示图形。
【4.13】输入n值,输出如图所示图形。
【4.14】输入n值,输出如图所示图形。
【4.15】输入n值,输出如图所示图形。
【4.16】输入n值,输出如图所示图形。
(例为n=6时)【4.17】编写程序,输出如图所示sin(x)函数0到2π的图形。
【4.18】编写程序,在屏幕上输出一个由*号围成的空心圆。
【4.19】编写程序,在屏幕上绘制如图余弦曲线和直线。
若屏幕的横向为x轴,纵向为y 轴,在屏幕上显示0~360度的cos(x)曲线与直线x=f(y)=45*(y-1)+31的迭加图形。
C语言必考100题解析

C语⾔必考100题解析1.按下述格式,从键盘输⼊⼀个整数加法表达式:操作数1+操作数2,然后计算并输出表达式的计算结果,形式如下:操作数1+操作数2=计算结果。
2.输⼊两个整形数并打印,如果⽤户不慎输⼊了⾮法字符,那么程序提⽰“输⼊数据类型错误”。
3.已知三⾓形的三边长a,b,c,要求编写程序,从键盘输⼊a,b,c的值,计算并输出三⾓形的⾯积(注意不存在的情况)。
4.编程从键盘输⼊圆的半径r,计算并输出圆的周长和⾯积。
5.任意从键盘输⼊⼀个三位整数,要求正确分离它的个位,⼗位和百位数,并分别在屏幕上输出。
6.写⼀个函数实现统计⼀个输⼊的整形数的位数。
7.编程计算⽅程ax*x+bx+c=0的根,a,b,c由键盘输⼊,只是⽤主函数来实现。
8.编写三个函数,分别在b*b-4*a*c⼤于0、⼩于0、等于0时进⾏调⽤,并输出结果,在主函数中读⼊a、b、c的值。
9.从键盘输⼊你和你朋友的年龄,变成判断谁的年龄⼤,并打印最⼤者的年龄。
10.从键盘输⼊⼀个年份,判断该年是否是闰年,并输出结果。
11.判断某⼈是否属于肥胖体型。
根据⾝⾼与体重因素,医务⼯作者经⼴泛的调查分析给出了以下按“体指数”对肥胖程度的划分:体指数t=w/h*h(w为体重,单位为kg,h为⾝⾼,单位为m)。
当t<18时,为低体重;当t介于18和25之间时,为正常体重;当t介于25和27之间时,为超重体重;当t≧27时,为肥胖。
编程从键盘输⼊你的⾝⾼h和体重w,根据上式,判断体重类型。
12.利⽤switch语句将百分制成绩转化为五分制成绩。
13.利⽤switch语句将五分制成绩转换成对应分数范围并输出。
14.编程设计⼀个简单的计算器程序,要求根据⽤户从键盘输⼊的表达式:操作数1 运算符op 操作数2 计算表达式的值,指定的运算符为加减乘除。
15.利⽤时间函数编写⼀个猜数程序。
16.编程实现计算n的阶乘。
17.利⽤函数递归实现计算n!。
18.利⽤π/4=1-1/3+1/5-1/7……计算π的值直到最后⼀项的绝对值⼩于0.0001为⽌,要求统计总共累加了多少项。
c语言复习题(49题)

以下作业编程练习,每个主题至少选择4道题作为作业题(各主题中所列题目不足4题的按实际数量选做)。
每次作业计2分,作为平时成绩。
另外,此练习题作为C 语言上机考试的考题来源之一(共49题)。
一、 顺序结构程序设计========================================1 已知三角形的三边长为a ,b ,c ,计算三角形面积的公式为: area = ))()((c s b s a s s ---,s =)(21c b a ++ 要求编写程序,从键盘输入a ,b ,c 的值,计算并输出三角形的面积。
2 编程从键盘输入圆的半径r ,计算并输出圆的周长和面积。
二、 选择结构程序设计==========================================1 从键盘任意输入一个年号,判断它是否是闰年。
若是闰年,输出“Yes ”,否则输出“No ”。
已知符合下列条件之一者是闰年:能被4整除,但不能被100整除。
能被400整除。
2 通过键盘输入一个字符,判断该字符是数字字符、大写字母、小写字母、空格还是其他字符。
3 华氏和摄氏温度的转换公式为C =5/9×(F -32)。
其中,C 表示摄氏温度,F 表示华氏温度。
要求:华氏0℉~300℉,每隔20℉输出一个华氏温度对应的摄氏温度值。
4 编程判断输入整数的正负性和奇偶性。
5 编程计算分段函数e 1exx y -⎧⎪=⎨⎪-⎩ 000x x x >=< 输入x ,打印出y 值。
流程图如图1-2所示。
6 输入三角形的三条边a ,b ,c ,判断它们能否构成三角形。
若能构成三角形,指出是何种三角形(等腰三角形、直角三角形、一般三角形)。
7 在屏幕上显示一张如下所示的时间表:*****Time*****1 morning2 afternoon3 nightPlease enter your choice:操作人员根据提示进行选择,程序根据输入的时间序号显示相应的问候信息,选择1时显示"Good morning", 选择2时显示"Good afternoon", 选择3时显示"Good night",对于其他选择显示"Selection error!",用switch 语句编程实现。
C语言课程设计参考题目

C语言课程设计参考题目C语言课程设计参考题目一、基本要求题目1、一司机出车祸后驾车逃离现场,第一位目击者记得车牌号前两位数字相同,且后两位数字也相同;第二位目击者是一位数学家,他看出车牌号是四位完全平方数。
试编程推算肇事车的车牌号。
2、有17个人围成一圈,从0号的人开始报数,凡报到3的倍数的人离开圈子,然后再数下去。
直到最后只剩下一个人为止。
问此人原来的位置是多少号。
3、编写一个程序,求3X4数组的转置矩阵。
要求在main函数里读数,在change 函数里把矩阵转置。
4、编写函数,求取两个整数m,n的最大公约数和最小公倍数。
5、用指向指针的方法对n个整数排序并输出。
要求将排序单独写成一个函数。
N 个整数在主函数中输入。
最后在主函数中输出。
6、有n个学生,每个学生的数据包括学号、姓名、年龄和两科成绩。
请编程用结构类型的数据处理方式实现如下目标:(1)在main 函数中输入原始数据;(2)在count 函数中输出各学生的总分和平均分;(3)输出总分最高的学生;(4)编写sort函数将各学生的数据按总分降序输出。
7、编写求子串函数substr(s,n1,n2),在串s中从n1位置开始取n2个字符的子串8、文件加密程序:将待加密文件以二进制打开,读入32个字节,分别与口令异或,在将4、5、6三个字分别与0xaaaa异或,即完成加密,执行第二次就解密9、编写字串str1 中找出所有小写字母转成大写字母,大写字母转成小写字母后,结果依次存入字符数组 str2 中,str1 不变仍为原字串的程序。
例如,字符串str1 为 "91A2BC. a1bc",调用函数 fun 后,字符数组str2将存入"91a2bc. A1BC",str1仍然是"91A2BC. a1bc"。
10、编写一个将某个范围在-32768~32767之间的整数转换为R进制(R=2,5,8,16)的通用程序。