c博客06-结构
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-结构的更多相关文章
- Flutter 即学即用系列博客——06 超实用 Widget 集锦
本篇文章我们来讲讲一些比较常用的 Widget. 大家验证的时候使用下面的代码替换 main.dart 代码,然后在 //TODO 语句返回下面常用 Widget 示例的代码. import 'pac ...
- C语言第十次博客作业--结构体
一.PTA实验作业 题目1: 结构体数组按总分排序 1. 本题PTA提交列表 2. 设计思路 求出每名学生的总分 定义i,j循环变量 for i=0 to n for j=0 to 3 p[i].su ...
- C语言博客作业-结构体
一.PTA实验作业 6-2 按等级统计学生成绩 1. 本题PTA提交列表 2. 设计思路 定义i,count存放不及格人数 for i=0 to n-1{ 判断 score的值的范围 if 100&g ...
- C语言博客作业—结构体
一.PTA实验作业 题目1:结构体数组按总分排序 1. 本题PTA提交列表 2. 设计思路 void calc //函数calc求出p指针所指的结构体数组中 n 名学生各自的总分 { 定义循环变量i: ...
- c语言博客作业--结构体&文件
1.本章学习总结 1.1思维导图 1.2.本章学习体会 本章学到了结构体如何构建,用typedef进行重定义结构体,结构指针,访问结构体的方式等. 文件:文件的读取,文件读写的几个函数,基本了解了文本 ...
- C语言博客作业--结构体,文件
1.本章学习总结(2分) 1.1 学习内容总结 (1)结构体如何定义.成员如何赋值 结构体的一般形式为: struct 结构体名 { 数据类型 成员名1: 数据 ...
- Flutter 即学即用系列博客——09 EventChannel 实现原生与 Flutter 通信(一)
前言 紧接着上一篇,这一篇我们讲一下原生怎么给 Flutter 发信号,即原生-> Flutter 还是通过 Flutter 官网的 Example 来讲解. 案例 接着上一次,这一次我们让原生 ...
- Flutter 即学即用系列博客——08 MethodChannel 实现 Flutter 与原生通信
背景 前面我们讲了很多 Flutter 相关的知识点,但是我们并没有介绍怎样实现 Flutter 与原生的通信. 比如我在 Flutter UI 上面点击了一个按钮,我希望原生做一些处理,那么原生怎么 ...
- MWeb 生成静态网站&博客
MWeb 生成静态网站 & 博客 MWeb 的静态网站分类 在 MWeb 的文档库中,有两种分类,一种是普通分类,另一种就是静态网站分类了.你可以直接新增一个静态网站分类,也可以在普通分类的顶 ...
- 02-大鸭梨博客系统数据库设计及Dapper的使用
毫无疑问,数据库的设计在一个系统中起了至关重要的作用.我们都知道,系统设计分为两部分,或者说是两个阶段,即数据库设计和功能设计.构建一个完善的系统需要这两个阶段的充分考量.周密设计.合理联接以及密切配 ...
随机推荐
- drf中的各种view,viewset
drf中的各种view,viewset Django REST framework里有各种各样的view,让我有点蒙,得好好捋一捋这关系. 视图的作用 Django用"视图"这个概 ...
- navicat连接mysql出现2059
1.找到mysql的目录:C:\Program Files\MySQL\MySQL Server 8.0\bin 2.清空此目录,输入cmd,回车 3.在控制台输入:mysql -u root -p ...
- Thymeleaf前后端分页查询
分页查询是一个很常见的功能,对于分页也有很多封装好的轮子供我们使用. 比如使用mybatis做后端分页可以用Pagehelper这个插件,如果使用SpringDataJPA更方便,直接就内置的分页查询 ...
- 五 查询数据SELECT 一、单表查询
一 单表查询的语法 二 关键字的执行优先级 三 简单查询 四 WHERE约束 五 分组查询:GROUP BY 六 HAVING过滤 七 查询排序:ORDER BY 八 限制查询的记录数:LIMIT 九 ...
- Angular使用操作事件指令ng-click传多个参数示例
本文实例讲述了Angular使用操作事件指令ng-click传多个参数功能.分享给大家供大家参考,具体如下: <!DOCTYPE html> <html ng-app="m ...
- jsonpath_rw操作json
from jsonpath_rw import parse def get_key_from_data(key,data): # 定义匹配规则 json_expr=parse(key) result= ...
- Java 缓存实例
重复创建相同的对象没有太大的意义,反而加大了系统开销,某些情况下,可以缓存该类的实例,实现复用. 实现缓存实例:定义一个private static成员变量存储类的实例(多个可用数组)先检测上面的成员 ...
- LeetCode刷题:Reverse Words in a String(翻转字符串中的单词)
题目 Given an input string, reverse the string word by word. For example, Given s = "the sky is b ...
- java实现mysql数据备份
/** * @param hostIP ip地址,可以是本机也可以是远程 * @param userName 数据库的用户名 * @param password 数据库的密码 * @param sav ...
- idea生成类中序列化id
RPC接口中要传输的对象需要序列化,需要生成序列id,idea中生成序列id的方式如下 在需要添加序列id的类中,选中类名,alt+enter就可以实现了