C语言程序设计作业06

C语言程序设计作业06

|

这个作业要求在哪里https://pintia.cn/problem-sets/1603042333342580736
我在这个课程的目标是熟练掌握C语言课程知识并懂得如何运用,为以后的专业课打下基础
这个作业在那哪个具体方面帮助我实现目标这个作业可以帮助我更加懂得C语言编程原理,加深对C语言的了解
参考文献C语言程序设计

1.PTA实验作业

1.1指向函数的指针

分析下面代码,体会 理解 指向函数的指针

#include<stdio.h>
int max(int a,int b){
if(a>b) return a;
else return b;
}
int main(){
int(*pf)();
int x=5,y=8,z;
pf=max;
z=(*pf)(x,y);
printf(“max=%d”,z);
return 0;
}
执行程序,输出:
max=8

1.1.1数据处理

1 数据表达 定义了int a,int b,int *pf,int x,int y,int z变量进行计算
2 数据处理
在这里插入图片描述

1.1.2实验代码截图

在这里插入图片描述

1.1.3造测试数据

在这里插入图片描述

1.1.4 PTA提交列表及说明

个人感觉这道题刚看到的时候有点难,无从下手,不知道怎么去切入。后面做了一些尝试,发现这其实是一道验证性的题目,然后前面的疑惑就消除了。

1.2 指向函数的指针代码分析

代码分析 指向函数的指针代码分析
请分析以下代码,理解函数指针变量。
#include<stdio.h>
int add(int a,int b){return a+b;}
int sub(int a,int b){return a-b;}
int mul(int a,int b){return a*b;}
int div(int a,int b){
if(b==0){
printf(“Error:Divide by zero.”);
exit(0);
}
return a/b;
}
int error(int a,int b){
printf(“Error:Expression undefined!”);
exit(0);
}
int main(){
int x,y,z;
char op=‘#’;
int(fun)(int,int);
scanf(“%d%c%d”,&x,&op,&y);
switch(op){
case ‘+’: fun=add; break;
case ‘-’: fun=sub; break;
case '
': fun=mul; break;
case ‘/’: fun=div; break;
default: fun=error;
}
z=(*fun)(x,y);
printf(“Result=%d\n”,z);
return 0;
}
执行程序输入:
1+2
输出:
Result=3
再次执行输入:
9-8
输出:
Result=1
再次执行输入:
9/0
输出:
Error:Divide by zero.
再次执行输入:
1H2
输出:
Error:Expression undefined!

1.2.1数据表达

1 数据表达 定义了int a,int b,int x,int y,int z,变量进行计算
2 数据处理
在这里插入图片描述

1.2.2实验代码截图

在这里插入图片描述
在这里插入图片描述

1.2.3造测试数据

在这里插入图片描述

1.2.4 PTA提交列表及说明

经过了7.1的题目,我看到这道题的时候就已经醒悟很多了,知道又是一道验证性的题,所以整个代码打下来还好,但是主要是对指向函数的指针代码的理解还有很多不懂。

2 学习总结

2.1 学习进度条

在这里插入图片描述

2.2 学习内容和感悟
2.2.1 学习内容总结

学习内容总结:本周学习了指针与数组

2.2.2 学习体会

指针这一章节感觉还是蛮抽象蛮有难度的,而且还是线上课,所以说目前面临的挑战还是挺大的。同时,也临近期末,对于整个科目的总复习也快要开始了,现阶段的学习任务还是比较重的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值