c语言查询二维数组

int x,i,j;
int a[12][2]={{1988,301},{1989,282},{1990,352},{1991,260},{1992,418},{1993,568},1994,633},{1995,405},{1996,455},{1997,500},{1998,518},{1999,411}};
假如我有这么多数据,我想输入1988,就能查到301,输入1989,就能查到282,以此类推,应该怎么做

第1个回答  2013-05-22
假设输入的数存到x中了。
for(i=0;i<12;i++)
if(a[i][0]==x)
{
printf("%d",a[i][1]);
break;
}
printf("没有!");
第2个回答  2013-05-22
有一个方法,你开一个2000多的数组,让a[1988]=301,a[1989]=282。这样查起来快,不过就是比较耗空间,索引很大的话就不实际了
第3个回答  2013-05-22
这个完全定义一个结构体啊。。
当然也可以用a[x][0]来查你的1988,然后用a[x][1]来显示301
x表示查表过程中的变量追问

能不能贴出代码看看

追答

比方说查找x==1989
for(i=0;i<12;i++)
{
if(a[i][0]==x)

printf("%d\n",a[i][1]);

}

第4个回答  2013-05-22
一个for语句遍历哈数组就行了哇
第5个回答  2013-05-22
#include <stdio.h>
int main()
{
int x,i,j;
int a[12][2]={{1988,301},{1989,282},{1990,352},{1991,260},{1992,418},{1993,568},{1994,633},{1995,405},{1996,455},{1997,500},{1998,518},{1999,411}};
scanf("%d",&x);
for(i=0;i<12;i++)
if(x==a[i][0])
break;
printf("%d\n",a[i][1]);
}本回答被提问者采纳

c语言里如何查询一个二维数据表,
<< 二维数组[1][1] << endl;

c语言查询二维数组
for(i=0;i<12;i++)if(a[i][0]==x){ printf("%d",a[i][1]);break;} printf("没有!");

C语言编程:找出一个二维数组的“鞍点”,即该位置上的元素在该行上最大...
int m, int n);main(){int a[20][20]; \/\/数组储存矩阵int m,n; \/\/分别表示矩阵的行数和列数int i,j; \/\/循环变量\/\/人机交互输入数据printf("Input m,n:\\n");scanf("%d,%d",&m,&n);printf("Input matrix:\\n" );for...

急急!!!如何用c语言输入和输出一个二维数组??
int main(){ int a[2][2];int i,j;for (i=0;i<2;i++){ for (j=0;j<2;j++){ scanf("%d ",&a[i][j]);} } for(i=0;i<2;i++)for(j=0;j<2;j++)printf("%d",a[i][j]);return 0;} 运行成功

C语言二维数组怎么做:
在编程中,二维数组常用于表示二维数据结构,如表格、矩阵等。C语言中的二维数组是由多个一维数组构成的,每一维数组中的元素又可以被看作是一个一维数组的元素。例如,在上述代码中,`a[50][50]`是一个二维数组,它由50个一维数组构成,每个一维数组又包含50个元素。在本代码中,二维数组`a[50][...

C语言输入一个二维数组,找出这个二维数组的最大值
int argv,char *argc[]){int a[4][4],t,i,j;printf("任意16个整数:\\n");for(j=0;j<4;j++)for(i=0;i<4;i++){scanf("%d",&a[i][j]);if(i==0 && j==0)\/\/增加以下4行t=a[0][0];else if(t

C语言二维数组?
int main(){ int score[5][3];float ave_score_1[5];float ave_score_2[3];int i,j;int sum_score;printf("Please input the score:\\n");for(i=0;i<5;i++){ scanf("%d %d %d",&score[i][0],&score[i][1],&score[i][2]);} for(i=0;i<5;i++){ sum_score = ...

c语言二维数组 查表
const int a[2][100]={{1000,1900,2100,。。。},{500,530,560,。。。}}; const long c[2][100]={{1000*500,},{1,2,00}}; int Chazhao(int d[2][100],int b,char h) { int i; for(i=0;i<100;i++) { if(d[h&0x01][i]==b) break; } if...

如何用c语言实现二维数组?
使用 C 语言实现二维数组可以通过以下步骤:1. 声明一个二维数组变量:首先,需要声明一个二维数组变量来存储数据。声明二维数组需要指定数组的行数和列数,并可以给数组命名。2. 初始化二维数组:可以选择在声明二维数组时初始化,或者在后续的代码中初始化数组。可以使用循环结构来遍历数组的每个元素,并...

C语言如何求一个二维数组有几行,还有为什么会提示gets()是一个未定...
C语言中求一个二维数组有几行的方法如下:假设有定义int nums[10][20];二维数组行数可以用sizeof计算:rows = sizeof(nums)\/sizeof(nums[0]);第二个问题,为什么gets会提示未定义标识,有两种可能:一、编译器支持gets库函数,但是你没有包含头文件#include<stdio.h>;二、编译器本身不支持gets库...

相似回答