第三次作业

Posted z024108

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第三次作业相关的知识,希望对你有一定的参考价值。

一、学习内容总结

  • 课上疑点:讨论查阅分析 struct sk{int a; char str)}p; p->str++ 中的++ 加向________?
  • 答:加向str。

    二.pta

    题目1查找书籍中最高价及最低价

  1. 设计思路
  • 定义结构体book,并且对成员分量名字name价格price进行定义。
  • 输入n表示有n本书,利用循环输入书名和价格。
  • 定义最大值与最小值。
  • 在循环体中将每本书的价格与最大价格max.price和最小价格min.price比较,如果价格大于max.price就将p.price传给max.price,如果价格小于min就将p.price传给min.price。
  • 输出结果。
  1. 流程图

技术分享图片

  1. 代码
    ```

    include

    include

    include

    include

int main()
{
struct bookandprice
{
char name[300];
double price;
}now,max,min;

max.price=0;  
min.price=999999999999999999;  
int n,i;  
scanf("%d",&n);  
for(i=1;i<=n;i++)  
{  
    getchar();  
    gets(now.name);  
    scanf("%lf",&now.price);  
    if(now.price>max.price)  
    {  
        strcpy(max.name,now.name);  
        max.price=now.price;  
    }  
    if(now.price<min.price)  
    {  
        strcpy(min.name,now.name);  
        min.price=now.price;  
    }  
}  
printf("%.2lf, %s\\n%.2lf, %s",max.price,max.name,min.price,min.name);  

return 0;  

}


## 题目2 计算平均成绩
1. 设计思路
* 填写基本结构,基础函数。
* 对平均数赋初值,并输入人的个数以及对应的学号,姓名,成绩,并把每一个学生的成绩累加。
* 利用循环结构相加。
* 输出结果

3. 代码

include

include

include

struct student{
char num[20];
char name[20];
int score;

}s[1000],*p;
int main(){
int N;
int i=0,count;
scanf("%d",&N);
for(i=0;i<N;i++){
scanf("%s %s %d",&s[i].num,s[i].name,&s[i].score);
}
int sum;
for(i=0;i<N;i++){
sum=sum+s[i].score;
}
float ave;
ave=sum/N;
printf("%.2f\\n",ave);
for(i=0;i<N;i++){
if(s[i].score<ave)
printf("%s %s\\n",s[i].name,s[i].num);
}
system("pause");
}
```

要求三、学习总结和进度

  1. 指针与结构作业中题目所使用的知识点
  2. 指针与结构作业中题目所使用的知识点。
  3. 结构体的正确使用和输出定义的变量。
  4. 使用指针可以代替类似&s[i]的输入,在用到p->时,有明确的分层指向时,不必要写出两个界限,就如结构二中的题目一样。































以上是关于第三次作业的主要内容,如果未能解决你的问题,请参考以下文章

第三次寒假作业

第三次作业

第三次作业

第三次作业

第三次作业

第三次作业