正文

一些编程的题目2006-04-07 18:15:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/elva6401/12068.html

分享到:

1。以下两个程序哪个的performance高,并解释为什么。
a) extern int foo(void);
int main()
{ int i; for(i=0;i<10000;i++)
foo();
return i;
}
 b) extern int foo(void); int i; int main() { for(i=0;i<10000;i++) foo(); return i; }

2。C程序写结果。  
#include <stdio.h>   
#define ADD(p) {p++;(*p)++;}   

Add(int *p) {p++;(*p)++;}   
int a[]={0,1,2};   

int main()   
{
  int *p=a;     
  ADD(p)     
  ADD(p)     
  printf("%d,%d,%d\n",a[0],a[1],a[2]);
  p=a;
  Add(p);
  Add(p);
  printf("%d,%d,%d\n",a[0],a[1],a[2]);
}


3。说明下面的的表达有没有不同,如果不同,请说明不同在哪里。
  char* s1="hello";
  char  s2[]="world";
 
4.说明下面程序的作用。  
  func(char*a,char*b)  
  {    
   while(*a++=*b++);
   return;
  }
 
5.printf可以接受多个参数,为什么,请写出printf的原型。

6.说明malloc和calloc的区别。

7, 三组程序,找出错误,如果有的话.    

1>a.c    long   temp[255];          b.c   extern   *temp;    
2>a.c    long   temp[255];          b.c   extern   temp[256];    
3>a.c    long   temp[255];          b.c   extern   temp[];

8, printf("0x%x", (&0)[-1]);  请问打印了什么?

9. a=5,b=5 问下式的执行结果: (a++)==b?a:b

10. a[]={1,2,3,4,5}    *p={a+3,a+2,a+1,a}    **q=p 问下式执行结果: *(a[1]+1)+**(q+2)

11. 写出表达式表示出sin(360 度)/[(x^2+y^2)的平方根

12. 如何把a 数组的前n个字符拷贝到b数组去(字符数组)

13、有数组a[M][N],问下面那种算法效率高
(a)for(int i=0;i<M;i++)
       for(int j=0;j<N;j++)
         xxx=a[i][j].........
(b)for(int i=0;i<N;i++)
       for(int j=0;j<M;j++)
         xxx=a[j][i]......... 
        
14、关于递归调用的一个题:
  int foo(int i)
  {
    if(i==0) return 0;
    reurn foo(i/2)+1;
  }
  问foo(4)=?

15、构造函数都不定义返回类型,对吗?

16、拷贝构造函数在什么情况下被调用?

171000!有几位数,为什么

 

18F(n)=1 n>8 n<12

F(n)=2 n<2

F(n)=3 n=6

F(n)=4 n=other

使用+ - * /sign(n)函数组合出F(n)函数

sign(n)=0 n=0

sign(n)=-1 n<0

sign(n)=1 n>0

 

阅读(4802) | 评论(2)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

loading...
您需要登录后才能评论,请 登录 或者 注册