一、概念理解题
1. break语句和continue语句的区别。循环中用过break和continue吗,分别有什么作用?
2. 全局变量与局部变量的区别和用法。
3. 了解的排序算法有哪些?(掌握核心思想,越多越好)
一、代码分析题
1.
#include
int main()
{
int a,b,c,d,e;
a=10;
b=a++;
c=++a;
d=10*a++;
e=((c>a)?a:b);
printf("b,c,d,e:%d,%d,%d,%d",b,c,d,e);
return 0;
}
上述 b,c,d,e为何值,为什么?
2.
#include
int main()
{
int i, j, N = 5;
for(i = 0; i < N; i++)
{
for(j = i; j < N-1; j++) printf(" ");
for(j = 0; j < 2*i+1; j++) printf("*");
printf("\n");
}
for(i = N-2; i >= 0; i--)
{
for(j = i; j < N-1; j++) printf(" ");
for(j = 0; j < 2*i+1; j++) printf("*");
printf("\n");
}
return 0;
}
上述代码输出结果是什么?
三、代码实现题
1. 输入年份eg:2002 判断是否闰年?
2. 冒泡排序与选择排序代码是如何实现的?
四、计导部分
1. 原码反码补码掌握吗?他们之间有什么关系?(eg. -17,13......)
2.谈谈你对冯诺依曼思想的理解。
3.进制转换
(1)(163.27)D=( )B=( )H
(2)(3AB6)H=( )D
五、趣味思考题
有100瓶药水,其中一瓶是毒药,只要一小滴就足以让小白鼠24小时内死亡,请问怎么在1天内用最少的老鼠找出这瓶毒药?
六、附加题
1. 判断下面程序的输出结果,并解释原因
#include
struct hta
{
char keil;
struct
{
char verilog;
int stm;
}welcome;
char qrs;
char fpga;
char byq;
char yx;
int we;
};
int main()
{
printf("the size of struct hta is %d\n",sizeof(struct hta));
return 0;
}
2.指出下列题目指针的类型;指针所指向的类型;指针的值,或者叫指针所指向的内存区或地址;指针本身所占据的内存区。
(1) int *ptr
(2) char *ptr
(3) int **ptr
(4) int (*ptr)[3]
(5) int *(*ptr)[4]