![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试题
各大公司以往的面试题详解,为你的offer助一臂之力
陪培
让编程成为爱好,坚持才不会落后。
展开
-
【面试题】【剑指offer】给定一个整数数组nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次,请找出只出现一次的那两个元素。
给定一个整数数组nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次,请找出只出现一次的那两个元素。你能否仅使用常数空间复杂度来实现?示例 : 输入:num=【1,2,2,3,3,4】 输出:1,4题目给定初始程序为intsingleNumber( int nums, int numsSize, int*returnSize ){}思路一:要想从数组中得到那两个数,我们可以将数组中所有元素***异或***,这样想的的两个数都异或为0了,只留下只出现一次的原创 2021-03-30 09:26:48 · 3321 阅读 · 24 评论 -
【面试题】【C语言】日本某地发生一起谋杀案,警察通过排查确定凶手为4个嫌疑人中一个。 以下为4个嫌疑犯的供词: A:不是我 B:是C C:是D D:C在胡说 已知3个人说了真话,一个人说了假话,写一个
日本某地发生一起谋杀案,警察通过排查确定凶手为4个嫌疑人中一个。以下为4个嫌疑犯的供词:A:不是我B:是CC:是DD:C在胡说已知3个人说了真话,一个人说了假话,写一个程序来确定谁是凶手#include <stdio.h>#include <stdlib.h>int main(){ int killer = 0; for (killer = 'a'; killer <= 'd'; killer++)//abcd之间也可以用++ a++=b以此类推 {原创 2021-03-02 08:25:20 · 1600 阅读 · 35 评论 -
【面试题】【C语言】5位运动员参加跳水比赛,有人让他们预测比赛结果
题目:A选手说:B第二,我第三;B选手说:我第二,E第四;C选手说:我第一,D第二;D选手说:C最后,我第三;E选手说:我第四,A第一;比赛结束后,恰好每位选手都说对了一半,请用编程实现他们的名次分析:通过以上所给,我明知道五位选手每个人刚好说对一半,但是是哪一半我们不知道。我们知道在我们的计算机中,对为1,不对为0,只要我们每位选手的两个预测相加都恰好等于1,那条件就成立了,接下来我们动手写程序。#include <stdio.h>#include <stdlib.h原创 2021-03-01 08:57:45 · 7607 阅读 · 59 评论 -
【面试题】【C语言】某超市为了促销,一块钱一瓶的可乐,现在两个瓶盖可以换一瓶,请你编写代码实现20元最多可以得到多少可乐
某超市为了促销,一块钱一瓶的可乐,现在两个瓶盖可以换一瓶,请你编写代码实现20元最多可以得到多少可乐#include <stdio.h>#include <stdlib.h>int main(){ int n = 0; scanf("%d", &n);//题目是20元,我们写成自定义输入,更方便 int k = n;//可乐全部喝完我们可以得到可乐数量一样多的瓶盖 while( n >=2)//必须要有两个瓶盖才能兑换可乐,所以n>=2 {原创 2021-02-28 08:05:30 · 867 阅读 · 11 评论 -
【面试题】【C语言】编写程序,实现字符串逆序,可以有空格
字符串逆序,可以有空格,C语言#include <stdio.h>#include <stdlib.h>#include <string.h>#include <assert.h>//assert的头文件void reverse(char* str){ assert(str);//注意审题,可以有空格 int len = strlen(str); char*left = str; char*right=str+len-1; while原创 2021-02-27 08:27:01 · 613 阅读 · 2 评论 -
【面试题】【C语言】在不使用第三变量的情况下,交换两个变量的值
例如 a=10,b=20,要求交换他们两个的值,并且不能使用第三变量第一种方法:加减法#include <stdio.h>int main(){int a=10;int b=20;printf("交换前:a=%d b=%d\n",a,b);a=a+b;b=a-b;a=a-b;printf("交换后:a=%d b=%d\n",a,b);system("pause");return 0;}这样就完成了a和b的交换,但是我们还有更好的方法,就是第二种原创 2021-02-09 11:11:40 · 1007 阅读 · 2 评论 -
闰年计算
计算给定区间内所有的闰年,并算出共多少年#include <stdio.h>#include <stdlib.h>int main(){ int year = 0; int count = 0; for (year = 1937; year <= 2000; year++) { if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) { printf("%d ",原创 2021-02-03 09:29:18 · 132 阅读 · 1 评论 -
闰年的计算,输入年份判断是否为闰年
闰年的计算规则,能被4整除并且不能被100整除,或者能被400整除#include <stdio.h>#include <stdlib.h>int main(){int year=0;scanf_s("%d",&year);if((year%4==0&&year%100!=0)||(year%400==0))printf("这一年是闰年\n",year);elseprintf("这一年不是闰年\n",year);system("paus原创 2021-02-02 21:21:13 · 563 阅读 · 0 评论