zoukankan      html  css  js  c++  java
  • 四、PTA实验作业(指针)

    6-1 计算两数的和与差(10 分)

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

    函数接口定义:

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

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

    裁判测试程序样例:

    #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
    The diff is %.2f
    ", sum, diff);
    	
        return 0; 
    }
    
    /* 你的代码将被嵌在这里 */
    

    输入样例:

    4 6
    

    输出样例:

    The sum is 10.00
    The diff is -2.00


    1.本题PTA提交列表

     

    2.设计思路(包括流程图),主要描述题目算法

    7-1 输出学生成绩(20 分)

    本题要求编写程序,根据输入学生的成绩,统计并输出学生的平均成绩、最高成绩和最低成绩。建议使用动态内存分配来实现。

    输入格式:

    输入第一行首先给出一个正整数N,表示学生的个数。接下来一行给出N个学生的成绩,数字间以空格分隔。

    输出格式:

    按照以下格式输出:

    average = 平均成绩
    max = 最高成绩
    min = 最低成绩
    

    结果均保留两位小数。

    输入样例:

    3
    85 90 95
    

    输出样例:

    average = 90.00
    max = 95.00
    min = 85.00


    1.本题PTA提交列表

    2.设计思路(包括流程图),主要描述题目算法

     

    6-2 移动字母(10 分)

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

    函数接口定义:

    void Shift( char s[] );
    

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

    裁判测试程序样例:

    #include <stdio.h>
    #include <string.h>
    
    #define MAXS 10
    
    void Shift( char s[] );
    
    void GetString( char s[] ); /* 实现细节在此不表 */
    
    int main()
    {
        char s[MAXS];
    
        GetString(s);
        Shift(s);
        printf("%s
    ", s);
    	
        return 0; 
    }
    
    /* 你的代码将被嵌在这里 */
    

    输入样例:

    abcdef
    

    输出样例:

    defabc

    1、提交列表

    2、设计思路(包括流程图)

     1、建立一个新的数组,将a[i]的值赋给新数组

    2、利用新的数组将前三个字符移到最后

    最终代码如下:

    # include<stdio.h>
    int main(void)
    {
     int i,j,n;
     char a[100],b[100];
     printf("Input a strings:");
     i=0;
     while((a[i]=getchar())!='
    ')
      i++;
     for(j=3;j<i;j++)
      b[j]=a[j-3];
     
     b[0]=a[i-3];
        b[1]=a[i-2];
     b[2]=a[i-1];
     
     for(n=0;n<i;n++){
      putchar(b[n]);
     }
     
     return 0;
    }

    3.本题调试过程碰到问题及PTA提交列表情况说明

     

  • 相关阅读:
    创建vue项目的时候报错,spawn yarn ENOENT
    理解比特币(4)——实现原理
    比特币(3)——比特币的其他优势
    比特币(2)——最大优势是价值存储
    如何在K8S中优雅的使用私有镜像库 (Docker版)
    [Go] godoc 打开本地文档, windows 同样适用
    [FAQ] Golang error strings should not be capitalized or end with punctuation
    [Go] gorm 错误处理 与 链式/Finisher方法
    [Go] golang 替换组件包 更新 go.mod, go.sum 的方式
    [FAQ] golang-migrate/migrate error: migration failed in line 0: (details: Error 1065: Query was empty)
  • 原文地址:https://www.cnblogs.com/LSCOOLYI/p/8320439.html
Copyright © 2011-2022 走看看