cccwwt 2022-02-09 18:01 采纳率: 66.7%
浏览 38
已结题

输入十个整数,再输入一个整数,寻找该整数第一次出现的位置

#include<stdio.h>
int main()
{
    int i,x,a[10];
    printf("请输入10个整数:\n");
    for (i=0;i<=9;i++)
    scanf("%d",&a[i]);
    printf("请输入要寻找的数字:\n");
    scanf("%d",&x);
    printf("x=%d\n",x);
    while (i<=9&&x!=a[i])
    i++;
    if (x!=a[i])
    printf("没找到!");
    else 
    printf("第一次出现的位置是%d",i+1);
    return 0;
}

运行结果及报错内容

if后面的语句不知道该怎么限制范围

我的解答思路和尝试过的方法

尝试了很多种可能,但结果始终是11



我想要达到的结果
  • 写回答

2条回答 默认 最新

  • 关注

    循环查询之前,i要重新初始化,修改后的代码如下:

    
    #include<stdio.h>
    int main()
    {
        int i,x,a[10];
        printf("请输入10个整数:\n");
        for (i=0;i<=9;i++)
        scanf("%d",&a[i]);
        printf("请输入要寻找的数字:\n");
        scanf("%d",&x);
        printf("x=%d\n",x);
        i=0;//初始化
        while (i<=9&&x!=a[i])
        i++;
        if (x!=a[i])
        printf("没找到!");
        else 
        printf("第一次出现的位置是%d",i+1);
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 2月17日
  • 已采纳回答 2月9日
  • 创建了问题 2月9日