问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

这段代码错在哪里?

发布网友 发布时间:2022-05-20 11:16

我来回答

1个回答

热心网友 时间:2023-10-17 10:58

"
#include "stdlib.h"

int main()
{
/*Start by declaring arrays and pointers*/
char guessNumber[4]=, userGuess(我用了缩写,不然太麻烦)[4]; int a; char *origin=guessNumber, (无需指针)*user=userGuess;
/*for (a=0;a<4;a++)
{
srand(a);
guessNumber[a]=rand()%9; (我已经帮你改成随机产生了)

printf("%d",guessNumber[a]);
}*/
/*Initialization end*/
/*introction starts*/ (注释太多,影响阅读)
printf("Hello and welcome to \'GUESS MY NUMBER\'\n");
printf("If you are right on both positon and value, you receive B.\n");
printf("If you are right on value but not position, you receive S.\n");
printf("Good luck!\n"); (规则帮你改的更明确了)
/*introction end*/
/*Core coding starts*/
int tryCount=0, maxTry=20, temp, i, j, count_B=0, count_S=0;
char *P=origin, *U=user;
for(tryCount=0;tryCount<20;tryCount++)
{
printf("\nWhat's the number:**** ");
/*Loop for user input*/
for(temp=0;temp<4;temp++)
scanf("userGuess[temp]"); (用户数据输入的代码有问题,已经帮你改了)
temp=0; //Set temp back to zero for next loop
for(i=0;i<4;i++) /*i for guessNumber*/
{

for(j=0;j<4;j++) /* j for userGuess*/
{

if((i==j)&&((*P)+i)==((*U)+j)) /*if position and number match*/
count_B++; /*B++*/
else if((i!=j)&&(*(P)+i)==(*(U)+j)) /*If number match*/ (这里有问题,只要*P==*U就可以了,你为什么加了i和j呢? )
count_S++; /*S++*/
}
}
if(count_B==4)
{ (猜对,输出祝贺语句)
//All code goes here....
tryCount=100; break;
}
printf("\n%dB%dS",count_B, count_S);
(输出提示,之后要清零,不然B和S会累加)
}
(我帮你加入了重复猜的代码,不过没有修补漏洞,输入时如果你输入负号(-),或者小数点(.)或者超过4位的数,比如1598546,程序会出问题的)

}
修改后的程序代码:
#include "stdio.h"
#include "stdlib.h"
#include "iostream.h"
int main()
{
int gn[4],ug[4];//gn is short for guessnumber,ug is short for userguess.
char p;
//proce a correct number
printf("Hello and welcome to 'GUESS THE NUMBER'\n\n");
printf("The correct number consists four digits between 0~9 !!!!!!!!!\n\n");
printf("If you are right on both positon and value, you receive a B !!!!!!!!!\n");
printf("If you are right on value but not position, you receive a S !!!!!!!!!\n\n");
printf("Good luck!\n");
START: gn[0]=rand()%10;// randomly proce number between 0~9
do gn[1]=rand()%10;
while (gn[1]==gn[0]);
do gn[2]=rand()%10;
while(gn[2]==gn[1]||gn[2]==gn[0]);
do gn[3]=rand()%10;
while(gn[3]==gn[2]||gn[3]==gn[1]||gn[3]==gn[0]);
/* if the correct number is randomly proced, we should use rand() under stdlib.h
so the program is more complicated*/
//printf("\n%-2d%-2d%-2d%-2d\n\n",gn[0],gn[1],gn[2],gn[3]);

printf("\nIMPORTANT: No digits appear twice in the correct number!!!!!!!!!\n");
int tryCount=0, maxTry=20, i, j,count_B=0, count_S=0;
int n1,n2,n3,n4; //n is short for number

for(tryCount=0;tryCount<20;tryCount++) {

printf("\nThen what's your number:");

SUN: scanf("%1d%1d%1d%1d",&n1,&n2,&n3,&n4);//user input
if (n1*n2*n3*n4<0||n1*n2*n3*n4>6561)
{printf("error!!!!!!!!!");
goto SUN;}
else {}
ug[0]=n1;
ug[1]=n2;
ug[2]=n3;
ug[3]=n4;

printf("\nThe number you input is %d %d %d %d",ug[0],ug[1],ug[2],ug[3]);
printf("\nYou have tried %d times",tryCount+1);
for(i=0;i<4;i++)
{
for(j=0;j<4;j++) {
if((i==j)&&(gn[i]==ug[j]))
count_B++;
else if((i!=j)&&(gn[i]==ug[j]))
count_S++; }
}
if(count_B==4)
{ printf("\n\nYou have guessed the number!\n");
printf("\nCONGRATULATIONS!!!!!!!!!\n\n");
printf("Want to guess again?<y/n>\n");
cin>>p;
if (p=='y')
goto START;
else goto SET;
}
else printf("\n\nThe clue is %d B %d S\n",count_B, count_S);
count_B=0;
count_S=0;
}
printf("\nYou have tried 20 times, but failed to figure out the number!\n");
printf("\nThe correct number is %d %d %d %d\n",gn[0],gn[1],gn[2],gn[3]);
printf("\nWant to guess again?<y/n>\n");
cin>>p;
if (p=='y')
goto START;
else goto SET;
SET:{}
return 0;
}
学编程的 请帮我看下这段代码错在哪里 应该怎么改?

