1.本章学习总结(2分)

1.1 学习内容总结

结构体如何定义、成员如何赋值

结构体数组排序做法

结构体指针怎么用

共用体、枚举类型做法

文件读写,文件中数据如何读进结构体数组

1.2 本章学习体会

描述学习感受,也可以在这里提出你不理解地方、对教师教学建议等等。

计算这两周代码量,是否达到目标。

2.综合作业--“我爱成语”(8分)

2.1.文件介绍

头文件介绍

头文件代码截图

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
typedef struct
{
char idom[80];
char mean[200];
}IDIOM;
typedef struct
{
char username[100];
char pswd[100];
}USER;
int GetIdiom(IDIOM* idioms, FILE* fp);
int checkUserValid(USER* psu);
int ListMenu();
int GetChoice();
int SearchIdiom(char* useridiom, IDIOM* p);

2.函数实现文件介绍。

主要代码截图

#include"idiom.h"
int checkUserValid(USER* psu)
{
FILE* fp;
char username[100];
char pswd[100];
fp = fopen("user.txt", "r");
if (!fp)
{
printf("文件打开失败!"); exit(0);
}
while (!feof(fp))
{
fscanf(fp, "%s%s", username, pswd);
if (strcmp(username, psu->username) == 0 &&
strcmp(pswd, psu->pswd) == 0) return 1;
}
return 0;
}
int GetIdiom(IDIOM* idioms, FILE* fp)
{
char idiomStr[200];
while (!feof(fp))
{
fgets(idiomStr, 200, fp);
puts(idiomStr);
}
return 1;
}
int ListMenu()
{
printf("1.读取文件\n");
printf("2.查找成语\n");
}
int GetChoice()
{
int choice;
IDIOM idioms[100];
FILE* fp;
int num;
fp = fopen("idiom.txt", "r+");
if (fp == NULL)
{
exit(0);
}
while (1)
{
printf("\n请输入选择:");
scanf("%d" ,&choice);
if(choice==1)
{
num = GetIdiom(IDIOM * idioms, FILE * fp);
break;
}
else
{
SearchIdiom(char* useridiom, IDIOM * p)
}
} }
int SearchIdiom(char* useridiom, IDIOM* p)
{
int i = 0;
while (i != 60)
{
if ((strstr((p + i)->idiomstr, useridiom)) != NULL)
{
return (p + i)->idiomstr;
}
i++;
}
return NULL;
}

介绍主要函数代码及功能。

主要代码截图

等等其他文件

2.2.运行结果

1.登录界面

2.游戏界面

3.排名界面

2.3大作业总结

1.碰到问题及解决办法

可以列表展示。

2.小结

大作业代码提交

