当前位置:网站首页>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");
}
边栏推荐
- The difference between Tansig and logsig. Why does BP like to use Tansig
- JS how to quickly create an array with length n
- JS Es5 can also create constants?
- The use of video in the wiper component causes full screen dislocation
- Make DIY welding smoke extractor with lighting
- BigDecimal 的正确使用方式
- AcWing 904. Wormhole solution (SPFA for negative rings)
- LeetCode. Sword finger offer 62 The last remaining number in the circle
- CISP-PTE之命令注入篇
- uva 1401 dp+Trie
猜你喜欢

ROS学习(二十)机器人SLAM功能包——rgbdslam的安装与测试

百度飞将BMN时序动作定位框架 | 数据准备与训练指南 (下)

Let's see how to realize BP neural network in Matlab toolbox

Analyze "C language" [advanced] paid knowledge [End]

How can I code for 8 hours without getting tired.

LeetCode. Sword finger offer 62 The last remaining number in the circle

Basic introduction and use of dvajs

场景实践:基于函数计算快速搭建Wordpress博客系统

C语言关于链表的代码看不懂?一篇文章让你拿捏二级指针并深入理解函数参数列表中传参的多种形式

【唯一】的“万字配图“ | 讲透【链式存储结构】是什么?
随机推荐
Set WordPress pseudo static connection (no pagoda)
Yiwen takes you into [memory leak]
Appium foundation - appium inspector positioning tool (I)
ROS学习(24)plugin插件
AcWing 345. Cattle station solution (nature and multiplication of Floyd)
刨析《C语言》【进阶】付费知识【完结】
Drag to change order
拖拽改变顺序
Modify the system time of Px4 flight control
ROS学习(十九)机器人SLAM功能包——cartographer
JS es5 peut également créer des constantes?
AcWing 1140. 最短网络 (最小生成树)
C language instance_ five
AcWing 1140. Shortest network (minimum spanning tree)
ROS学习(二十)机器人SLAM功能包——rgbdslam的安装与测试
When grep looks for a process, it ignores the grep process itself
AcWing 345. 牛站 题解(floyd的性质、倍增)
Golang foundation - data type
sql中批量删除数据---实体中的集合
Add PDF Title floating window