2019春第一周作业(计算机)7.1

时间:2021-08-18 21:55:49

7-1 查找整数 (10 分)

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

输入格式:

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

输出格式:

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

输入样例1:

5 7
3 5 7 1 9
输出样例1:

2
输入样例2:

5 7
3 5 8 1 9
输出样例2:
Not Found

1.实验代码

include<stdio.h>

int main (void)
{
int i,N,X,y=0;
scanf ("%d %d",&N,&X);
int a [N];
for (i=0; i<N; i++) {
scanf ("%d",&a [i]);
}

 for (i=0; i<N; i++) {
    if (a [i]==X){
     printf ("%d",i);
     y=1;
    }   
}
 if(y==0)
 printf ("Not Found");

return 0;

}

2. 设计思路

2019春第一周作业(计算机)7.1

3. 调试过程碰到问题及解决办法

2019春第一周作业(计算机)7.1
2019春第一周作业(计算机)7.1

在这个过程中,虽然我思路很清晰,但是还是遇到很多问题,就是在输出结果的时候错了,原因是我本想使用if else语句的,后来发现,else一直放在for语句里面,所以每次输出好几个重复结果,行不通之后,就运用了计数器将它编出来了,一句话,这题看起来简单,但知识不扎实很容易错,还得继续努力。

4.运行结果截图

2019春第一周作业(计算机)7.1

7-2求最大值及其下标

本题要求编写程序,找出给定的n个数中的最大值及其对应的最小下标(下标从0开始)。

输入格式:

输入在第一行中给出一个正整数n(1<n≤10)。第二行输入n个整数,用空格分开。

输出格式:

在一行中输出最大值及最大值的最小下标,中间用一个空格分开。

输入样例:

6
2 8 10 1 9 10
输出样例:

10 2

1).实验代码

include<stdio.h>

int main (void)
{
int i, index, n;
scanf ("%d",&n);

int a [10];
for (i=0;i<n;i++)
   scanf ("%d",&a [i]);
for (index=0;index<n;index++)
{
    if (a[0]<a[index])
    {
        a[0]=a[index];
        i=index;
    }
    else if (a[0]==a[index])
    {
        a[0]=a[index];
        if (i>index)
        {
            i=index;
        }
    }
}
printf ("%d %d",a[0],i);

return 0;      

}

2) 设计思路

2019春第一周作业(计算机)7.1

3)本题调试过程碰到问题及解决办法

本题一遍过,但是做了很久,所以没有错误截屏
2019春第一周作业(计算机)7.1

4).运行结果截图

2019春第一周作业(计算机)7.1

5) 学习进度条

周/日期 这周所花时间 代码行数 学到的知识简介 目前比较迷惑的问题
第一周 六个小时左右 102 学习了数组 对于数组的使用不太熟悉

6)学习感悟

学习了之后感觉自己还有很多不足,未来要多向大佬们学习