gpt4 book ai didi

c++ - 检查字符数组 - 每次都返回相同的答案

转载 作者:行者123 更新时间:2023-11-28 06:15:04 25 4
gpt4 key购买 nike

所以我一直在为一项作业编程——我应该创建一个程序来询问问题的数量、正确答案以及为测试评分提供的答案。在我编写的程序中,我总是获得相同的得分返回值:4199676

谁能告诉我为什么会得到这个返回值?非常感谢。

int main(){
int qnum = 1;
int counter;
int corr_counter;
char correct[10000];
char answer[10000];
while(qnum != 0){
cout<<"Enter the number of questions on the test (0 to exit).\n";
cin>>qnum;
while(qnum < 0){
cout<<"Please enter a valid number of questions.\n";
cin>>qnum;
}
for(counter = 0; counter < qnum; counter++){
cout<<"Enter the correct answer for question "<<counter<<". The answer can be A, B, C, D, or E.\n";
cin>>correct[counter];
toupper(correct[counter]);
while(correct[counter] != 'A' && correct[counter] != 'B' && correct[counter] != 'C' && correct[counter] != 'D' && correct[counter] != 'E'){
cout<<"Please enter either A, B, C, D, or E.\n";
cin>>correct[counter];
toupper(correct[counter]);
}
}
for(counter = 0; counter < qnum; counter++){
cout<<"Enter the student's answer for question "<<counter<<". The answer can be A, B, C, D, or E.\n";
cin>>answer[counter];
toupper(answer[counter]);
while(answer[counter] != 'A' && answer[counter] != 'B' && answer[counter] != 'C' && answer[counter] != 'D' && answer[counter] != 'E'){
cout<<"Please enter either A, B, C, D, or E.\n";
cin>>answer[counter];
toupper(answer[counter]);
}
}
for(counter = 0; counter < qnum; counter++){
if(answer[counter] == correct[counter]){
corr_counter++;
}
}
cout<<"Score: "<<corr_counter<<"\n";
return(0);
}

最佳答案

你还没有初始化corr_counter

您在顶部声明它,但您从未将它初始化为 0,这正是您想要做的。因此,您是从一个未知的起点递增的。

关于c++ - 检查字符数组 - 每次都返回相同的答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30485842/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com