第一次作业
1、写程序证明P++等价于(p)++还是等价于*(p++)?
#include <stdio.h>
int main(){
int *p, a = 1;
p = &a;
printf("(p)++ = %d\n",(p)++);
printf("p++ = %d\n",p++);
printf("*(p++) = %d\n",*(p++));
return 0;
}
题目1 计算两数的和与差
1 设计思路
(1)第一部:审题,看裁判给出的代码是什么意思,然后需要我们做什么。
第二部:根据题意写出函数内容。
(2)流程图
2 实验代码
void sum_diff( float op1, float op2, float *psum, float *pdiff )
{
*psum=op1+op2;
*pdiff=op1-op2;
}
3.本题调试过程碰到问题及解决办法
无
题目2 拆分实数的整数与小数部分
1 设计思路
(1)第一步:调用函数intpart,fracpart定义变量x
第二步:将变量x的整数部分和小数部分进行拆分
(2)流程图
无
2 实验代码
void splitfloat( float x, int *intpart, float *fracpart )
{
*intpart = x/1;
*fracpart = x - *intpart;
}
3.本题调试过程碰到问题及解决办法
无
题目3 在数组中查找指定元素
1 设计思路
(1)第一步:定义数组,并对数组元素进行赋值
第二步:查找指定位置的元素
第三步:查找指定元素的位置
(2)流程图
2 实验代码
int search( int list[], int n, int x )
{
int i ;
for(i = 0;i<n;i++)
{
//while("i=0 , i <= n , i ++");
if(list[i]==x)
return i;
}
//if(list[i]!=x)
//while("i=0 , i <= n , i ++");
return -1;
}
3.本题调试过程碰到问题及解决办法
无
题目4 找最大值及其下标
1 设计思路
(1)第一步:定义max
第二步:利用for循环遍历数组
第三步:循环结束
(2) 流程图
2 实验代码
int fun(int *a,int *b,int n)
{
int max,i;
for(i=0;i<n;i++)
if(max<a[i])
{
max = a[i];
*b =i ;
}
return max;
}
3.本题调试过程碰到问题及解决办法
无
题目5 最小数放前最大数放后
此题不会
题目6 指针选择法排序
1 设计思路
(1)第一步:遍历数组元素,找出最大值。
第二步:与第一个数组交换,以此类推
2 流程图
3.本题调试过程碰到问题及解决办法
无
题目7 判断回文字符串
pta总是编译错误,不会。
题目8 使用函数实现字符串部分复制
此题不会
学习总结和进度
1 本周我们学习了指针,在以前的内容中加入指针,使其编写更简便
2 玩不明白
3 http://www.cnblogs.com/wwb986187/p/8635502.html王文博
http://www.cnblogs.com/chenxidream/p/8562097.html#3931732李伍壹
http://www.cnblogs.com/Vinecy/p/8619059.html申怡苗
4