C++ 数组代码错误

c++ array code error

本文关键字:错误 代码 数组 C++      更新时间:2023-10-16
代码

不会运行,说"返回值"是错误的,它说返回found[i]=lettersrand time也显示错误。我不确定如何解决它?也许把found[i]放在main()里,然后放return 1??不确定如何让srand正常工作?

#include <iostream> 
using namespace std; 
void getarray(char [], int); 
void printa(char [],int ); 
void search(char [],int, char); 
void main() { 
    srand(time(0)); //1-declare char letter=' '; 
    char guess[7]; 
    char found[7]={letter}; 
    int res=0; 
    char answer='Y';
}
//2-init
getarray(guess,7); 
//3- processing 
printa(guess,7);
while(answer == 'Y')
{
    cout << "enter a letter";
    cin >>letter;
    search(guess,7,letter); 
    if (res != -1)
        printa(found,7);
    cout <<" do you want to continue(Y/N)?"<<endl;
    cin >>answer;
}
//printing
system("pause");
}
void getarray(char a[], int n)
{
    for(int i=0;i<n;i++)
        a[i]= 65 + rand()%26;
}
void printa(char a[], int n)
{
    for(int i=0;i<n;i++)
        cout << " the letter " << i+1 << " is "<<a[i]<<endl;
}
void search(char a[],int n, char key)
{
    for(int i=0;i<n;i++)
        if ( a[i]== key)
            return Found[i]=={letter}; 
}

似乎您有一个额外的},可以过早终止您的功能。

void main() {
   srand(time(0)); //1-declare char letter=' '; 
   char guess[7]; 
   char found[7]={letter}; 
   int res=0; 
   char answer='Y';
}   <--- This seems not correct
// 2-init
getarray(guess,7); 

然后,代码的其余部分似乎在函数之外,这会混淆编译器。