电废人生之 C基础系列20210114
摸鱼之
在下列几种排序方法中,要求内存量最大的是______。
A 快速排序
B 插入排序
C 选择排序
D 归并排序
快速排序的基本思想是,通过一趟排序将待排序记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,再分别对这两部分记录继续进行排序,以达到整个序列有序;
插入排序的基本操作是指将无序序列中的各元素依次插入到已经有序的线性表中,从而得到一个新的序列;
选择排序的基本思想是:扫描整个线性表,从中选出最小的元素,将它交换到表的最前面(这是它应有的位置),然后对剩下的子表采用同样的方法,直到表空为止;
归并排序是将两个或两个以上的有序表组合成一个新的有序表。
本题答案为D。
线性表的顺序存储结构和线性表的链式存储结构分别是_随机存取__和 顺序存取_。
顺序存储结构中,数据元素存放在一组地址连续的存储单元中,每个数据元素地址可通过公式LOC(ai)=LOC(a1)+(i-1)L计算得到,从而实现了随机存取。
对于链式存储结构,要对某结点进行存取,都得从链的头指针指向的结点开始,这是一种顺序存取的存储结构。
下面概念中,不属于面向对象方法的是__D__。
A 对象
B 继承
C 类
D 过程调用
面向对象方法是一种运用对象、类、封装、继承、多态和消息等概念来构造、测试、重构软件的方法。面向对象方法从对象出发,发展出对象,类,消息,继承等概念。
本题答案为D。
#闪退超级烦,加个system(“pause”)看结果
下面的程序中______错误(每行程序前面的数字是行号)。
1 #include<stdio.h>
2 main()
3 {
4 float a[3]={0.0};
5 int i;
6 for(i=0;i<3;i++) scanf("%d",a[i]); #本题的考查点是函数scanf()的格式输入。根据函数scanf()的语法可知,在函数中的参数表列部分,应当是欲赋值变量的内存地址,像第六行这样,将数组元素直接放在参数表列中是无法达到给数组元素赋值的目的。
故本题答案为C。
7 for(i=1;i<3;i++)a[0]=a[0]+a[i];
8 printf("%f\n",a[0]);
9 }
以下程序的输出结果是______。
#include <stdio.h>
main()
{
int a=2,c=5;
printf("a=%%d,b=%%d\n",a,c);
}
Answer:a=%d,b=%d