本题要求从输入的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
#include<stdio.h>
int main()
{
int n,x,a[20],c=0;
scanf("%d%d",&n,&x);
for(int i=0;i<n;i++)
{
scanf("%d",&a[i]);
if(x==a[i])
{
printf("%d",c);
break;
}
c++;
}
if(c==n)
printf("Not Found");
return 0;
}
2) 设计思路:整体运用数组(for循环)输入n个数,用if语句做判断找出所需要的数,用一个量计数并判断是否找到所需断的数
3)遇到的问题及其解决方法:
4)运行截图
本题要求编写程序,找出给定的n个数中的最大值及其对应的最小下标(下标从0开始)。
输入格式:
输入在第一行中给出一个正整数n(1<n≤10)。第二行输入n个整数,用空格分开。
输出格式:
在一行中输出最大值及最大值的最小下标,中间用一个空格分开。
输入样例:
6
2 8 10 1 9 10
输出样例:
10 2
1)实验代码
#include<stdio.h>
int main()
{
int n,b,a[10],c=0;
scanf("%d",&n);
scanf("%d",&b);
for(int i=0;i<n-1;i++)
{
scanf("%d",&a[i]);
if(a[i]>b)
{
b=a[i];
c=i+1;
}
}
printf("%d %d",b,c);
return 0;
}
2)设计思路:找最大值问题,先输入一个数,再与for循环中输入的剩下的数比较,for循环中设置一个量计数来判断最大值的位置
3)遇到的问题及其解决方法:怎样计数找准最大值的位置,我尝试了几次,最终发现可以用循环中的i通过计算得出,设置if
条件,当比较大小妹每变换一次,最大值得位置下标会着i变化
4)运行截图