执行的时候int a[n],i,flag=1;那里出了问题,求指点

编程题

7-5 查找整数(10 分)

本题要求从输入的N个整数中查找给定的X。如果找到,输出X的位置(从0开始数);如果没有找到,输出“Not Found”。

输入格式:

输入在第一行中给出两个正整数N(≤20)和X,第二行给出N个整数。数字均不超过长整型,其间以空格分隔。

输出格式:

在一行中输出X的位置,或者“Not Found”。

代码如下:

#include <stdio.h>


int main()

{

    int n, x;                      //输入n个数,找x 

    scanf("%d %d", &n, &x);

    

    int a[n], i, flag = 1;         //将n个数存在a数组里 

    for(i = 0; i < n; i++) {

        scanf("%d", &a[i]);

        if(a[i] == x) {

            printf("%d", i);       //当a[i]等于x时,输出i 

            flag = 0;

        }

    }

    if(flag == 1) {                //当数组a循环完后没有找到x 

        printf("Not Found");

    }

    

    return 0;

}


名不见经传的小菜鸟
浏览 2308回答 2
2回答

慕用4063026

#include <stdio.h>int main(){    int n, x;  //输入n个数,找x     int a[20], i, flag = 1; //将20个数存在a数组里     scanf("%d %d", &n, &x);    for(i = 0; i < n; i++) {        scanf("%d", &a[i]);        if(a[i] == x) {            printf("%d", i);       //当a[i]等于x时,输出i             flag = 0;        }    }    if(flag == 1) {                //当数组a循环完后没有找到x         printf("Not Found");    }    return 0;}输入:5 62 3 4 5 6结果:4

kevinZee

c89 不支持变量指定数组长度吧,你可以选择用malloc来手动分配内存指定数组长度
打开App,查看更多内容
随时随地看视频慕课网APP