程序设计分组训练 实验报告1

1. 代码A的调试实验

1.1 变量监视

(1)断点调试监控

在Dev c++中在第28行设置断点,进行调试,将代码A中所示变量进行监视并将数据初始值记录在表一中

表1 数据初始值表(在第一个for循环执行前,监控到的各个变量值)

变量/常量名 监视值 变量/常量名 监视值 变量/常量名 监视值 变量/常量名 监视值
a { {1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}, {13, 14, 15, 16}} p (int (*)[4]) 0x65fdd0 *p {1, 2, 3, 4} *a {1, 2, 3, 4}
a[0] {1, 2, 3, 4} p[0] {1, 2, 3, 4} *(p+0) {1, 2, 3, 4} *(a+0) {1, 2, 3, 4}
a[1] {5, 6, 7, 8} p[1] {5, 6, 7, 8} *(p+1) {5, 6, 7, 8} *(a+1) {5, 6, 7, 8}
a[3] {13, 14, 15, 16} p[3] {13, 14, 15, 16} *(p+3) {13, 14, 15, 16} *(a+3) {13, 14, 15, 16}
&a[0][0] (int *) 0x65fdd0 p[0]+0 (int *) 0x65fdd0 *p+0 (int *) 0x65fdd0 *a {1, 2, 3, 4}
&a[0][1] (int *) 0x65fdd4 p[0]+1 (int *) 0x65fdd4 *p+1 (int *) 0x65fdd4 *a+1 (int *) 0x65fdd4
&a[0][2] (int *) 0x65fdd8 p[0]+2 (int *) 0x65fdd8 *p+2 (int *) 0x65fdd8 *a+2 (int *) 0x65fdd8
&a[0][3] (int *) 0x65fddc p[0]+3 (int *) 0x65fddc *p+3 (int *) 0x65fddc *a+3 (int *) 0x65fddc
&a[1][0] (int *) 0x65fde0 p[1]+0 (int *) 0x65fde0 *p+4 (int *) 0x65fde0 *a+4 (int *) 0x65fde0
&a[1][1] (int *) 0x65fde4 p[1]+1 (int *) 0x65fde4 *p+5 (int *) 0x65fde4 *a+5 (int *) 0x65fde4
&a[1][2] (int *) 0x65fde8 p[1]+2 (int *) 0x65fde8 *p+6 (int *) 0x65fde8 *a+6 (int *) 0x65fde8
&a[1][3] (int *) 0x65fdec p[1]+3 (int *) 0x65fdec *p+7 (int *) 0x65fdec *a+7 (int *) 0x65fdec
&a[2][0] (int *) 0x65fdf0 p[2]+0 (int *) 0x65fdf0 *p+8 (int *) 0x65fdf0 *a+8 (int *) 0x65fdf0
a[0][0] 1 *p[0] 1 **p 1 *a[0] 1
a[0][1] 2 *(p[0]+1) 2 *(*p+1) 2 *(a[0]+1) 2
a[0][3] 4 *(p[0]+3) 4 *(*p+3) 4 *(a[0]+3) 4
a[1][0] 5 p[1][0] 5 *(*p+4) 5 *(a[0]+4) 5

根请据表1监控到的数据,分析变量p的特点,类比表1的形式,将表2补充填写完毕;

表2 数据初始值表(在第一个for循环执行前,监控到的各个变量值)

变量/常量名 监视值 变量/常量名 监视值 变量/常量名 监视值 变量/常量名 监视值
a <不用填> p <不用填> *p <不用填> *a <不用填>
a[3][0] 13 p[3][0] 13 *(*(p+3)+0) 13 *(*(a+3)+0) 13
a[3][1] 14 p[3][1] 14 *(*(p+3)+1) 14 *(*(a+3)+1) 14
a[3][2] 15 p[3][2] 15 *(*(p+3)+2) 15 *(*(a+3)+2) 15
a[3][3] 16 p[3][3] 16 *(*(p+3)+3) 16 *(*(a+3)+3) 16
(2)在语句"int *q = a[0];"后插入以下代码

尝试在语句"int *q = a[0];"后插入以下代码,看程序是否能够正常编译,如果无法编译,报什么错误。

int b[4][4] = {
   {
   9,19,29,39},{
   8,18
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值