English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

第一題

1.產生並輸出4位數字
要求1 數字不可重複
2千位數字不得為0

第二題

延續
1.產生並輸出4位數字
2.輸入四位數字
3.輸出比對結果?A?B
4.選擇性 重複至猜出結果為止

謝謝麻煩動動腦 幫我解解題

2007-08-16 11:01:27 · 3 個解答 · 發問者 二姐 1 in 電腦與網際網路 程式設計

3 個解答

奉送人與電腦對玩幾A幾B的程式。
第一題的答案在 main 裡最前面那 4 個 for。
第二題:
1. 在第一題。
2. 在 main裡第5個for 裡的 do while 裡。(a)
3. 在 _A_B 函數與 (a)下的那個 cout 裡。
4. 整個程式是它加上電腦猜人。
 去掉電腦猜人,就是你要的了。

字數超過知識+ 的限制,另外 post 在這裡

2007-08-19 06:27:05 · answer #1 · answered by ? 7 · 0 0

void main()
{
 char s[5]={0};
 int i=1;

 srand((unsigned)time(0));
 while((s[0]=rand()%10+48)=='0');
 while(i!=4)
 {
  s[i++] = rand()%10+48;
  for(int j=0;j    if(s[i-1]==s[j])
   {
    i--;
    break;
   }
 }
 printf("%s\n",s);
 getch();
}

2007-08-16 17:16:15 · answer #2 · answered by ㄚ旺 5 · 0 0

#include
#include
#include
#include
using namespace std;
int output(int Bit)
{
srand((unsigned)time(NULL));
char *num=new char[Bit+1];
num[Bit]='\0';
for(int i=0;i {
do{
num[i]=rand()%10+48;
}
while(num[0]==48);
if(i>0)
{
bool flag;
do
{
flag=true;
for(int j=0;j {
if(num[j]==num[i])
{
flag=false;
num[i]=rand()%10+48;
break;
}
}
}
while(flag!=true);
}
}
int n=atoi(num);
delete [] num;
return n;
}
int main(int argc, char** argv){
//=====START=====//
cout<<"1st...\noutput= "< //=====END=====//
system("PAUSE");
return 0;
}

2007-08-16 16:16:45 · answer #3 · answered by Big_John-tw 7 · 0 0

fedest.com, questions and answers