鱼C论坛

 找回密码
 立即注册
查看: 1496|回复: 5

[已解决]求大佬详细解释

[复制链接]
发表于 2022-6-26 22:40:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>
int main()
{
        double score[][4]={{60.0,70.0,80.5,90.5},{56.0,89.0,67.0,88.0},{34.2,78.5,90.0,88.5}};
        double *search(double(*pointer)[4],int n);                       
        double *p;                                                                       
        int i,m;                                                               
       
        printf("请输入学生的学号:\n");
        scanf("%d",&m);
       
        printf("学生的成绩:\n",m);
       
        p=search(score,m);                                       
        for(i=0;i<4;i++)
        {
                printf("%5.2f\t",*(p+i));                       
         }
         
         printf("\n\n\n");
       
}
  double *search(double(*pointer)[4],int n)        //以下函数没懂求解释       
         {
                 double *pt;                       
                 pt=*(pointer+n);                                       
                 return pt;                                                       
         }
最佳答案
2022-6-27 09:48:04
double *search(double(*pointer)[4],int n)        //double (*pointer)[4]是一个指向double型二维数组的指针   
         {//n应该是你想找的行数
                 double *pt;                       
                 pt=*(pointer+n);        //等同于pt=&pointer[n]                              
                 return pt;         //返回那一行所在位置,用于读取数据                                             
         }
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-6-27 09:48:04 | 显示全部楼层    本楼为最佳答案   
double *search(double(*pointer)[4],int n)        //double (*pointer)[4]是一个指向double型二维数组的指针   
         {//n应该是你想找的行数
                 double *pt;                       
                 pt=*(pointer+n);        //等同于pt=&pointer[n]                              
                 return pt;         //返回那一行所在位置,用于读取数据                                             
         }
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-6-27 22:52:13 | 显示全部楼层
[4] //这个4 是啥意思?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-6-28 06:48:21 | 显示全部楼层
看到被选成最佳答案了,过来看看。
printf("学生的成绩:\n",m);
可以改成
printf("学生的成绩:\n");
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-6-30 23:48:44 | 显示全部楼层
ExiaGN001 发表于 2022-6-28 06:48
看到被选成最佳答案了,过来看看。
printf("学生的成绩:\n",m);
可以改成

那个(*pointer)[4]  是个啥意思研究了半天没懂
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-7-1 06:47:02 | 显示全部楼层
本帖最后由 ExiaGN001 于 2022-7-1 06:48 编辑
小明同学吖 发表于 2022-6-30 23:48
那个(*pointer)[4]  是个啥意思研究了半天没懂


(*pointer)是个指针
(*pointer)[4]就是一个指针,但是告诉系统这个指针指向的是一个有4个double型变量数组
所以说(*pointer)[4]就是二维数组的另一种形式
(11点还在逛论坛啊)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-23 12:46

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表