Chinaunix首页 | 论坛 | 博客
  • 博客访问: 156978
  • 博文数量: 36
  • 博客积分: 802
  • 博客等级: 准尉
  • 技术积分: 717
  • 用 户 组: 普通用户
  • 注册时间: 2012-06-02 22:47
文章分类
文章存档

2012年(36)

分类: C/C++

2012-10-23 21:56:01

首先是今天笔试的一些记得的题目:
第一题:

       int i,j;

  1. for(i=0;i<21;i++)
  2.    for(j=0;j<30;j++)
  3.        if(i*j==30)
  4.            break;
  5. printf("%d,%d\n",i,j);//输出为21,30.由于break跳出的是第一个循环,所以第二个依次进行,故而得出这个结论
第二题:
  1. int *fun()
  2. {
  3.      static int b;//static int b相当于对b初始化为0
  4.      b++;
  5.      return &b;
  6. }
  7. int main()
  8. {
  9.      int *a;
  10.      a=&fun();
  11.      printf("%d\n",*a);//这里输出是1
  12.      *a=20;//这里将a指针指向的内容改变为了20.
  13.      a=&fun();//这里20++之后变为了21
  14.      printf("%d\n");//这里输出为21
  15. }
第三道:怎样防止函数头文件的重复引用?
答案:ifndef/define/endif
第四道:
编写函数,输入一个数字, eg:1 则输出11,输入12,则输出1122

  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #include<string.h>

  4. void func(char *str)
  5. {
  6.     char *p=str;
  7.     if(*p!='\0')
  8.         printf("%c%c\n",*p,*p);
  9.     else
  10.     {
  11.         printf("OVER\n");
  12.         return;
  13.     }
  14.     func(++p);
  15. }
  16. void main()
  17. {
  18.     char temp[10];
  19.     printf("Input:");
  20.     scanf("%s",temp);
  21.     func(temp);
  22. }
第五道题:10个值在1到10000的整数存放在数组内,利用散列方法,以最少数据比较次序和移动次数对他们进行排序.
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #include<time.h>

  4. #define size 10000
  5. //#define min 1
  6. //#define max 10000

  7. int store[size]={0};

  8. int position(int x)
  9. {
  10.     int p=0;
  11.     return p=x-1;
  12. }

  13. void main()
  14. {
  15.     int i,j;
  16. //    int temp;
  17.     int A[10]={2121,1212,3234,345,456,777,1345,899,988,8888};
  18.     //int p=1;

  19.     for(i=0;i<10;i++)
  20.         printf("%d ",A[i]);
  21.     printf("\n");

  22.     for(i=0;i<10;i++)
  23.     {
  24.         j=position(A[i]);
  25.         while(store[i]!=0)
  26.             j=(j+1)%size;
  27.         store[j]=A[i];
  28.     }

  29.     for(i=0;i<size;i++)
  30.         if(store[i]!=0)
  31.          printf("%d ",store[i]);
  32.     printf("\n");
  33. }

 
阅读(1672) | 评论(0) | 转发(1) |
0

上一篇:最近笔试总结二

下一篇:没有了

给主人留下些什么吧!~~