首页 > 其他分享 >C语言小作业,基于C语言的图书检索

C语言小作业,基于C语言的图书检索

时间:2025-01-12 21:57:15浏览次数:3  
标签:检索 str2 str1 C语言 图书 输入 名称

        输入n本图书名称,在图书中检索包含C语言的图书,并输出符合要求的图书名称。说明:n最大为100,图书名称最大长度为50。string.h中有strstr函数,strstr 函数是一个字符串处理的函数,它的主要功能是在一个字符串中查找另一个字符串(子字符串)的首次出现位置。本题中可以调用它。

函数原型为: 

char *strstr(const char *str1, const char *str2);

str1:是被搜索的主字符串。

str2:是要在 str1 中搜索的子字符串。

返回值:

如果 str2 是 str1 的一个子串,函数返回一个指向 str1 中 str2 首次出现位置开始的指针。

如果 str2 不是 str1 的子串,函数返回 NULL。

输入格式:

输入为一个正整数 n,题目保证 0 < n <= 100 。

根据n依次输入每本图书的名称,共计n本图书。

输出格式:

图书名称中包含C语言的图书;若没有,输出无。

输入样例1:

请输入图书数量: 4

请输入第1本图书的名称: 英语阅读

请输入第2本图书的名称: C语言程序设计

请输入第3本图书的名称: 高级编程(C语言)

请输入第4本图书的名称: 人工智能技术

输出样例1:

包含C语言的图书有:

C语言程序设计

高级编程(C语言)

#include<stdio.h>
#include<string.h>
int main()
{
    char book[100][50];
	int i,n,count=0;
	printf("请输入图书数量:");
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		printf("请输入第%d本图书的名称:",i+1);
		scanf("%s",book[i]);
	}
	for(i=0;i<n;i++)
	{
		if(strstr(book[i],"C语言")!=NULL)
		{
			printf("%s",book[i]);
			count++;
		}
	}
	if(count==0)
	{
		printf("无");
	}	
	return 0;
} 

运行结果如下:

标签:检索,str2,str1,C语言,图书,输入,名称
From: https://blog.csdn.net/qq_71423518/article/details/145097313

相关文章

  • C语言学习笔记:运算
    运算在C语言中的运算共有以下几种:-算术运算:+ - * / %(模运算)-赋值运算:将等号的右值赋给左值-关系(比较)运算:其结果为真(非0)、假(0)== != > >= < <= -逻辑运算:&& 并且,||  或者,!  非。-位运算-三元运算对于算数运算进行介绍,算数运算和我们平......
  • C语言常用数据类型和自定义数据类型的存储空间
    C语言常用数据类型和自定义数据类型的存储空间想知道各种数据类型的存储空间长度,编码测试,代码如下:注意:用到offsetof宏,在stddef.h头文件中定义,一定要包含进去!!!/*filename:sizeof.c*/#include<stdio.h>#include<stddef.h>//foroffsetofmacro/*compile:gccsizeof......
  • 计算CRC循环校验码的简单C语言实现
    #include<stdio.h>#include<string.h>intdata[30];//数据intpoly[30];//生成式intmain(){charstr[30];//输入数据scanf("%s",str);intdata_len=strlen(str);for(inti=0;i<data_len;i++){data......
  • 在keil中ARMCC v6 编译器中用C语言实现ARM cortex-M4 实现startup代码
    #include"stdint.h"#defineStack_Size0x00000800U#defineHeap_Size0x00000400Uuint8_tStack_Mem[Stack_Size]__attribute__((section("STACK")));uint32_t*const__initial_sp=(uint32_t*)&Stack_Mem[Stack_Size];uint8_tHeap_......
  • C语言文件操作
    本文重点:什么是文件文件名文件类型文件缓冲区文件指针文件的打开和关闭文件的顺序读写文件的随机读写文件结束的判定什么是文件磁盘上的文件是文件。但是在程序设计中,我们一般谈的文件有两种:程序文件、数据文件程序文件包括源程序文件(后缀为.c),目标文件(w......
  • C语言程序环境和预处理详解
    本章重点:程序的翻译环境程序的执行环境详解:C语言程序的编译+链接预定义符号介绍预处理指令#define宏和函数的对比预处理操作符#和##的介绍命令定义预处理指令#include预处理指令#undef条件编译 程序的翻译环境和执行环境在ANSIC的任何一种实现中,存在......
  • 使用C语言构建简易视频聊天软件框架,一个基础指南
    在探索现代通信技术的过程中,视频聊天软件已成为人们日常沟通不可或缺的一部分。尽管C语言并非构建此类复杂应用的首选(通常选择更高层次的编程语言如C++、Java或利用特定的SDK),但了解其底层原理对于深入理解网络通信至关重要。本文将通过一个简化的例子,展示如何使用C语言构建一个基......
  • 基于Springboot的图书电子商务系统【附源码】
    基于Springboot的图书电子商务系统效果如下:系统主页面图书信息管理页面图书资讯页面系统登陆页面个人中心页面我的地址页面图书分类管理页面在线客服页面图书信息页面研究背景随着互联网技术的快速发展,尤其是移动互联网的普及,电子商务已成为人们日常生......
  • C语言常见概念
    文章目录一.计算机语言1.计算机语言经历的阶段2.高级语言经历的发展阶段3.C语言程序结构二.算法1.程序=算法+数据结构2.算法特性3.算法三种基本结构三.常量1.整型常量2.实型常量3.字符常量四.关键字五.ASCII表六.标识符七.数据类型1.基本类型2.枚举类型(enum......
  • 数据结构C语言描述11(图文结合)--二叉搜索树(BST树)的实现(数据采用KV存储形式进行封
    前言这个专栏将会用纯C实现常用的数据结构和简单的算法;有C基础即可跟着学习,代码均可运行;准备考研的也可跟着写,个人感觉,如果时间充裕,手写一遍比看书、刷题管用很多,这也是本人采用纯C语言实现的原因之一;欢迎收藏+关注,本人将会持续更新。文章目录什么是二叉搜索树代码实......