第三次pta作业 第三次PTA作业

7-1 计算职工工资

1.设计思路

(1)主要描述题目算法

①要求编写程序顺序输出每位职员的姓名和实发工资(实发工资=基本工资+浮动工资-支出)

②基本工资、浮动工资、支出这些项都与某一职员相联系,所以可以定义一个结构体

③利用for循环将信息输入进去

④利用for循环依次输出

(2)流程图

#include<stdio.h>
struct worker
{
    char name[10];
    float jb,fd,zc;
    float fee;
};
int main()
{
    struct worker w[10];
    int N,i;
    scanf("%d",&N);
    for(i=0;i<N;i++)
    {
        scanf("%s %f %f %f",w[i].name,&w[i].jb,&w[i].fd,&w[i].zc);
        w[i].fee=w[i].jb+w[i].fd-w[i].zc;}
        for(i=0;i<N;i++){
        printf("%s %.2f\n",w[i].name,w[i].fee);
    } 
}

  3.本题调试过程碰到问题及解决办法
错误信息1:无
错误原因:无
改正方法:无

https://coding.net/u/aggresiver/p/123/git/blob/master/7-10

 7-2 计算平均成绩

1.设计思路

(1)主要描述题目算法

①要求计算他们的平均成绩,并顺序输出平均线以下的学生名单

②定义结构体

③利用for循环输入学生基本信息

④再次利用for循环进行判断

2.实验代码

#include<stdio.h>
struct student
{
    char No[6];
    char name[10];
    int sore;
};
int main()
{
    int N,i,sum=0;
    double avg;
    struct student s[10];
    scanf("%d",&N);
    for(i=0;i<N;i++)
    {
        scanf("%s %s %d",s[i].No ,s[i].name ,&s[i].sore );
        sum=sum+s[i].sore ;
    }
    avg=sum*1.0/N;
    printf("%.2lf\n",avg);
    for(i=0;i<N;i++)
    {
        if(s[i].sore<avg)
        printf("%s %s\n",s[i].name,s[i].No);
    }
}

  3.本题调试过程碰到问题及解决办法
错误信息1:无
错误原因:无
改正方法:无

https://coding.net/u/aggresiver/p/123/git/blob/master/7.2

7-1 计算职工工资

1.设计思路

(1)主要描述题目算法

①要求编写程序顺序输出每位职员的姓名和实发工资(实发工资=基本工资+浮动工资-支出)

②基本工资、浮动工资、支出这些项都与某一职员相联系,所以可以定义一个结构体

③利用for循环将信息输入进去

④利用for循环依次输出

(2)流程图

#include<stdio.h>
struct worker
{
    char name[10];
    float jb,fd,zc;
    float fee;
};
int main()
{
    struct worker w[10];
    int N,i;
    scanf("%d",&N);
    for(i=0;i<N;i++)
    {
        scanf("%s %f %f %f",w[i].name,&w[i].jb,&w[i].fd,&w[i].zc);
        w[i].fee=w[i].jb+w[i].fd-w[i].zc;}
        for(i=0;i<N;i++){
        printf("%s %.2f\n",w[i].name,w[i].fee);
    } 
}

  3.本题调试过程碰到问题及解决办法
错误信息1:无
错误原因:无
改正方法:无

https://coding.net/u/aggresiver/p/123/git/blob/master/7-10

 7-2 计算平均成绩

1.设计思路

(1)主要描述题目算法

①要求计算他们的平均成绩,并顺序输出平均线以下的学生名单

②定义结构体

③利用for循环输入学生基本信息

④再次利用for循环进行判断

2.实验代码

#include<stdio.h>
struct student
{
    char No[6];
    char name[10];
    int sore;
};
int main()
{
    int N,i,sum=0;
    double avg;
    struct student s[10];
    scanf("%d",&N);
    for(i=0;i<N;i++)
    {
        scanf("%s %s %d",s[i].No ,s[i].name ,&s[i].sore );
        sum=sum+s[i].sore ;
    }
    avg=sum*1.0/N;
    printf("%.2lf\n",avg);
    for(i=0;i<N;i++)
    {
        if(s[i].sore<avg)
        printf("%s %s\n",s[i].name,s[i].No);
    }
}

  3.本题调试过程碰到问题及解决办法
错误信息1:无
错误原因:无
改正方法:无

https://coding.net/u/aggresiver/p/123/git/blob/master/7.2

猜你喜欢

转载自www.cnblogs.com/liuqichao/p/8905861.html