笔试题库
wyp784035821
这个作者很懒,什么都没留下…
展开
-
输入几个数(含有负数,小数),将他从小到大排序
第一种,推荐:#include int sequence(float a[], int num){ int i,j; float tmp; for(i = 0; i { for(j = i + 1; j { if(a[i] > a[j]) { tmp = a[i]; a[i] = a[j];原创 2018-01-30 21:54:45 · 1195 阅读 · 0 评论 -
面试智力题五个嫌疑犯
题目有一个侦探逮捕了五个嫌疑犯。这五个人供出的作案地点有出入。进一步审讯了他们之后,他们分别提出了如下的申明: A:五个人当中有一个人说谎。 B:五个人当中有两个人说谎。 C:五个人当中的三个人说谎。 D:五个人当中有四个人说谎。 E:五个人全说谎。 只能释放说真话的人,该释放哪几个人呢?---------------------原创 2018-01-30 09:34:49 · 1622 阅读 · 0 评论 -
直接选择排序
直接选择排序的基本思想:N个记录的直接选择排序后可以经过N-1次直接排序后得到的结果#include void SelectSort(int *a, int n){ int i, j; int temp = 0; int flag = 0; for (i = 0; i { temp = a[i];原创 2018-01-28 22:09:59 · 156 阅读 · 0 评论 -
有一分数数列:1/2,1/4,1/8.........用函数调用的方法,求值
#include double sum(int n){ double sum = 0; int i; for(i = 1; i { sum = sum + 1/(i * 2.0); } return sum;}int main(){ int n; printf("请输入要加几次\n"); scanf("%d",&n);原创 2018-01-26 21:56:04 · 1381 阅读 · 1 评论 -
编写一个函数实现2 的1000次方
一开始看到这题目,我觉得挺简单,后来写完后编译的时候才发现值为0。。。。才想起来溢出了,后来用数组做,然后倒着打印就可以了。#include #include using namespace std;int main(){ int a[1000] = {0}; int i,j,k; a[0] = 1; for(i = 0; i原创 2018-01-26 19:21:11 · 975 阅读 · 0 评论 -
面试智力题三人决斗问题
题目三个小伙子同时爱上了一个姑娘,为了决定他们谁能娶这个姑娘,他们决定用手枪进行一次决斗。阿历克斯的命中率是30%,克里斯比他好些,命中率是50%,最出色的枪手是鲍博,他从不失误,命中率是100%。由于这个显而易见的事实,为公平起见,他们决定按这样的顺序:阿历克斯先开枪,克里斯第二,鲍博最后。然后这样循环,直到他们只剩下一个人。求各自正确策略下的存活概率。阿和克必须让鲍先死,鲍不死则必定杀原创 2018-01-25 20:09:45 · 2185 阅读 · 0 评论 -
编写一个程序,实现字符串逆序
#include #include #include int main(){ char str[100]; printf("请输入一个字符串:"); gets(str); int i = 0; char ch; int len = strlen(str); for(i = 0; i {原创 2018-01-26 14:36:43 · 3092 阅读 · 0 评论 -
sizeof和strlen的区别
区别如下1、sizeof 是操作符,strlen 是函数。2、sizeof操作符的结果类型是size_t,它在头文件typedef为unsigned int 类型,该类型保证能容纳所建立的最大对象的字节大小。3、sizeof可以用类型做参数,strlen 只能用char * 做参数,并且必须以“\0”结尾。4、数组做 sizeof 的参数不退化,要是传递给strlen 则退化为指针。5、大部分编译...原创 2018-01-26 10:19:04 · 149 阅读 · 0 评论 -
局部变量能否和全局变量重名
1、局部变量能否和全局变量重名? 答:能,局部会屏蔽全局。要用全局变量,需要使用 ":: " (域解析符) 局部变量可以与全局变量同名,在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局变量。对于有些编译器而言,在同一个函数内可以定义多个同名的局部变量,比如在两个循环体内都定义一个同名的局部变量,而那个局部变量的作用域就在那个循环体内。原创 2018-01-23 19:26:49 · 16550 阅读 · 0 评论 -
关键字static的作用
static关键字主要有三种用法第一点,static修饰全局变量当一个进程的全局变量被声明为static之后,他的中文名叫静态全局变量。静态全局变量和其他全局变量的存储地点并没有区别,都是在.data段(已初始化)或者.bss(未初始化)内,但是它只在定义它的源文件内有效,其他源文件无法访问它。第二点,static修饰局部变量普通的局部变量在栈空间上的分配,这个局部原创 2018-01-22 22:17:08 · 452 阅读 · 0 评论 -
堆和栈的区别
首先,当一个C/C++编译的程序占用内存分为:栈(stack),堆(heap),全局区(静态区static),文字常量区以及程序代码区。堆:由程序员分配,若程序员在分配空间,到程序结束后没有释放则可能被操作系统(OS)回收栈:由系统自动分配以及释放,用来存放函数的参数值,局部变量的值。接着,聊一聊申请后系统的响应堆:操作系统有一个记录空闲地址的链表,当系统受到程序的申请时,原创 2018-01-22 22:30:31 · 145 阅读 · 0 评论 -
库函数与系统调用的区别
库函数是语言本身的一部分,而系统函数是内核提供给应用程序的接口,属于系统的一部分。函数库调用是语言或应用程序的一部分,而系统调用是操作系统的一部分。用户应用程序访问并使用内核所提供的各种服务的途径即是系统调用。在内核和用户应用程序相交界的地方,内核提供了一组系统调用接口,通过这组接口,应用程序可以访问系统硬件和各种操作系统资源。 1.系统调用是为了方便应用使用操作系统的接口,而库函原创 2018-01-25 19:43:36 · 201 阅读 · 0 评论 -
#pragma pack的作用
#pragma pack 用来设置对齐的数值,如#pragma pack(1),则是以1对齐,改变括号内的数值就改变了对齐的方式。#include #pragma pack(1) //对齐长度变为1using namespace std;struct u //u 的长度变为1+ 4 + 8 = 13{ char a;原创 2018-02-01 09:57:23 · 247 阅读 · 0 评论 -
使用sizeof计算联合体(union)的大小
联合体的大小取决于他所有成员中占用空间最大的一个成员的大小。并且对于复合数据类型,如union,struct, class 的对齐方式为成员中最大成员的对齐方式。#include using namespace std;union u //u的大小是其中最大的double类型成员a,所以sizeof(u) = sizeof(double)原创 2018-02-01 09:47:19 · 12529 阅读 · 0 评论 -
快速排序
快速排序算法步骤: 1、从数列中挑出一个元素,称为 “基准”(pivot), 2、重新排序数列,所有元素比基准值小的摆放在基准左区间,所有元素比基准值大的摆在基准的右区间。在这个分区退出之后,该基准就处于数列的中间位置。这个称为分操作。3、递归地把小于基准值元素的子数列和大于基准值元素的子数列排序。递归的最底部情形,是数列的大小是零或一,也就是永远都已经被排序好了。虽然一直递归下去原创 2018-01-24 16:09:35 · 189 阅读 · 0 评论 -
shell(希尔)排序
希尔排序其实和直接插入排序差不多,只不过在直接插入排序前把数组变为基本有序的状态,效率有所提高。但也因此,希尔排序是不稳定的。#include using namespace std;void shellsort(int a[],int len){ int h,i,j,tmp; h为步长 for(h = len/2; h > 0; h = h/2) //希尔排原创 2018-01-24 11:13:18 · 186 阅读 · 0 评论 -
直接插入排序
直接插入排序类似打牌,一开始拿到一个数,接下来拿到的数与一开始的数比较若原来的数大,则下标加一,后来的数下标改为原来数的下标,若后来数较大,则原来数不变,后来数下标变为原来数下标加一#include using namespace std;void insertsort(int a[], int len){ int i,j,tmp; for(i = 1; i原创 2018-01-24 10:21:25 · 164 阅读 · 0 评论 -
面试智力题五束玫瑰花
题目:"一共有几位姑娘?"花店老板问。 "五位。"托马斯大叔答道。 "那么,您买五束玫瑰花吧。我想每束有八朵花比较合适。你要什么颜色的?黄的,还是粉色的、目的或者红的?每一种颜色都要一 点吧。" "那也行。每种颜色来10朵花,一共40朵花。为了让五束花看 起来各有特色,我希望每一束花中不同颜色花朵的数量不全相同,不 "过每束花中每种颜色的花至少应该有一朵。"原创 2018-01-22 22:53:18 · 1128 阅读 · 0 评论 -
回溯算法 八皇后
#include <stdio.h>#include <stdlib.h>#define max 8 int queen[max], sum = 0; //queen数组内放的是皇后的纵坐标void show() //打印输出{ int i; for(i = 0; i < max; i++) { printf("(%d,%d)",i...转载 2018-11-27 02:30:35 · 155 阅读 · 0 评论