【PTA浙大版《C语言程序设计(第4版)》函数题】8-2 计算两数的和与差 && 练习8-8 移动字母(附测试点练习)

8-2 计算两数的和与差

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

函数接口定义:

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

其中op1op2是输入的两个实数,*psum*pdiff是计算得出的和与差。

裁判测试程序样例:

#include 

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

/* 你的代码将被嵌在这里 */

输入样例:

4 6

输出样例:

The sum is 10.00
The diff is -2.00

代码呈现

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

测试点

【PTA浙大版《C语言程序设计(第4版)》函数题】8-2 计算两数的和与差 && 练习8-8 移动字母(附测试点练习)_第1张图片

练习8-8 移动字母

本题要求编写函数,将输入字符串的前3个字符移到最后。

函数接口定义:

void Shift( char s[] );

其中char s[]是用户传入的字符串,题目保证其长度不小于3;函数Shift须将按照要求变换后的字符串仍然存在s[]里。

裁判测试程序样例:

#include 

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

/* 你的代码将被嵌在这里 */

输入样例:

abcdef

输出样例:

defabc

代码呈现

#include
void Shift(char s[])
{
    int len = strlen(s);
    char temp[4];
    strncpy(temp, s, 3);
    
    // 将剩余字符向前移动
    for (int i = 3; i < len; i++)
    {
        s[i - 3] = s[i];
    }
    
    // 将临时数组temp中的字符添加到末尾
    for (int i = 0; i < 3; i++)
    {
        s[len - 3 + i] = temp[i];
    }
}

测试点

【PTA浙大版《C语言程序设计(第4版)》函数题】8-2 计算两数的和与差 && 练习8-8 移动字母(附测试点练习)_第2张图片

你可能感兴趣的:(c语言,算法,开发语言)