当前位置:网站首页>Input and output of C language pointer to two-dimensional array
Input and output of C language pointer to two-dimensional array
2022-07-07 01:54:00 【The universe is hidden in the book】
C Language use pointer to enter and input grades
// Pointer to array as function parameter
/* The example title comes from tanhaoqiang C Language programming Fifth Edition 251 page There is a class , There are three students , Learn four courses each , Calculate the total average score and the total score of a designated student And can independently judge the grades of students who fail in various subjects */
#include <stdio.h>
int main()
{
void average(float * p,int n );
void search(float(*p)[4],int n);
void score_input(float score[3][4]);
void pointer_score_input(float * p,int n);
float score[3][4];
//score_input(score);// Input of array version
pointer_score_input(score,12);// Pointer input
average(*score,12);
search(score,3);
return 0;
}
// Define the average function
void average(float * p,int n )
{
float sum=0,aver;
float * p_end;
for(p_end=p;p<p_end+n;p++)
sum=sum+(*p);
aver=sum/n;
printf(" The average score is :%f\n",aver);
}
// Define the function of finding grades
void search(float(*p)[4],int n) // there (*p)[4] Is pointing to having 4 A pointer to a one-dimensional array
{
int i,j,m,flag=0;
//printf(" The students with this grade are %d classmate \n",n);
for(j=0;j<n;j++)
{
for (i=0;i<4;i++)
if(*(*(p+j)+i)<60)
flag=1;
if(flag==1)
{
printf(" The students who fail are %d, His grades in all subjects are \n",j+1);
flag=0;
printf("\n");
for (m=0;m<4;m++)
printf(" %f",*(*(p+j)+m));// The front one *(p+n) It refers to the number of students , Back i It refers to the grade of the student's grade
}
printf("\n");
}
printf("\n");
}
// Score input function
void score_input(float score[3][4])
{
int i,j;
printf(" Please enter the student's grade ");
for(i=0;i<3;i++)
for(j=0;j<4;j++)
scanf(" %f",&score[i][j]);
printf(" Input complete \n");
}
// Pointer version input grade function
void pointer_score_input(float * p,int n)
{
float *score_pointer;
score_pointer=p+n;// Send the address to score_pointer The pointer
printf(" Please enter the student's grade \n");
for(;p<score_pointer;p++)// At this time P The address pointed to by the pointer is scored The first address
scanf("%f",p); // Write data to the specified address
printf(" Input completed \n");
}
边栏推荐
- 我如何编码8个小时而不会感到疲倦。
- C语言【23道】经典面试题【下】
- AcWing 1142. Busy urban problem solving (minimum spanning tree)
- AcWing 1142. 繁忙的都市 题解(最小生成树)
- LeetCode. Sword finger offer 62 The last remaining number in the circle
- Telnet,SSH1,SSH2,Telnet/SSL,Rlogin,Serial,TAPI,RAW
- ROS学习(21)机器人SLAM功能包——orbslam的安装与测试
- C language instance_ three
- Set WordPress pseudo static connection (no pagoda)
- 字符串转成日期对象
猜你喜欢
According to the analysis of the Internet industry in 2022, how to choose a suitable position?
C语言关于链表的代码看不懂?一篇文章让你拿捏二级指针并深入理解函数参数列表中传参的多种形式
JVM memory model
Yunna - work order management system and process, work order management specification
AcWing 1148. 秘密的牛奶运输 题解(最小生成树)
百度飞将BMN时序动作定位框架 | 数据准备与训练指南 (下)
shell脚本快速统计项目代码行数
Analyze "C language" [advanced] paid knowledge [End]
Appium自动化测试基础 — uiautomatorviewer定位工具
场景实践:基于函数计算快速搭建Wordpress博客系统
随机推荐
Baidu flying general BMN timing action positioning framework | data preparation and training guide (Part 1)
Drag to change order
ROS学习(十九)机器人SLAM功能包——cartographer
WCF基金会
Instructions for using the domain analysis tool bloodhound
AcWing 1140. Shortest network (minimum spanning tree)
编译命令行终端 swift
MySQL最基本的SELECT(查询)语句
Golang foundation - data type
Appium基础 — Appium Inspector定位工具(一)
Let's see how to realize BP neural network in Matlab toolbox
Recognition of C language array
C language instance_ three
C language instance_ two
dvajs的基础介绍及使用
Get to know MySQL for the first time
Mongodb checks whether the table is imported successfully
ROS学习(23)action通信机制
ROS学习(22)TF变换
mongodb查看表是否导入成功