c博客06-结构的更多相关文章

  1. Flutter 即学即用系列博客——06 超实用 Widget 集锦

    本篇文章我们来讲讲一些比较常用的 Widget. 大家验证的时候使用下面的代码替换 main.dart 代码,然后在 //TODO 语句返回下面常用 Widget 示例的代码. import 'pac ...

  2. C语言第十次博客作业--结构体

    一.PTA实验作业 题目1: 结构体数组按总分排序 1. 本题PTA提交列表 2. 设计思路 求出每名学生的总分 定义i,j循环变量 for i=0 to n for j=0 to 3 p[i].su ...

  3. C语言博客作业-结构体

    一.PTA实验作业 6-2 按等级统计学生成绩 1. 本题PTA提交列表 2. 设计思路 定义i,count存放不及格人数 for i=0 to n-1{ 判断 score的值的范围 if 100&g ...

  4. C语言博客作业—结构体

    一.PTA实验作业 题目1:结构体数组按总分排序 1. 本题PTA提交列表 2. 设计思路 void calc //函数calc求出p指针所指的结构体数组中 n 名学生各自的总分 { 定义循环变量i: ...

  5. c语言博客作业--结构体&文件

    1.本章学习总结 1.1思维导图 1.2.本章学习体会 本章学到了结构体如何构建,用typedef进行重定义结构体,结构指针,访问结构体的方式等. 文件:文件的读取,文件读写的几个函数,基本了解了文本 ...

  6. C语言博客作业--结构体,文件

    1.本章学习总结(2分) 1.1 学习内容总结 (1)结构体如何定义.成员如何赋值 结构体的一般形式为:      struct  结构体名     {      数据类型 成员名1:      数据 ...

  7. Flutter 即学即用系列博客——09 EventChannel 实现原生与 Flutter 通信(一)

    前言 紧接着上一篇,这一篇我们讲一下原生怎么给 Flutter 发信号,即原生-> Flutter 还是通过 Flutter 官网的 Example 来讲解. 案例 接着上一次,这一次我们让原生 ...

  8. Flutter 即学即用系列博客——08 MethodChannel 实现 Flutter 与原生通信

    背景 前面我们讲了很多 Flutter 相关的知识点,但是我们并没有介绍怎样实现 Flutter 与原生的通信. 比如我在 Flutter UI 上面点击了一个按钮,我希望原生做一些处理,那么原生怎么 ...

  9. MWeb 生成静态网站&博客

    MWeb 生成静态网站 & 博客 MWeb 的静态网站分类 在 MWeb 的文档库中,有两种分类,一种是普通分类,另一种就是静态网站分类了.你可以直接新增一个静态网站分类,也可以在普通分类的顶 ...

  10. 02-大鸭梨博客系统数据库设计及Dapper的使用

    毫无疑问,数据库的设计在一个系统中起了至关重要的作用.我们都知道,系统设计分为两部分,或者说是两个阶段,即数据库设计和功能设计.构建一个完善的系统需要这两个阶段的充分考量.周密设计.合理联接以及密切配 ...

随机推荐

  1. Kafka Replication: The case for MirrorMaker 2.0

    Apache Kafka has become an essential component of enterprise data pipelines and is used for tracking ...

  2. MVC学习笔记(二)—用EF创建数据库

    1.创建一个空项目 2.在项目中创建EFCore的类库 3.在NuGut控制台为EFCore项目中安装entity  3.1 命令为:Install-Package EntityFramework(在 ...

  3. 采用__call__ 实现装饰器模式

    装饰器模式在实现中也是很常见的:比如手机贴膜,手机壳 都是为了给手机增加一些额外功能 增加耐操 装饰器模式的本质就是对对象二次包装,赋额外功能 __call__ __call__是python魔术方法 ...

  4. Hybris产品主数据的价格折扣维护

    登录Hybris backoffice的产品管理界面,进入price标签页,点击Create new Discount Row按钮: 在Discount下拉地段里选择10%的折扣,这个产品原来的单价是 ...

  5. elasticsearch获取字段missing的数据

    用head查询: demo如下 http://localhost:9200/sj_0505/lw_point_location/ _search post { "query": { ...

  6. django 的form登录 注册

    #!/usr/bin/env python # -*- coding: utf8 -*- #__Author: "Skiler Hao" #date: 2017/3/30 15:4 ...

  7. docker 安装prometheus

    使用到的命令: [root@lgswork ~]# docker search prometheus NAME DESCRIPTION STARS OFFICIAL AUTOMATED prom/pr ...

  8. win下maridb 10.1.8下主从复制配置

    主库配置 server_id=1read-only=0replicate-do-db=mydatalog-bin=mysql-bin 主库权限设置 GRANT replication slave ON ...

  9. SolarWinds-改变端口

    Solarwinds配置文件,修改为80端口(默认为8123) C:\Program Files\SolarWinds\DPA\iwc\tomcat\conf\server.xml

  10. win7彻底卸载VS2015

    C盘越来越臃肿,VS2013.VS2015.VS2017以及VS2019都安装的情况下,C盘没有空间了. 系统:Win7 卸载办法: 管理员方式进cmd,执行vs_professional.exe / ...