首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

c++输出10个不同10之内的数字,大家帮忙看上程序,多谢

2012-08-01 
c++输出10个不同10之内的数字,大家帮忙看下程序,谢谢这个是我写的程序,是没问题的。void main(){int num[10

c++输出10个不同10之内的数字,大家帮忙看下程序,谢谢
这个是我写的程序,是没问题的。
void main()
{
int num[10],n = 0;
srand(time(0));
num[0] = rand()%10;
n++;

while (n<10)
{
int a =rand()%10,i;
for (i = 0;i<n;i++)
{
if (num[i] ==a)
{
break;
   
}
}
if (num[i] == a)
 {
continue;
 }
else

{
num[n] = a;
n++;
}


}

但是,我想引入一个开关变量,修改如下,就出现问题了,还望大家帮忙指正下啊,谢谢
void main()
{
int num[10],n = 0;
srand(time(0));
num[0] = rand()%10;
n++;
int sw = 0;//引入的开关变量
while (n<10)
{
int a =rand()%10,i;
for (i = 0;i<n;i++)
{
if (num[i] ==a)
{
  sw = 1;
break;
   
}
}
//if (num[i] == a)//
 //{
continue;//
 //} //引入开关变量之后,这几行就作废了啊

if(!sw)//这里修改为这样

{
num[n] = a;
n++;
}


}

可是修改后,程序运行显示没有东西,,大家帮看下啊,谢谢

[解决办法]

C/C++ code
void main(){    int num[10],n = 0;    srand(time(0));    num[0] = rand()%10;    n++;    int sw = 0;//引入的开关变量    while (n<10)    {        int a = rand()%10,i;        sw = 0;        for (i = 0;i<n;i++)        {            if (num[i] ==a)            {                sw = 1;                break;            }        }        //if (num[i] == a)//        //{        //continue;//        //} //引入开关变量之后,这几行就作废了啊        if(!sw)//这里修改为这样        {            num[n] = a;            n++;        }    }}
[解决办法]
+++
if(!sw)用了中文符号,要修改一下
continue要注意注释掉

sw标记在每次循环开始时要初始化为0;不能标记起过一次作用之后就一直作用下去。
探讨
C/C++ code

void main()
{
int num[10],n = 0;
srand(time(0));
num[0] = rand()%10;
n++;
int sw = 0;//引入的开关变量
while (n<10)
{
int a = rand()%10,i;
s……

热点排行