你的代码写的就不对,肯定不会有正确的输出 以下两种写法 第一种 //1!+2!+3!...+10!int sum = 0;for (int i = 1; i &lt;= 10; i++){ int mul = 1;for (int j = i; j &gt;= 1; j--){ mul *= j;} sum += mul;} System.out.println(sum);第二种 int sum=0;int ...

aippt自动生成工具

随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表类型包括柱状图、条形...

这段代码错误在哪?为什么会显示最后一行 “语法错误,将”{“插入到完整...

这只是一个ide没及时刷新的问题,你粘到记事本重新再弄进来就好了,遇到过

这段java代码提示出错,请问到底是哪里出错了,怎么解决

一共三个错误:第一:函数的格式是访问修饰符(public之类) 返回值(int之类) 函数名(){} 第二:函数的在其他地方调用,至少应该是:函数名()的形式。第三:静态函数可以使用类名.函数名()的方式调用,非静态函数,则应该是对象名.函数名()的方式调用 如果需要详细指导,请查看我资料的网址连接,我...

请帮忙看一下下面的这段代码错在 哪儿,编译有错误。

你代码中可能存在错误。就是头文件的引用 #include&lt;inttypes.h&gt; 这个文件一般是没有的,得自己加进去 文件内容如下 /* 7.8 Format conversion of integer types &lt;inttypes.h&gt; */#ifndef _INTTYPES_H_#define _INTTYPES_H_#include &lt;_mingw.h&gt;#include &lt;stdint.h&gt;#define __need_wchar_t#inclu...

一段C语言代码不知道错哪儿了,请高手指教

运行错误,就是程序通过编译,却在运行时出错,一般是逻辑上的问题,比如数组越界,空指针等等。比较常见的运行时错误是在做除法运算时所产生的“除数为零”错误。如下列 VB 代码:Dim a As Double, b As Double, Result As Doublea = 100b = 0Result = a / b 该程序在语法上并没有错误,...

这段java代码错在哪里,怎么改。错误提示对于结果类型为空的方法, 无法...

public void getAge() {return age;}上面这个你弄错了, 有返回值只能改成int,修改后的如下class AbstractCaseDemo02{public static void main(String args[]){Person per1 = null;Person per2 = null;per1 = new Student("张三",22,333.9f);per2 = new Worker("李四",33,5555.8f);per...

这是一个登录窗口的代码,求大神赐教,错在哪儿?

这段代码有几处错误:"Application.ScreenUpdating = False"应该放在Sub过程的最开始,并配合使用"Application.ScreenUpdating = True"来恢复正常的屏幕刷新操作。"Sheets(“警录界面”)hctivate"这里的"hctivate"拼写错误,应该是"Activate"。"Application.WindowState = xlMarimized"和"ApplicationVisible = ...

大家帮我看看这段代码的错误在哪里啊,为什么提示找不到类型或命名空间...

using System;你命名空间搞错了。[Serializable]其实是SerializableAttribute 类。

这个代码错在哪里啊?

在这段python代码中,for n in range(1, n+1):这一段循环,在第一次循环时,s = s + int(str(a) * n)此时n为1,int(str(a) * n)得到的值是a,也就是a+a,此后就演变成a + a + aa + aaa + aaa…aaa了。所以应该改成range(2, n+1) 。ps.打断点、输出日志不会可以翻...

这个代码有错误吗?如果有,错在哪?求解!

= CLng(Text1.Text)注意两个都要修改,还有,修改后最多也就计算到12,也就是12及12以下的阶乘都可以求,如果输入一个大于12的数,也会报溢出,还有这段代码没有做一个非空判断,也就是在计算的时候,如果你什么都不输入,直接计算,是会报异常的(执行代码时候出现的错误,不是语法错误)...

我到底错在哪里崔立伟 我究竟错在哪里了 我到 错在哪里 错在哪里 他错在哪里 我错在哪里蔡健东 你知道你错在哪里了吗 我们错在哪里 你说我到底错在哪里
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
mrna转录试剂盒 windows7应用程序损坏或丢失怎么办? 联想windows7怎么恢复不小心删除的应用 Win7电脑图标不见了如何恢复解决Win7电脑图标丢失问题的有效方法_百 ... 美女主播软件有哪些 什么软件看美女直播? 什么视频直播软件可以免费看女神直播? 钣金工业设计 钣金灰本段用途 关于刮胡子的相关问题 (1)1gN2中含a个分子,则阿伏伽德罗常数可以表示为______(2)现由58.5g质量分数为20%的NaCl溶液100mL① 我在博海琴看到了雅马哈GN2三角钢琴和北京珠江三角钢琴,大家帮帮选哪款好? 这段代码那里错了 珠江钢琴GN2怎么样 哪有卖GN250的啊 求虚拟按键怎么设置 微信老是出现“该使用外挂,非官方客户端和模拟器,以*登录”是什么意思?_百度问一问 什么是非官方微信客户端 微信老是出现“该使用外挂,非官方客户端和模拟器,以*登录”是什么意思?_百度问一问 微信老是出现“该使用外挂,非官方客户端和模拟器,以*登录”是什么意思? 微信下载了非官方软件请在客户端卸载是什么意思 使用非官方版本是什么意思 吃鸡!没有开挂啊? 微信老是出现该使用外挂,非官方客户端和模拟器,以*登录是什么情况?_百度问一问 微信老是出现该使用外挂,非官方客户端和模拟器,以*登录是什么情况? 微信老是出现该使用外挂,非官方客户端和模拟器,以*登录是什么情况? 我的登不上去,显示的是说我已安装了非官方客户端,这是怎么回事 非官方微信客户端是什么意思 非官方微信客户端什么意思? 微信老是出现“该使用外挂,非官方客户端和模拟器,以*登录”是什么意思? pubg非官方客户端是什么意思 a安卓模拟器如何安装电话卡 求助,BlueStacks有没有模拟SIM卡功能 安卓模拟器如何能模拟SIM卡 有没有一种软件装在智能手机或电脑上来模拟sim卡? 有没有能完全模拟安卓手机的模拟器,不是那种模拟平板的,而且可以模拟设备识别码,和sim卡!! win8.1靠谱助手安卓模拟器怎么模拟出手机SIM的信号,或者哪个模拟器能很容易模拟出来。 安卓手机有些软件叫DSP管理器、自动内存管理器、终端模拟器、Superuser、SIM卡工具,这些都是用来干什么的 谁清楚150寸169幕布尺寸是多少 幻灯片的投放尺寸 余额宝显示有钱,买东西支付不了,说钱不够,怎么回事? 支付宝里面的余额宝怎么付不了款 余额宝付不了款 去商家买货,余额宝有钱,怎么支付不了 在卖家中心交保证金,支付宝余额不足,但余额宝里余额足够,为什么付不了款? 为什么我支付宝的余额宝有钱也支付不了 新买的笔记本,蓝牙模块在哪呀? 求教笔记本电脑Thinkpad X220里的一个部件是什么 如何建个麻桨群? 我的联通卡的服务密码忘了,如何查询 山东博创知识产权服务有限公司怎么样?