黑马程序员技术交流社区
标题: 前两天做的一道c语言乱序数组题 [打印本页]
作者: 冬天的章鱼烧 时间: 2015-4-6 23:28
标题: 前两天做的一道c语言乱序数组题
花了不少时间才敲出来,分享给大家,感兴趣的可以看看
//0-10的随机数存到数组,不重复
#include <stdio.h>
#include <stdlib.h>
#define LENGTH 10
int main()
{
//使用循环生成随机数
//生成随机数后,判断数组中是否包含该数字
//如果包含,忽略本次生成的随机数,重新生成
//如果不包含,加到数组
int temp,i=0;
int nums[LENGTH];
N:
for (; i <LENGTH; i++) {
temp = arc4random_uniform(10);
int count =0;
if (i==0) {
nums = temp;
continue;
}
else
do
{
for(int j=0;j<i;j++){
if (temp ==nums[j]) {
goto N;
}
count++;
}
}while (count!=i);
nums = temp;
}
for (int i =0; i<LENGTH; i++) {
printf("%d ",nums);
}
printf("\n");
return 0;
}
作者: oucding 时间: 2015-4-7 15:00
这个程序你运行了?你程序中有这么一句:nums = temp,能行吗,=两边不是一个类型啊
作者: 冬天的章鱼烧 时间: 2015-4-8 00:24
都是int,程序有写
作者: oucding 时间: 2015-4-8 08:44
nums是int型的数组名,它代表的首元素的地址也就是等效于&nus[0],是个地址或者说是指针
作者: 流风124 时间: 2015-4-8 09:36
恩,是的,同感,数组名表示的是其首元素的地址,而非其值,比较的话应该用nums[0]才对
作者: 枫宇翔 时间: 2015-4-8 10:09
同感,你的代码有问题啊
作者: 冬天的章鱼烧 时间: 2015-4-8 22:11
是的,刚才仔细看了下,贴过来的文本少了个,:L
作者: 冬天的章鱼烧 时间: 2015-4-8 22:12
[ i ],,,,,,,被吞了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |