码迷,mamicode.com
首页 > 其他好文 > 详细

第一次作业集合

时间:2018-03-24 23:58:52      阅读:357      评论:0      收藏:0      [点我收藏+]

标签:break   调试   float   bubuko   oat   输入   psu   pre   查找   

题目6-1 计算两数的和与差
1.设计思路
(1) 主要描述题目算法

第一步:阅读题目,明确题目要求。引用void sum_diff( float op1, float op2, float psum, float pdiff )
第二步:明确 op1,op2,psum,pdiff的作用以及四者之间的联系。
第三步:代入所要求的数据进行检验。
2.实验代码

    void sum_diff( float op1, float op2, float *psum, float *pdiff )
    {
        *psum=op1+op2;
        *pdiff=op1-op2;
    }

3.流程图
技术分享图片
4.调试结果
答案正确

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

1.设计思路
(1) 主要描述题目算法

第一步:阅读题目,明确题目要求。拆分整数小数。引用void splitfloat( float x, int intpart, float fracpart );
第二步:明确intpart,fracpart,x之间的关系。
第三步:代入所要求的数据进行检验。
2.实验代码

    void splitfloat( float x, int *intpart, float *fracpart )
    {
        *intpart=x / 1;
        *fracpart=x-*intpart; 
    }

3.流程图
技术分享图片
4.调试结果
答案正确

题目6-1 在数组中查找指定元素

1.设计思路
(1) 主要描述题目算法

第一步:阅读题目,明确题目要求。在数组中查找指定元素。引用int search( int list[], int n, int x );
第二步:通过for循环对数组中的元素进行查找。
第三步:查找到返回该数值,否则,返回-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.调试结果
答案正确

题目6-2 找最大值及其下标

1.设计思路
(1) 主要描述题目算法

第一步:阅读题目,明确题目要求。在一维整型数组中找出其中最大的数及其下标。引用int fun(int a,int b,int n);
第二步:定义一个c,max,查找出c,max,a,b,n之间的联系。
第三步:通过for循环和判断结合找到最大值,以此定义出下标。
第四步:第四步:输入要求数值进行检验。

2.实验代码

int fun(int *a,int *b,int n)
{
int *c,max=*a;
for(c=a+1;c<a+n;c++)
if(*c>max)
{
max=*c;
*b=c-a;
}
return max;
}

3.流程图
技术分享图片
4.调试结果
检查几次,终于答案正确

题目6-1 判断回文字符串

1.设计思路
(1) 主要描述题目算法

第一步:阅读题目,明确题目要求。判断给定的一串字符是否为“回文”。引用bool palindrome( char *s );
第二步:定义出i,j,n,因为是求回文,因此有正反两方向都一样,因此要正反都判断。
第三步:判断从两头起的相对应的字符是否相同。
第四部:判断并且返回“是”“否”。

2.实验代码

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;
}

3.流程图
技术分享图片
4.检查结果
由于习惯原因,改了一次之后正确

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

1.设计思路
(1) 主要描述题目算法

第一步:阅读题目,明确题目要求。将输入字符串t中从第m个字符开始的全部字符复制到字符串s中。引用void strmcpy( char t, int m, char s );
第二步:定义i,j,n.字符串复制。
第三步:进入特定的循环。
第四步:进行检验。
2.实验代码

void strmcpy(char *t, int m, char *s)  
{  
    int i, j,n;  
  
    strcpy(s, t);  
    n = strlen(s);  
    for (i = m - 1; i>0; i--) {  
        for (j = i; j<n; j++) {  
            *(s + j - 1) = *(s + j);  
        }  
    }  
    *(s + n - m + 1) = ‘\0‘;  
} 

3.流程图
技术分享图片

4.实验结果
提交两次,最后对了

第一次作业集合

标签:break   调试   float   bubuko   oat   输入   psu   pre   查找   

原文地址:https://www.cnblogs.com/1204113692yang/p/8625650.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!