最后
本人也收藏了一份Java面试核心知识点来应付面试,借着这次机会可以送给我的读者朋友们:
目录:
Java面试核心知识点
一共有30个专题,足够读者朋友们应付面试啦,也节省朋友们去到处搜刮资料自己整理的时间!
Java面试核心知识点
int main()
{
int x = 1;
do{
printf(“%2d\n”, x++);
}while(x–);
return 0;
}
A. 1
A. 无任何输出
C. 2
D. 死循环
📝 分析:
此题虽然简单,但还是有需要注意的地方
x++:这种操作会破坏原本 x 的值
y = x + 1:这种操作不会破坏 x 的值
所以选择 D
##### 第4题
🎗观察并判断以下代码的结果?
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a = -3;
unsigned int b = 2;
long c = a + b;
printf(“%u\n”, c);
return 0;
}
A. -1
B. 4294967295
C. 0x7FFFFFFF
D. 0xFFFFFFFF
📝 分析:
这里计算的一定是它们在内存中的补码
![在这里插入图片描述](https://img-blog.csdnimg.cn/02f336106e3b4c7fa7c4bf2af7458e93.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA6Lez5Yqo55qEYml0,size_20,color_FFFFFF,t_70,g_se,x_16)
所以选择 B
##### 第5题
🎗编程题<难度系数⭐>
📝 题述:有一个有序数字序列,从小到大排序,将一个新输入的数插入到序列中,保证插入新数后,序列仍然是升序。
🍳 输入描述:
第一行输入一个整数(0≤N≤50)。
第二行输入N个升序排列的整数,输入用空格分隔的N个整数。
第三行输入想要进行插入的一个整数。
🍳 输出描述:
输出为一行,N+1个有序排列的整数。
💨 示例:
输入:
5
1 6 9 22 30
8
输出:
1 6 8 9 22 30
🧷 平台:Visual studio 2017 && windows
[牛客网原题](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
//输入的整数n
int n = 0;
scanf(“%d”, &n);
int arr[51] = { 0 };
int i = 0;
//入n个数据
for(i = 0; i < n; i++)
{
scanf(“%d”, &arr[i]);
}
//要插入的数据
int insert = 0;
scanf(“%d”, &insert);
for(i = n - 1; i >= 0; i--)
{
//arr[i] > insert时往后挪一个位置
if(arr[i] > insert)
{
arr[i + 1] = arr[i];
}
//arr[i] <= insert时插入数据
else
{
arr[i + 1] = insert;
break;
}
}
//这是insert比所有数都小的情况(利用for循环中i的变化,i<0说明全部的数都往右挪了一个单位都没找到)
if(i < 0)
arr[0] = insert;
//输出
for(i = 0; i <= n; i++)
{
printf("%d ", arr[i]);
}
return 0;
}
❗ 当 arr[i] <= insert 时也可以直接跳出去处理 ❕
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
//输入的整数n
int n = 0;
scanf(“%d”, &n);
int arr[51] = { 0 };
int i = 0;
//入n个数据
for(i = 0; i < n; i++)
{
scanf(“%d”, &arr[i]);
}
//要插入的数据
int insert = 0;
scanf(“%d”, &insert);
for(i = n - 1; i >= 0; i--)
{
//arr[i] > insert时往后挪一个位置
if(arr[i] > insert)
最后
这份清华大牛整理的进大厂必备的redis视频、面试题和技术文档
祝大家早日进入大厂,拿到满意的薪资和职级~~~加油!!
感谢大家的支持!!
5274047)]