第一次作业

6-1 计算两数的和与差

本题要求实现一个计算输入的两数的和与差的简单函数

1,设计思路:

(1)主要描述题目算法

第一步:引用函数 void sum_diff( float op1, float op2, float *psum, float *pdiff )

第二步:将op1和op2的和赋值给pusm所指的变量sum,将op1和op2的差赋值给pdiff所指的变量diff

(2)程序图

 

(3)代码

6-2 拆分实数的整数与小数部分

本题要求实现一个拆分实数的整数与小数部分的简单函数。

1,设计思路:

(1)主要描述题目算法

第一步:引用函数 void splitfloat( float x, int *intpart, float *fracpart )

第二步:定义指针*intpart和*fracpart

第三步:*intpart是指整数部分所以*intpart=x/1

第四步:*fracpart是指小数部分所以*fracpart=x-*intpart

(2)程序图

(3)代码

 在数组中查找指定元素

本题要求实现一个在数组中查找指定元素的简单函数。

1,设计思路:

(1)主要描述题目算法

第一步:引用int search( int list[], int n, int x )

第二步:定义一个变量i,n,x,输入数组个数再输入几个数然后输入一个数在数组中查找,如果找到了就输出i并跳出这个循环,如果没找到就输出-1

(2)程序图

(3)代码

 

6-2 找最大值及其下标

在一维整型数组中找出其中最大的数及其下标。

1,设计思路:

(1)主要描述题目算法

第一步:引用int fun(int *a,int *b,int n)

第二步:把s[0]赋值给s,然后把数组中的每个数和s[0]比较,如果比s[0]大就把它赋值给s,依次比较然后找到最大值和下标

(2)程序图

 

(3)代码

int fun(int *a,int *b,int n)
{
int i;
int s=a[0];
for(i=1;i<n;i++)
{
if(s<a[i])
{
s=a[i];
*b=i;
}
}
return s;
}

6-1最小数放前最大数放后

1,设计思路:

(1)主要描述题目算法

第一步:将数据存放到input数组中

第二步:通过max_min遍历数组找到最大值和最小值,并按照题目要求进行交换

第三步:输出数据

 

(2)代码

 

6-2指针选择法排序

1,设计思路:

(1)主要描述题目算法

第一步:找到调用函数。

第二步:。比较前后两个元素的大小。

第三步:如果后一元素 j 大于前一元素 i ,则将j赋给k,如果k!=i,则将i于j互换。

(2)代码

 

6-1 判断回文字符串

1,设计思路:

(1)主要描述题目算法

 第一步:引用bool palindrome( char *s )

第二步:使用for循环 ,用i,j来实现字符串的首尾,如果i>=j,则是回文,反之不是。

(2)程序图

(3)代码

bool palindrome( char *s )
{
int i,j,n=0;
while(s[n]!='\0') n++;
n--;
for(i=0,j=n;i<j;i++,j--)
if(s[i]!=s[j])break;
if(i>=j)return 1;
return 0;

}

6-2 使用函数实现字符串部分复制

1,设计思路:

(1)主要描述题目算法

第一步:明确题目是从字符串t中第m个字符开始后的全部字符复制到s中,引用void strmcpy( char *t, int m, char *s )

第二步:定义i,j,n,字符串复制然后开始循环

(2)流程图

(3)代码

 

posted on 2018-03-24 21:56  xuyibiao  阅读(363)  评论(0编辑  收藏  举报

导航