题目一:6-1 计算两数的和与差
1.设计思路:
1.阅读题意
2.将形参带入
3.返回原函数
2.实验代码
void sum_diff( float op1, float op2, float psum, float pdiff )
{
psum = op1 +op2;
pdiff = op1 - op2;
}
3.流程图:
4.问题:
暂无。
题目二:6-2 拆分实数的整数与小数部分
1.设计思路:
1.观察各个变量在题中的意义
3.设计算法,使函数能实现将整数部分和小数部分分离的功能
4.将题目中所给的的输入案例输入 观察是否相同 如果相同不修改
实验代码
void splitfloat( float x, int intpart, float fracpart )
{
intpart = (int)x;
fracpart = x - *intpart;
}
3.流程图:
题目3: 在数组中查找指定元素
设计思路:
1.观察各个变量在题目中的意义
2.算法设计和上一题大致相同 为的是实现函数的作用
实验代码:
int search( int list[], int n, int x )
{
int i;
for(i=0; i<n; i++)
{
if(list[i] == x)
return i;
}
return -1;
}
3.流程图:
题目4: 找最大值及其下标
1.设计思路:
2.实验代码:
int fun(int *a,int *b,int n)
{
int i,t,MAX=0;
for(i=0; i<n; i++,*a++)
{
if(*a > MAX)
{
t = *a;
*a = MAX;
MAX = t;
*b = i;
}
//2 1 5 4 8 4 5 8 9 1
}
return MAX;
}
3.流程图:
不好意思发错了 打扰了 让我修改一下
3.1真.流程图:
6-2 指针选择法排序:
1.设计思路:同学帮助教学 ,暂时未完全理解
2.实验代码:
void sort(int *x,int n)
{
int z=0,b=0,temp=0,mx=0;
for(z=0;z<n-1;z++)
{
mx=z;
for(b=z;b<n-1;b++)
{
if(*(x+mx)<*(x+b))
{
mx=b;
}
}
if(mx!=z)
{
temp=*(x+mx);
*(x+mx)=*(x+z);
*(x+z)=temp;
}
}
}
流程图:暂无
ps:会尽快请教来完全理解
6-1 判断回文字符串
本题未完成。。。
6-2 使用函数实现字符串部分复制
本题未完成。。。
心得体会:根据这两周的学习,我认识到了自己在学习上的不足以及态度的松懈,在接下来的日子里,我将端正自己的态度。尽力完成学习目标,减少自己的缺点。