鱼C论坛

 找回密码
 立即注册
查看: 1047|回复: 10

[已解决]大佬们我这个怎么运行不出来啊,问题出到哪里了?

[复制链接]
发表于 2020-6-5 22:01:01 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
向大佬们求助
最佳答案
2020-6-6 23:50:13
本帖最后由 geen 于 2020-6-6 23:54 编辑
  1. #include <stdio.h>
  2. int main()
  3. {
  4.     int nums[4]={2,7,11,15};
  5.     int i,j,target;
  6.     int y=1;
  7.          
  8.     //输入目标值target:
  9.     printf("请输入目标值:");
  10.     scanf("%d",&target);
  11.       
  12.     for(i=0;i<4;i++)
  13.     {
  14.         for(j=0;j<4;j++)
  15.         {
  16.                 if((i<j)&&nums[i]+nums[j]==target)
  17.                 {
  18.                 printf("两个数为%d和%d \n",nums[i],nums[j]);
  19.                 printf("两个数的数组下标为%d和%d \n",i,j);
  20.                 y=0;
  21.                 }
  22.         }
  23.     }
  24.         
  25.     if(y==1)
  26.     {
  27.             printf("Not found");
  28.     }
  29.     return 0;
  30. }
复制代码

这是题目

这是题目

我写的代码,能编译,但是运行不出来

我写的代码,能编译,但是运行不出来
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-6-5 22:35:02 | 显示全部楼层
请问能不能发一下文字代码?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-5 22:38:43 | 显示全部楼层
循环那里应该错了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-5 22:43:02 | 显示全部楼层
for(i=0;i<number;i++)
    for(j=0;j<number;j++)
    {
        if(i==j)
            continue;
        else if((nums[i]+nums[j])=target)
        {
            printf("这一点你自己写的对的");
            printf("我就不打了");
            y=0;
            break;
        }
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-5 22:44:09 | 显示全部楼层
其实你的方法更好,你如果想用自己的方法,改一下if那里
if((nums[i]+nums[j])=target)
你的if少了一个括号
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-6 07:41:49 | 显示全部楼层
  1. for(i=0;i<number;i++)
  2.     for(j=0;j<number;j++)
  3.     {
  4.         if(i==j)
  5.             continue;
  6.         else if(nums[i]+nums[j]==target)
  7.         {
  8.             printf("这一点你自己写的对的");
  9.             printf("我就不打了");
  10.             y=0;
  11.             break;
  12.        }
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-6 09:35:50 | 显示全部楼层
#include<stdio.h>
int main()
{
        const int number=5;
        int nums[number],i,j,target;
        int y=1;
        //输入整形数组
        for(i=0;i<number;i++)
        scanf("%d",&nums[number]);
        //输入目标值target
        scanf("%d",&target);
       
        for(i=0;i<number-1;i++){
        for(j=i+1;j<number;j++){
                if((nums[i]+nums[j]) == target){
                        printf("两个数组为%d和%d。\n",nums[i],nums[j]);
                        printf("两个数的数组下标为%d和%d。",i,j);
                        y=0;
                        break;
                }
        }
        }
        if(y==0){
                printf("Not found");
        }
        return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-6 23:50:13 | 显示全部楼层    本楼为最佳答案   
本帖最后由 geen 于 2020-6-6 23:54 编辑
  1. #include <stdio.h>
  2. int main()
  3. {
  4.     int nums[4]={2,7,11,15};
  5.     int i,j,target;
  6.     int y=1;
  7.          
  8.     //输入目标值target:
  9.     printf("请输入目标值:");
  10.     scanf("%d",&target);
  11.       
  12.     for(i=0;i<4;i++)
  13.     {
  14.         for(j=0;j<4;j++)
  15.         {
  16.                 if((i<j)&&nums[i]+nums[j]==target)
  17.                 {
  18.                 printf("两个数为%d和%d \n",nums[i],nums[j]);
  19.                 printf("两个数的数组下标为%d和%d \n",i,j);
  20.                 y=0;
  21.                 }
  22.         }
  23.     }
  24.         
  25.     if(y==1)
  26.     {
  27.             printf("Not found");
  28.     }
  29.     return 0;
  30. }
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2020-6-7 11:46:53 | 显示全部楼层

这是什么原理?我以前的代码理论上也可以啊,但就是运行不出来
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-7 12:51:38 | 显示全部楼层
本帖最后由 geen 于 2020-6-7 12:53 编辑
巴巴鲁 发表于 2020-6-7 11:46
这是什么原理?我以前的代码理论上也可以啊,但就是运行不出来


你挺多知识点没掌握扎实哦。1.第一行const有点画蛇添足;2.代码书写不够规范严谨(容易把自己搞混乱);3.输入整形数组,for的格式是for(){},都漏掉了{};4.y值的判断。y保持原来的值(1)才是not found;还有别的小问题,可以自己一点点用代码的反馈去验证自己的想法。一步步来吧。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-8 09:05:35 | 显示全部楼层
geen 发表于 2020-6-7 12:51
你挺多知识点没掌握扎实哦。1.第一行const有点画蛇添足;2.代码书写不够规范严谨(容易把自己搞混乱) ...

谢谢,已经按你的方法进行改进
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-3 12:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表