基于visual Studio2013解决C语言竞赛题之0802图书信息查询

时间:2022-10-30 22:37:15
基于visual Studio2013解决C语言竞赛题之0802图书信息查询


题目

基于visual Studio2013解决C语言竞赛题之0802图书信息查询


解决代码及点评

/*功能:有一批图书,每本书有:书名(name),作者(author) , 编号(num),出版日期(date)四个数据,      希望输入后按书名的字母顺序将各书的记录排列好,供以后查询。今输入一本书的书名,  如果查询到库中有此书,打印出此书的书名,作者,编号和出版日期。如果查不到此书,则打印出“无此书”。 时间:17:02 2013/10/26*/#include<stdio.h>#include <stdlib.h>#include <string.h>#define N 80struct infoBook{char name[N];char author[N];int num;int date;};void main(){struct infoBook a[5]={{"ebooks","yincheng",5,18880808},{"lbook","haoyun",34,12330205},{"c++","wangwen",1,19870731},{"C primer","vicky",2,19880310},{"data struction","ben",3,19550302}};for(int i=0;i<5;i++)//将初始化信息打印到屏幕上{printf("%-15s\t\t%s\t\t%d\t%d\n",a[i].name,a[i].author,a[i].num,a[i].date);}printf("\n\n After order!\n");for(int i=0;i<4;i++) // 对书本进行排序{for (int j=i+1;j<5;j++){char t=a[i].name[0];char s=a[j].name[0];if(t>s){struct infoBook temp=a[i];a[i]=a[j];a[j]=temp;}}}for(int i=0;i<5;i++)//将排序后信息打印到屏幕上{printf("%-15s\t\t%s\t\t%d\t%d\n",a[i].name,a[i].author,a[i].num,a[i].date);}puts("please enter the book");char books[N];gets_s(books);  // 输入书名for(int i=0;i<5;i++) // 对输入书名进行查询,如果查询到,则打印详细信息{if(strcmp(books,a[i].name)==0){printf("%-15s\t\t%s\t\t%d\t%d\n",a[i].name,a[i].author,a[i].num,a[i].date);system("pause");return;}}printf("NO");system("pause");}


代码编译以及运行

由于资源上传太多,资源频道经常被锁定无法上传资源,同学们可以打开VS2013自己创建工程,步骤如下:

1)新建工程

基于visual Studio2013解决C语言竞赛题之0802图书信息查询

2)选择工程

基于visual Studio2013解决C语言竞赛题之0802图书信息查询

3)创建完工程如下图:

基于visual Studio2013解决C语言竞赛题之0802图书信息查询

4)增加文件,右键点击项目

基于visual Studio2013解决C语言竞赛题之0802图书信息查询

5)在弹出菜单里做以下选择

基于visual Studio2013解决C语言竞赛题之0802图书信息查询

6)添加文件

基于visual Studio2013解决C语言竞赛题之0802图书信息查询

7)拷贝代码与运行

基于visual Studio2013解决C语言竞赛题之0802图书信息查询


程序运行结果


基于visual Studio2013解决C语言竞赛题之0802图书信息查询