Ⅰ c语言编程,判断一个数是否存在于一个数组中
#define _CRT_SECURE_NO_DEPRECATE
#include<stdio.h>
#include<malloc.h>
#include<time.h>
#include<stdlib.h>
int findarray(int*p,int len,int val);
int main(void)
{
int len; //数组中元素个数
int i=0; //数组元素下标
int val; //要搜索的数
printf("请为一个随机数数组设定元素个数len=");
scanf("%d", &len);
int*p = (int*)malloc(sizeof(int)*(len+1));
for (i = 0; i < len;++i)
{
p[i]=rand()%101; //0到100的随机数
}
printf("已为你生成随机数组为:\n");
for (i = 0; i < len; ++i)
{
printf("%d ", p[i]);
}
printf("\n");
printf("请输入你要搜索的数val=");
scanf("%d", &val);
if (findarray(p, len, val) == len)
printf("数组中无此元素");
else
printf("数组中有这个元素,在第%d个位置", findarray(p, len, val) + 1);
getchar();
getchar();
return 0;
}
int findarray(int*p, int len,int val)
{
p[len] = val;
for (int i = 0; p[i] != val; ++i)
{
if (p[i] == val)
return i;
}
}
Ⅱ c语言在数组中查找是否存在该数,若存在则显示其所在的数组下标位置,否则显示NOEXIST
indx=search(a[N],m,N); \\这一行不知道有没有错,为什么不能写a[]
这句是错的,为什么? a[N]这里是取数组a的第N个数,search 第一个参数要传入的是个数组,a就是个数组呀。所以
改成 indx=search(a,m,N); 就可以了
Ⅲ C语言矩阵数组判断数是否存在
首先我没看到你初始化二维数组a[m][n],另外for语句的判断语句和条件语句写反了,应该是for(i
=
0;i
<
m;i++),你那种写法当然会一直循环。
Ⅳ C语言中是否存在多维数组
多维数组只是一种说法,其实只不过是特殊的一维数组而已。只是说,这个特殊的一维数组的每个元素的类型不是常规的int、float等这些基本类型。而是obj这些特殊的类型。
Ⅳ 给定一个数组,数组内容随机,键盘输入一个数据(数字和单字符),查询是否存在此数据 c语言代码怎么写
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 50
int inarr(int a[],int n,int num) {
int i;
for(i = 0;i < n; ++i)
if(a[i] == num) return 1;
return 0;
}
void show(int a[],int n) {
int i;
for(i = 0; i < n; ++i) {
if(i && i % 10 == 0) printf(" ");
printf("%d ",a[i]);
}
if(i % 10) printf(" ");
printf(" ");
}
int main() {
int a[N],num,i,n;
printf("n = ");
scanf("%d",&n);
if(n < 1) n = N/5;
if(n > N) n = N;
printf("请输入%d个整数(空格隔开):",n);
for(i = 0; i < n; ++i) scanf("%d",&a[i]);
printf("数组清单: ");
show(a,n);
printf("请输入要查找的数:");
scanf("%d",&num);
if(inarr(a,n,num)) printf("找到了! ");
else printf("对不起,数组a[]中没找到%d ",num);
return 0;
}
Ⅵ c语言,查找数组中是否存在某个数
从题目的叙述来看,这个函数的功能就是这一个包含有len个元素的num数组中查找是否存在值为key的元素。可以在找到后返回该元素的下标,否则返回-1。
这个函数的函数体可以这么写:
int i;
for(i=0;i<len;i++)
if(num[i]==key)return i;
return -1;
然后在主函数中的查找语句可以这么写:
if(searchNum(key,num,len)!=-1)
printf("找到!\n");
Ⅶ C;语言一题:判断一个数是否存在数组中,若存在输出位置,若不存在,输出-1
#include <stdio.h>
int main()
{
int find = 0;
int pos = 0;
int arr[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
printf("请输入要查找的数字:");
scanf("%d", &find);
printf("数组元素有:\n");
for (int i = 0; i < 10; i++)
{
printf("%d ", arr[i]);
if (arr[i] == find)
{
pos = i;
}
}
printf("\n");
if (pos == 0)
printf("(-1)没有该数字!\n");
else
printf("该数字在第%d位!\n", pos + 1);
return 0;
}
Ⅷ C语言:在十个元素的数组中,判断某数是否存在。
int
数组[]={1,2,3,4,5,6,7,8,9,0},序(0);
do{scanf_s("%d",
&整数);if(整数==数组[序++]){printf("存在元素%d:",
整数);break;}}while(序<10);printf("不存在元素%d:",
整数);
以上手写原理未运行,如果运行有问题再说。
Ⅸ 查找数组元素是否存在c语言
bool find_elem(int *a, int len, int val)
{
int i = 0;
for (i = 0; i < len; ++i)
{
if (a[i] == val)
return true;
}
return false;
}