标题:新手求助 error C2109: 下标要求数组或指针类型
取消只看楼主
adyw2565876
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2014-6-16
结帖率:0
已结贴  问题点数:10 回复次数:1 
新手求助 error C2109: 下标要求数组或指针类型
程序代码:
#include<stdio.h>
#include<stdlib.h>
#define MAX_TERMS 101 /*maxmum number of terms +1*/
typedef struct {
        int col;
        int row;
        int value;
        }  term;
term a[MAX_TERMS];
void read_matrix (term a[]);
void print_matrix (term a[], int *p);
int  search (int *p,int searchnum);

void main(void)
{   
    int searchnum;
    int *p;
    term a[MAX_TERMS]={{6,6,8},{0,0,15},{0,3,22},{0,5,-15},{1,1,11},{1,2,3},{2,3,-6},{4,0,91},{5,2,28}};/* 结构数组的初始化 */
    /* 把三元组读入到一个新的稀疏矩阵p[]中去 */
    read_matrix (a);
    /* 打印出稀疏矩阵的各项 */
    print_matrix(a,p);
    /* 在稀疏矩阵中查找指定的值 */
    printf("请输入所要查找的指定值searchnum %d",&searchnum);
    search (p,searchnum);
}


void read_matrix (term a[])
    /* 把三元组读入到一个新的稀疏矩阵p[][]中去 */
{
    int i,j,currentp,p_row,p_col;
    int p[10][10];
    p_row=a[0].row;p_col=a[0].col;
    /* 先将稀疏矩阵p初始化为0矩阵 */
    for (i=0;i<p_row;i++)
        for (j=0;j<p_col;j++)
            p[i][j]=0;  /* 此处出现错误error C2109: 下标要求数组或指针类型 */
    /* 为矩阵p中非零的元素赋值 */
    for (currentp=1;currentp<=a[0].value;currentp++)
        p[a[currentp].row][a[currentp].col]=a[currentp].value;
}

/* 打印出稀疏矩阵的各项 */
void print_matrix (term a[], int *p)
{
    int i,j,k;
    for (i=0;i<a[0].row;i++)
        for (j=0;j<a[0].col;j++)
            printf("%d ",p[i][j]);
        printf("\n");        
}

/* 在稀疏矩阵中查找指定的值 */
int  search (int *p,int searchnum)
{
    int i,j;
    for (i=0;i<a[0].row;i++)
        for (j=0;j<a[0].col;j++)
            if (searchnum==p[i][j])
            {
                printf("查找指定值 %d 在稀疏矩阵中的位置为: p[%d][%d]",searchnum,i,j);
            return 1;
            }
            else 
            {
                printf("稀疏矩阵p中找不到指定值 %d\n",searchnum);
            return -1; 
            }
}


[ 本帖最后由 adyw2565876 于 2014-7-20 12:54 编辑 ]
搜索更多相关主题的帖子: color terms number 
2014-07-20 12:53
adyw2565876
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2014-6-16
得分:0 
回复 2 楼 砖家的谎言
那是什么错误?
2014-07-20 15:58



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-434220-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.075180 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved