C语言面试题目,急!!!!!!!!!!!

来源:百度知道 编辑:UC知道 时间:2024/05/28 03:45:17
明天就要面试了,下面是一道简单的C语言题目,帮下我:
第一题:用C语言完成以下这个子程序,要求:
1,定义一个一维数组,数组大小为24。
2,产生0-23的随机数。
3,将产生的随机数存入数组,要求数组中的每个数据不能相同。
4,补充说明:这个子程序要求每次调用后,这个数组 里面就存放了0-23这些数据,而且这些数据没有重复的。
5,注意,C语言有随机数函数,可以用函数产生随机数。RAND(N)
第二题:
把上面的C程序转化成汇编程序,用8051汇编语言汇编出来 ,感谢,各位,我明天就要面试了。。。
我一般都是写汇编的啊

前面两位虽说的有一定道理,但到这里来的同志不是来寻求打击的。

社会上各个层面的人都有,各个层面的需求也都有,所以不要那样了。

C程序如下:
#define N 24
#include "stdlib.h"
void RandArrayN(int *a,int n)
{   int i,t,;
    n=n-1;
    for(i=0;i<=n;i++)  a[i]=0; // 全部清零,还没有置数的状态。
    for(i=0;i<n;i++){          // 只循环了n-1次,每次置入的数据分别为n-1,n-2,...,1,最后剩余未置(非零)数的那个位置就本身已经置入0了。
       while(a[t=rand(n)]!=0);  // 每次找一个未置数位置
           // 若该位置已经放下一个数(不等于0),则找下一个位置,直到找到为0的位置(还没有置入一个数)
       a[t]=n-i;  // 第i次找到的位置置入数n-i,
    }
}
void main()
{ int a [N];
  RandArrayN