• 博客园Logo
  • 首页
  • 新闻
  • 博问
  • 会员
  • 闪存
  • 班级
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 简洁模式 ... 退出登录
    注册 登录
1,不想学习就用蚕食法,害怕学习就用低头走路法 2,龟速就是最快的速度 3,顶住就完事了 4,老天爷给你什么,你就要什么,好好珍惜现在的纺织! 5,定位准确,学到就是赚到!!6,集中精神,如果还想学英语、看书、减肥,好好反思一下自己,是不是脑子瓦塔了!人的精力是有限的,不可能同时都做到的! 7,思想建设最重要,思想不牢,地动山摇!8,做到只看LOL直播和不跟捞比完,你就牛逼格拉斯!
与谁同行比要去的远方更重要 心如止水,向前辈看齐,看他们是怎么学习的。你所遇到的所有困难,前人都已经经历了,身处牢笼是改变不了的,能改的只有你的心态、你的思维方式。
博客园    首页    新随笔    联系   管理    订阅  订阅

第三次作业

作业要求一
2 课上疑点:讨论查阅分析 struct sk{int a; char str)}p; p->str++ 中的++ 加向________?
答:加向str。
作业要求二
题目1查找书籍中最高价及最低价
1 设计思路
(1)主要描述题目算法。
第一步:写好基本结构,然后写好书籍的结构体。
第二步:输入n的值,然后用for循环输入所要查找书籍的相关信息。
第三步:定义两个变量,利用for循环在其中找出最大最小值,然后复值给这两个变量,然后分别输出相关信息就行。

(2)流程图

2.实验代码

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
struct book
{
  char name[31];//名字中有空格,所以最好多加一些
  double cost;
}s[10];
main()
{
  int i,n;
  scanf("%d",&n);

  for(i=0;i<n;i++)
  { 
     scanf("\n"); 
     gets(s[i].name);  
     scanf("%lf",&s[i].cost);  
  }
  int max=0,min=0;
  for(i=1;i<n;i++)
   {
     if(s[i].cost>s[max].cost){max=i;}
     if(s[i].cost<s[min].cost){min=i;}
   }
   printf("%.2f, %s\n",s[max].cost,s[max].name);
   printf("%.2f, %s",s[min].cost,s[min].name);
   system ("pause");
}

3.本题调试过程碰到问题及解决办法
答:在第一次完成之后就显示答案错误,然后找了许久才发现原因。因为定义名字的时候(char name[31])没有算上‘\0’的位置,经过改正就对了。

计算平均成绩
1 设计思路
(1)主要描述题目算法。
第一步:写好基本框架,然后定义学生信息的结构体。
第二步:定义个n人和分数总和sum,然后用for循环输入n个学生的基本信息和累加n个学生的成绩。之后计算出平均成绩值。
第三步:利用for循环找出成绩低于平均分的同学,然后输出相关信息。

2.实验代码

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct student
{
  char name[10];
  char num[5];
  int score;
}s[10];
main()
{
  int i,n;
  float sum=0,ave;
  scanf("%d",&n);
  for(i=0;i<n;i++)
  {
    scanf("%s %s %d",s[i].num,s[i].name,&s[i].score);
    sum=s[i].score+sum;
  }
  ave=sum/(n*1.0);
  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");
}

3.本题调试过程碰到问题及解决办法
答:这题比较简单,没有问题。

题目1查找书籍中最高价及最低价
1 设计思路
(1)主要描述题目算法。
第一步:编写函数,利用for循环再用if,else if来找出不同的年龄段。并且计数分数在六十分以下的人数sum。
第二步:返回sum的值。
2.实验代码

int set_grade( struct student *p, int n )
{
  int i,sum=0;
  for(i = 0; i < n; i++,p++)
  {
    if(p->score>=85){p->grade='A';}
    else if(p->score>=70){p->grade='B';}
    else if(p->score>=60){p->grade='C';}
    else {p->grade='D';sum++;}
  }
  return sum;
}

3.本题调试过程碰到问题及解决办法
要求三、学习总结和进度
1>:指针与结构作业中题目所使用的知识点:
对于结构体的函数调用则跟普通函数调用一样,将类型说明换成结构体类型。

1.指针中代表取地址符,即一个指针变量加上相当于一个变量

2.指针表达式可以加或减一个整型数据,使指针指向下一个存储单元。

3.一般定义指针时都会先把指针定义为空指针NULL。

4.字符型指针可以直接赋值字符串,不过指针存储的是字符串的第一个字符的地址。

5.所以不能使用strcpy将字符串直接复制到另一数组中,

6.链表一般是结构体指针,注意插入链表和拆分链表。

2>,将PTA作业的源代码使用git提交到托管平台上,
我的git代码为:
https://git.coding.net/AI1452349541/H.K.2.2.git

热爱每一天
posted @ 2018-04-22 19:49  怎么都比颓废好  阅读(118)  评论(1)  编辑  收藏  举报
弹尽粮绝,会员救园:会员上线,命悬一线
刷新页面返回顶部
Copyright © 2023 怎么都比颓废好
Powered by .NET 7.0 on Kubernetes