C基础学习(三)

来源:互联网 发布:域名不支持生成短网址 编辑:程序博客网 时间:2024/05/17 06:03

               C基础学习(三)
    今天早上,沈老师给我们复习了下数组、函数、指针和字符串的相关概念和定义。顺便把昨天留得几道作业讲了一遍,虽然我昨天已经把那几道题做了出来,但是听了沈老师讲过之后,我才发现自己还需要学的东西还有很多。
     通过和沈老师讲述的几道作业程序的结果和我昨天自己所做的进行了下对比,我才知道原来程序还能这样写,还可以这样多样化和更简洁。接下来,沈老师给我们讲述了今天要学的C基础知识:结构体、文件保存和读取。
       1.如:什么是数组结构体?

数组的元素也可以是结构类型的。因此可以构成结构型数组。结构数组的每一个元素都是具有相同结构类型的下标结构变量。在实际应用中,经常用结构数组来表示具有相同数据结构的一个群体。如一个班的学生档案,一个车间职工的工资表等。方法和结构变量相似,只需说明它为数组类型即可。例如:

struct stu
  boy[5]  {


        intnum;


        char*name;
      

     char sex;
      

    float score;
};

定义了一个结构数组boy,共有5个元素,boy[0]~boy[4]。每个数组元素都具有structstu的结构形式。对结构数组可以作初始化赋值。例如:
struct stu
 boy[5]   {


        intnum;
 

       char*name;
 

       charsex;
      

     float score;
    }={
 

          {101,"Li ping","M",45},
 

           {102,"Zhang ping","M",62.5},
  

           {103,"Hefang","F",92.5},
    

           {104,"Chengling","F",87},
 

           {105,"Wang ming","M",58};
}


当对全部元素作初始化赋值时,也可不给出数组长度。

【1】     计算学生的平均成绩和不及格的人数。


   struct stu boy[5]
{
   

   int num;
 

    char *name;
 

    char sex;


    floatscore;
}={
    

     {101,"Li ping",'M',45},
     

    {102,"Zhang ping",'M',62.5},
  

       {103,"He fang",'F',92.5},
    

     {104,"Cheng ling",'F',87},
  

       {105,"Wang ming",'M',58},
       };

int
main(int argc, const char* argv [])


{
    inti,c=0;
    float ave,s=0;
   for(i=0;i<5;i++)
 

  {
     s+=boy[i].score;
      if(boy[i].score<60)c+=1;
    }
   

 printf("s=%f\n",s);
   ave=s/5;
    printf("average=%f\ncount=%d\n",ave,c);
}

本例程序中定义了一个外部结构数组boy,共5个元素,并作了初始化赋值。在main函数中用for语句逐个累加各元素的score成员值存于s之中,如score的值小于60(不及格)即计数器C加1,循环完毕后计算平均成绩,并输出全班总分,平均分及不及格人数。

 

       2.什么是文件保存? 

 文件保存就是通过程序命令把信息存放到文件中。操作步骤如下:

    FILE * fp;

//   写入文件

//    //1。打开文件

   fp=fopen("//Users//shinshen//Desktop//ok.txt", "w");

//    //2.写数据

    fprintf(fp,"hello,wo来了");

//    //3.关闭文件

    fclose(fp);

    printf("文件写入成功\n"); 

 

       3.什么是文件读取?

文件读取就是通过程序命令从文件中读取数据,并把数据显示在控制台上。

    1.打开文件

   fp=fopen("//Users//shinshen//Desktop//ok.txt", "r");

//    2.读数据

    char str[100];

    fscanf(fp, "%s",str);

//    3.关闭文件

    fclose(fp);

    printf("读取文件内容:\n %s",str); 

      通过今天的学习,让我对C语言有了更深一层的了解,思路也更加的清晰,知道如何有条理的去判断,去处理问题!同时也让对C这一门基础语言有了更加浓厚的兴趣,其实不管是C语言还是其它的计算机语言,也许在入门以前,你会觉得它有多么的难,多么的复杂,多么的枯燥乏味,当你真正去静下心来学习它的时候,你才会真正的发现,原来它并没有自己原先想象中的那样的难、复杂、枯燥乏味!一切为了更好明天,让我继续更加努力奋斗吧!既然选择了投身于计算机语言这一行也,那就应该做好努力和奋斗的准备!加油!

原创粉丝点击