第一次作业

 

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

1.设计思路

(1)第一步 阅读题目要求及所给部分。

    第二步 根据题意补全相应函数。

(2)流程图:略

2.实验代码

#include <stdio.h>

void splitfloat( float x, int *intpart, float *fracpart );

int main()
{
    float x, fracpart;
    int intpart;

    scanf("%f", &x);
    splitfloat(x, &intpart, &fracpart);
    printf("The integer part is %d\n", intpart);
    printf("The fractional part is %g\n", fracpart);

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

3.本题调剂过程碰到问题及解决办法

错误信息1:内容不正确

改正方法: 改正内容

git:

6-2在数组中查找指定元素

1.设计思路

(1)第一步:明确题意。

    第二步:补全函数。

(2)流程图:略

2.实验代码

#include <stdio.h>
#define MAXN 10

int search( int list[], int n, int x );

int main()
{
    int i, index, n, x;
    int a[MAXN];

    scanf("%d", &n);
    for( i = 0; i < n; i++ )
        scanf("%d", &a[i]);
    scanf("%d", &x);
    index = search( a, n, x );
    if( index != -1 )
        printf("index = %d\n", index);
    else
        printf("Not found\n");

    return 0;
}
int search(int list[], int n, int x)  
{  
    int i;  
      
  
      
    for (i = 0; i < n; i++)  
    {  
  
        if (list[i] == x)  
        {  
            return i ;  
            break;  
        }  
    }  
    return -1;}

3.本题调剂过程中碰到的问题及解决方法

错误信息1:符号错误。

改正方法:改正符号。

6-1计算两数的和与差

1.设计思路

(1)第一步:审题。

    第二步:补全函数。

(2)流程图:略

2.实验代码

#include <stdio.h>

void sum_diff( float op1, float op2, float *psum, float *pdiff );

int main()
{
    float a, b, sum, diff;

    scanf("%f %f", &a, &b);
    sum_diff(a, b, &sum, &diff);
    printf("The sum is %.2f\nThe diff is %.2f\n", sum, diff);
	
    return 0; 
}
void sum_diff( float op1, float op2, float *psum, float *pdiff )
{
*psum = op1+op2;
*pdiff = op1-op2;
return 0;
  
}

3.本题调剂过程中遇到问题及解决办法

错误信息1:无

改正方法:无

7-1数组元素循环右移问题

1.设计思路:

(1)第一步:明确题意。

  第二步:编写函数。

(2)流程图:略

2.实验代码:

#include<stdio.h>  
int main(){  
  
    int a[200];
    int n, m,i;  
    scanf("%d%d", &n, &m);  
    m = m%n;  
    for (i = 0; i < n;i++){  
        scanf("%d", &a[i]);  
        a[i + n] = a[i];
    }  
    for (i = 0; i < n; i++){  
        a[i] = a[i + n -m];  
    }  
    for (i = 0; i < n; i++){  
        if (i == n - 1)
            printf("%d", a[i]);  
        else   
            printf("%d ", a[i]);  
          
    }  
    return 0;  
}

本题调剂过程中遇到问题及调剂方法:

错误信息1:没审清题意

改正方法:读懂题意,编写函数。

 

posted @ 2018-04-07 17:35  计算机17-4孙福欣  阅读(129)  评论(0编辑  收藏  举报