怎么用c生成不重复数?

怎么用c生成不重复数?,第1张

#include<stdio.h>

#include<stdlib.h>

#include<time.h>

#include<iostream.h>

#include<math.h>

#define SIZE 4

main()

{

int a[SIZE], i,n

srand(time(NULL))

cin>>n

for(i=0i<=SIZE-1i++)

a[i]=rand()%10

for(i=0i<=SIZE-1i++)

cout<<a[i]

}

问题的确出在楼主自己说的那个地方,你只需要将代码当中else后边的两句放到一个语句块内就没有问题了,即如下所示

if(a[i]!=a[l])

{

i++

}

else

{

printf("你输入的数与前面某个数字有重复,请重新输入。\n")

break

}

因为 break 会跳出当层for循环,在没有改动之前,你的for循环只能执行一次比较就(break)退出了。改动之后就可以扫描之前已经输入的所有数据。

最后建议楼主要有良好的编程习惯,那就是不管if else等后边的语句有多简单,都最好用{}包起来,这样不仅增强了程序的可读性,更加方便调试。好的编程习惯也是制胜的法宝。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/bake/11740279.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存