C中的外壳/开关不工作
我正在为学校做一个游戏这是一个基本的吃角子老虎机,它将随机生成数字,并将数字转换为单独数组中的字符。这似乎不起作用,因为该语句被完全忽略。它没有给出正确的输出,有时它们会变成空白 输出:C中的外壳/开关不工作,c,switch-statement,C,Switch Statement,我正在为学校做一个游戏这是一个基本的吃角子老虎机,它将随机生成数字,并将数字转换为单独数组中的字符。这似乎不起作用,因为该语句被完全忽略。它没有给出正确的输出,有时它们会变成空白 输出: #包括 #包括 #包括 /* 乔治·梅森 槽 开始日期:2016年4月25日 完成日期: K博士。 */ void loadScreen(); 空隙间隔物(); void tabSpacer(); void clearsr(); int打印机(字符*,int); int randomNum(int*,int);
#包括
#包括
#包括
/*
乔治·梅森
槽
开始日期:2016年4月25日
完成日期:
K博士。
*/
void loadScreen();
空隙间隔物();
void tabSpacer();
void clearsr();
int打印机(字符*,int);
int randomNum(int*,int);
int convertNum(int*,char*,int);
int rand_int();
无效游戏();
int main(){
srand(时间(空));
int stop;
加载屏幕();
clearsr();
游戏();
scanf(“%d”,停止(&S);
}
无效游戏(){
整数标记=5,随机数[9],x,y=9;
char randomChars[9],用户输入;
随机数(随机数,9);
convertNum(randomNums,randomChars,9);
印刷机(随机字符,9);
}
整数打印机(字符*随机字符,整数y){
printf(“--------------\n”);
printf(“|%c |%c |%c |\n”,随机字符[0],随机字符[1],随机字符[2]);
printf(“|%c |%c |%c |\n”,随机字符[3],随机字符[4],随机字符[5]);
printf(“|%c |%c |%c |\n”,随机字符[6],随机字符[7],随机字符[8]);
printf(“--------------”);
}
int randomNum(int*randomNums,int y){
int x,a=0,b=9;
对于(x=0;x
你忘了保持休息代码>在每个案例之后,它将运行所有案例,即从案例1到案例9。
最后它将保存randomChars[x]='~'代码>(案例9)
编辑:
- 当不返回任何值时,为什么函数返回类型为
int
。将int
更改为void
- 函数
game()
未在main()之前声明
- 我得到如下输出:
你忘了保持中断代码>在每个案例之后,它将运行所有案例,即从案例1到案例9。
最后它将保存randomChars[x]='~'代码>(案例9)
编辑:
- 当不返回任何值时,为什么函数返回类型为
int
。将int
更改为void
- 函数
game()
未在main()之前声明
- 我得到如下输出:
此外,您似乎忘记在几个函数中使用y
。另外,添加srand(time(NULL))
在main
@CoolGuy的开头,我似乎仍然得到相同的输出。我在邮件上更新了代码,所以您似乎忘记在几个函数中使用y
。另外,添加srand(time(NULL))
在main
@CoolGuy的开头,我似乎仍然得到相同的输出。我更新了postMy输出上的代码似乎仍然是相同的为什么在不返回任何值的情况下使用int
返回类型。将其更改为void game()
。我从您发布的图像中获得了不同的输出。检查我的编辑。抱歉仍然得到相同的东西NVM这是固定的只是重命名了源文件名!谢谢你,所以我的输出看起来还是一样的,为什么在不返回任何值的情况下使用int
返回类型。将其更改为void game()
。我从您发布的图像中获得了不同的输出。检查我的编辑。抱歉仍然得到相同的东西NVM这是固定的只是重命名了源文件名!多谢各位
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
/*
George Mason
Slots
Date Started: 4/25/16
Date Finished:
Dr K.
*/
void loadScreen();
void spacer();
void tabSpacer();
void clearScr();
int printMachine(char*, int);
int randomNum(int*, int);
int convertNum(int*, char*, int);
int rand_int();
void game();
int main(){
srand(time(NULL));
int stop;
loadScreen();
clearScr();
game();
scanf("%d", &stop);
}
void game(){
int tokens = 5, randomNums[9], x, y = 9;
char randomChars[9], userInput;
randomNum(randomNums, 9);
convertNum(randomNums, randomChars, 9);
printMachine(randomChars, 9);
}
int printMachine(char* randomChars, int y){
printf("-------------\n");
printf("| %c | %c | %c | \n", randomChars[0], randomChars[1], randomChars[2]);
printf("| %c | %c | %c | \n", randomChars[3], randomChars[4], randomChars[5]);
printf("| %c | %c | %c | \n", randomChars[6], randomChars[7], randomChars[8]);
printf("-------------");
}
int randomNum(int* randomNums, int y){
int x,a = 0, b = 9;
for(x = 0; x < y; x++){
randomNums[x] = ((rand() % (b-a+1)) + a);
}
}
int convertNum(int* randomNums, char* randomChars, int y){
int x;
for(x = 0; x < 9; x++){
switch(randomNums[x]){
case 1:
randomChars[x] = '@';
break;
case 2:
randomChars[x] = '#';
break;
case 3:
randomChars[x] = '$';
break;
case 4:
randomChars[x] = '+';
break;
case 5:
randomChars[x] = '&';
break;
case 6:
randomChars[x] = '*';
break;
case 7:
randomChars[x] = '?';
break;
case 8:
randomChars[x] = '!';
break;
case 9:
randomChars[x] = '~';
break;
default:
randomChars[x] = 'e';
break;
}
}
}
void loadScreen(){
int x;
for(x = 0; x < 3; x++){
spacer();
}
tabSpacer();
printf("Please wait 5 seconds while we load the saved data.\n");
tabSpacer();
printf(" If there is no saved data one will be created.");
sleep(5);
}
void spacer(){
int x;
for(x = 0; x < 3; x++){
printf("\n");
}
}
void tabSpacer(){
printf("\t ");
}
void clearScr(){
system("cls");
}
case 1:
randomChars[x] = '@';
break;
case 2:
randomChars[x] = '#';
break;
.
.
.
.
case 7:
randomChars[x] = '?';
break;
case 8:
randomChars[x] = '!';
break;
case 9:
randomChars[x] = '~';
break;