资源预览内容
第1页 / 共16页
第2页 / 共16页
第3页 / 共16页
第4页 / 共16页
第5页 / 共16页
第6页 / 共16页
第7页 / 共16页
第8页 / 共16页
第9页 / 共16页
第10页 / 共16页
亲,该文档总共16页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
1 C语言常见面试题集53例 C 语言常见面试题集 53 例 一、常见试题一、常见试题 1. 什么是平衡二叉树? 左右子树都是平衡二叉树,且左右子树的深度差值的绝对值不大于 1。 2. 堆栈溢出一般是由什么原因导致的? 没有回收垃圾资源。 3. IP 地址的编码分为哪俩部分? IP 地址由两部分组成,网络号和主机号。不过是要和“子网掩码”按位与上之后才能 区分哪些是网络位哪些是主机位。 4. 以下程序的输出结果是什么? #include main( ) int i=0,a=0; while(i 与 #i nclude “file.h“的区别? 前者是从 Standard Library 的路径寻找和引用 file.h,而后者是从当前工作路径搜寻并 引用 file.h。 17. 请说出 const 与#define 相比,有何优点? const 常量有数据类型,而宏常量没有数据类型。编译器可以对前者进行类型安全检 查。而对后者只进行字符替换,没有类型安全检查,并且在字符替换可能会产生意料不 到的错误。 有些集成化的调试工具可以对 const 常量进行调试,但是不能对宏常量进行调试。 18. 用预处理指令#define 声明一个常数,用以表明 1 年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 19. 请问下面程序有什么错误? int a602501000,i,j,k; for(k=0;k0.000001 main() int a=2,b=5,c=8; printf(“%3.0fn“,fun(int)fun(a+c,b),a-c); 输出结果是 9。 38. 写一个“标准”宏 MIN,这个宏输入两个参数并返回较小的一个。 #define MIN(A,B) (A) main() int i,j,k,n; printf(“water flowernumber is:“); for(n=100;n maxlen) maxlen = count; *r1 = s1 + k; *r2 = s2 + j; 3. 输入 N, 打印 N*N 矩阵 #define N 15 int sNN; void main() int k = 0, m = 0, j = 0; int a = 1; for( ; k k-1 ) smj- = a+; m-; j+; while( m k ) sm-j = a+; m+; j+; for( m = 0; m #define n 10 char strn; fun(char str ) main( ) int j,f; for(f=1;f=1;) scanf(“%s“,str); if(strlen(str)n) printf(“超过长度,请重新输入!“); else f=0; fun(str); for(j=0;j=aa-) c=a; for(b=1;b #include int main() char str = ABCD1234efgh; int length = strlen(str); char * p1 = str; char * p2 = str + length - 1; while(p1 main() char c; int letters=0,space=0,digit=0,others=0; printf(“please input some charactersn“); while(c=getchar()!=n) if(c=a printf(“please input two numbers:n“); scanf(“%d,%d“, if(num1 ) temp=num1; num1=num2; num2=temp; a=num1;b=num2; while(b!=0)/*利用辗除法,直到 b 为 0 为止*/ temp=a%b; a=b; b=temp; printf(“gongyueshu:%dn“,a); printf(“gongbeishu:%dn“,num1*num2/a);
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号