首页技术c语言程序设计课程设计报告 c语言程序设计实验报告

c语言程序设计课程设计报告 c语言程序设计实验报告

编程之家2026-07-011112次浏览

各位老铁们,大家好,今天由我来为大家分享c语言程序设计课程设计报告,以及c语言程序设计实验报告的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!

c语言程序设计课程设计报告 c语言程序设计实验报告

C语言程序设计课程设计报告怎么写啊有谁有样本吗谢啦!

实验报告一

课程 C语言程序设计实验项目 C程序设计初步成绩

专业班级学号指导教师金发夏

姓名序号实验日期

一【实验目的】

1.了解使用VC++6.0的开发环境;

c语言程序设计课程设计报告 c语言程序设计实验报告

2.掌握在该系统上如何编辑、编译、连接和运行一个C程序;

3.通过运行简单的C程序,初步了解C源程序的特点;

二【实验内容】

【实验1-1】输入并运行一个简单的正确程序

1)输入下面的程序

include<stdio.h>

c语言程序设计课程设计报告 c语言程序设计实验报告

void main()

{

printf("欢迎学习C语言程序设计!\n");

}

2).仔细观察屏幕的输入程序,检查有无错误。

3).对该程序进行编译,查看编译输出窗口,检查是否有错误,有错误需要改正错误。无错误就可以运行程序。

【实验1-2】设计一个程序,已知矩形的两条边长为3.2和1.5,求矩形的面积。

【实验1-3】求4和6的和,并在显示器上输出。然后修改程序从键盘上任意输入2个整数,并将二者的和输出。

三【实验过程】

四【实验小结】

C语言实验报告

我写了个,不知道行不,有什么不妥的请指出哈,如要格式请加我,将之发给你

四川大学计算机学院、软件学院

实验报告

学号:姓名:专业:计算机科学与技术班级:5第 13周

课程名称 c/C++实验课时 2

实验项目字符串的复制与追加实验时间 08.5. 16

实验目的 1.掌握字符串的基本操作和理解数据结构

实验环境 VC 6.0

实验内容(算法、程序、步骤和方法)先计算出S1和S2的字符个数,为S3分配好空间,利用已有库函数先将S1复制到S3中,再将S2追加到S3中,当显示完后要记住收回空间,做好善后处理。

源代码如下:

#include<iostream>

#include<string.h>

using namespace std;

int main()

{

char*s1="abcdef";

char*s2="123456f";

int n=strlen(s1)+strlen(s2);//计算s1,和s2的总长度n

char*s3=new char[n+1];//定义S3并分配空间大小为n

strcpy(s3,s1);//将s1复制到s3中

strcat(s3,s2);//将s2追加到s3后面

cout<<"s3="<<s3<<endl;

delete []s3;//收回空间

s3=NULL;//将指针指向空

return 0;

}

(接上)

实验内容(算法、程序、步骤和方法)

结构是顺序存储结构,算法顺序链接法

数据记录

和计算数据有:字符串S1,S2;和一未知字符串S3

只需计算前两个字符串长度之和

结论

(结果)利用字符数组可以顺序存储字符数据,并且能够顺序处理数据;

算法复杂度O(n+m);处于中性

小结字符数组能够带来很好的存储结构,便于操作,但是算法不是很好,只能顺序遍历数组,故复杂度不是很小

指导老师评议

成绩评定:指导教师签名:

c语言程序设计题。实验报告。高分。

车票系统,与你的第2题要求略有不同,你自己修改吧

#include<stdio.h>

#include<stdlib.h>

#include<dos.h>

#include<time.h>

#include<conio.h>

#include<string.h>

const int MAX=20;

const int N=50;

const int MAXFILENAME=100;

enum{FALSE,TRUE};

struct time

{

int hour;

int minutes;

};

struct ticket

{

int SerialNumber;

struct time SetOut;

char DeparturePoint[MAX];

char TerminalPoint[MAX];

float LastTime;

int FixNumber;

int FixedNumber;

}car[N];

int RecordNumber;

int FLAG=FALSE;

/**********************************************/

int ShowMessage(void);//载入原始数据

void mainmenu(void);//主菜单

void InsertMessage(void);//录入班次信息

void SearchMenu(void);//查询路线子菜单

void SearchByNumber(void);//按班次号查询

void SearchByAddress(void);//按终点站查询

void TicketManagement(void);//车票售出与退回

void TicketOrder(void);//售票

void TicketDelete(void);//退票

void exit(void);//退出该系统

/********************************************/

int main(void)

{

RecordNumber=ShowMessage();

if(1)

do{

mainmenu();

}while(FLAG==FALSE);

return 0;

}

void mainmenu(void)

{

system("color 1f");

system("mode con: cols=140 lines=130");

char functionNumber;

printf("车票管理系统\n\n");

printf("制作:hmm182007\n");

printf("日期:2007/11/25/19:57\n");

printf("============================================================================\n");

printf(" 1.录入班次信息\t\n");

printf(" 2.浏览班次信息\t\n");

printf(" 3.查询行车路线\t\n");

printf(" 4.售票与退票系统\t\n");

printf(" 5.退出该系统\t\n");

printf("============================================================================\n");

printf("请选择你所需要的功能:");

scanf("%c",&functionNumber);

switch(functionNumber)

{

case'1':

{

InsertMessage();

printf("\n按任意键回主菜单......\n");

getchar();

getchar();

}

break;

case'2':

{

ShowMessage();

printf("\n按任意键回主菜单......\n");

getchar();

getchar();

}

break;

case'3':

{

SearchMenu();

printf("\n按任意键回主菜单......\n");

getchar();

getchar();

}

break;

case'4':

{

TicketManagement();

getchar();

getchar();

}

break;

case'5':FLAG=TRUE;exit();break;

default:

{

printf("输入错误,请确保你的输入为1--5.\n");

printf("按任意键回主菜单......\n");

getchar();

getchar();

}

}//switch ends

FLAG=FALSE;

}

void InsertMessage(void)

{

FILE*fp;

char filename[MAXFILENAME];

int i;

printf("请输入文件名或者文件路径名:");

scanf("%s",filename);

if((fp=fopen(filename,"r"))==NULL)

{

printf("文件%s不可读,请确认文件%s存在或者文件路径正确.\n\n",filename,filename);

mainmenu();

}

for(i=RecordNumber;!feof(fp)&&!ferror(fp);i++)

{

fscanf(fp,"%d%d%d",&car[i].SerialNumber,&car[i].SetOut.hour,&car[i].SetOut.minutes);

fscanf(fp,"%s%s%f%d%d",&car[i].DeparturePoint,&car[i].TerminalPoint,&car[i].LastTime,&car[i].FixNumber,&car[i].FixedNumber);

}

int count=i;

printf("班次\t发车时间\t起点\t终点\t行车时间(小时)\t额定载量\t已定票人数\n");

for(i=0;i<count;i++)

{

printf("%d\t%d:%d\t\t",car[i].SerialNumber,car[i].SetOut.hour,car[i].SetOut.minutes);

printf("%s\t%s\t\t%.1f\t%d\t\t%d\n",car[i].DeparturePoint,car[i].TerminalPoint,car[i].LastTime,car[i].FixNumber,car[i].FixedNumber);

}

fclose(fp);

}

int ShowMessage(void)

{

int i;

FILE*fp;

if((fp=fopen("add.txt","r"))==NULL)

{

printf("读取数据失败,请检查文件add.txt是否存在.\n");

exit(-1);

}

for(i=0;!feof(fp)&&!ferror(fp);i++)

{

fscanf(fp,"%d%d%d",&car[i].SerialNumber,&car[i].SetOut.hour,&car[i].SetOut.minutes);

fscanf(fp,"%s%s%f%d%d",&car[i].DeparturePoint,&car[i].TerminalPoint,&car[i].LastTime,&car[i].FixNumber,&car[i].FixedNumber);

}

int count=i;

printf("班次\t发车时间\t起点\t终点\t行车时间(小时)\t额定载量\t已定票人数\n");

for(i=0;i<count;i++)

{

printf("%d\t%d:%d\t\t",car[i].SerialNumber,car[i].SetOut.hour,car[i].SetOut.minutes);

printf("%s\t%s\t\t%.1f\t%d\t\t%d\n",car[i].DeparturePoint,car[i].TerminalPoint,car[i].LastTime,car[i].FixNumber,car[i].FixedNumber);

}

return count;

}

void SearchMenu(void)

{

system("color 1f");

system("mode con: cols=140 lines=130");

char functionNumber;

printf("查询子菜单\n");

printf("============================================================================\n");

printf(" 1.按班次号查询\t\n");

printf(" 2.按终点站查询\t\n");

printf(" 3.返回主菜单\t\n");

printf("============================================================================\n");

printf("请选择你所需要的功能:");

scanf("%*c%c",&functionNumber);

switch(functionNumber)

{

case'1':SearchByNumber();break;

case'2':SearchByAddress();break;

case'3':

getchar();

mainmenu();

break;

default:

printf("输入错误,请确保你的输入为1--3.\n");

printf("按任意键回查询子菜单......\n");

getchar();

getchar();

SearchMenu();

}

}

void SearchByNumber(void)

{

int SearchNumber;

printf("请输入要查询的班次号:");

scanf("%d",&SearchNumber);

printf("班次\t发车时间\t起点\t终点\t行车时间(小时)\t额定载量\t已定票人数\n");

printf("%d\t%d:%d\t\t",car[SearchNumber-1].SerialNumber,car[SearchNumber-1].SetOut.hour,car[SearchNumber-1].SetOut.minutes);

printf("%s\t%s\t\t%.1f\t%d\t\t%d\n",car[SearchNumber-1].DeparturePoint,car[SearchNumber-1].TerminalPoint,car[SearchNumber-1].LastTime,car[SearchNumber-1].FixNumber,car[SearchNumber-1].FixedNumber);

}

void SearchByAddress(void)

{

int i;

char Address[MAX];

printf("请输入终点站的名称:");

scanf("%s",&Address);

printf("班次\t发车时间\t起点\t终点\t行车时间(小时)\t额定载量\t已定票人数\n");

for(i=0;i<RecordNumber;i++)

{

//对比终点站记录,找到并输出

if((strcmp(Address,car[i].TerminalPoint))==0)

{

printf("%d\t%d:%d\t\t",car[i].SerialNumber,car[i].SetOut.hour,car[i].SetOut.minutes);

printf("%s\t%s\t\t%.1f\t%d\t\t%d\n",car[i].DeparturePoint,car[i].TerminalPoint,car[i].LastTime,car[i].FixNumber,car[i].FixedNumber);

}

}

}

void TicketManagement(void)

{

char functionNumber;

system("color 1f");

system("mode con: cols=140 lines=130");

printf("订票与退票菜单\n");

printf("============================================================================\n");

printf(" 1.订票\t\n");

printf(" 2.退票\t\n");

printf(" 3.返回主菜单.\n");

printf("============================================================================\n");

printf("选择你需要的功能:");

scanf("%*c%c",&functionNumber);

switch(functionNumber)

{

case'1':

{

TicketOrder();

//getchar();

//getchar();

}

break;

case'2':TicketDelete();break;

case'3':

{

getchar();

mainmenu();

}

break;

default:

{

printf("输入错误,请确保你的输入为1--3.\n");

printf("按任意键回主菜单......\n");

getchar();

getchar();

mainmenu();

}

}

}

void TicketOrder(void)

{

int i;

printf("请输入要订购的车票的班次:");

scanf("%d",&i);

if(i<0||i>RecordNumber)

{

printf("对不起,今天没有这趟车,请明天再来,谢谢使用!\n");

printf("按任意键回主菜单......\n");

getchar();//getchar();

TicketManagement();

}

time_t tval;

struct tm*now;

tval= time(NULL);

now= localtime(&tval);

if((now->tm_hour==car[i].SetOut.hour&&now->tm_min<car[i].SetOut.minutes)||(now->tm_hour<car[i].SetOut.hour))

{

if(car[i].FixedNumber<car[i].FixNumber)

{

car[i].FixedNumber++;

printf("你的订票成功,请按时上车,谢谢使用!\n");

}

else printf("对不起,今天的这趟车的票已卖完,请明天再来,谢谢合作!\n");

}

else printf("对不起,今天的这趟车已发出,请明天再来,谢谢合作!\n");

printf("班次\t发车时间\t起点\t终点\t行车时间(小时)\t额定载量\t已定票人数\n");

printf("%d\t%d:%d\t\t",car[i-1].SerialNumber,car[i-1].SetOut.hour,car[i-1].SetOut.minutes);

printf("%s\t%s\t\t%.1f\t%d\t\t%d\n",car[i-1].DeparturePoint,car[i-1].TerminalPoint,car[i-1].LastTime,car[i-1].FixNumber,car[i-1].FixedNumber);

//printf("按任意键回主菜单......\n");

//getchar();getchar();

}

void TicketDelete(void)

{

int i;

printf("请输入要退购的车票的班次:");

scanf("%d",&i);

if(i<0||i>RecordNumber)

{

printf("对不起,今天没有这趟车,无法完成退票.谢谢使用!\n");

getchar();

//getchar();

TicketManagement();

getchar();

}

time_t tval;

struct tm*now;

tval= time(NULL);

now= localtime(&tval);

if((now->tm_hour==car[i].SetOut.hour&&now->tm_min<car[i].SetOut.minutes)||(now->tm_hour<car[i].SetOut.hour))

{

if(car[i].FixedNumber>=1)

{

car[i].FixedNumber--;

printf("退订车票成功,谢谢使用!\n");

}

else printf("对不起,今天的这趟车的票尚未卖出,无法完成退票!\n");

}

else printf("对不起,今天的这趟车已发出,无法完成退票!\n");

printf("班次\t发车时间\t起点\t终点\t行车时间(小时)\t额定载量\t已定票人数\n");

printf("%d\t%d:%d\t\t",car[i-1].SerialNumber,car[i-1].SetOut.hour,car[i-1].SetOut.minutes);

printf("%s\t%s\t\t%.1f\t%d\t\t%d\n",car[i-1].DeparturePoint,car[i-1].TerminalPoint,car[i-1].LastTime,car[i-1].FixNumber,car[i-1].FixedNumber);

getchar();//getchar();

}

void exit(void)

{

printf("\n\n*********************谢谢使用本系统,欢迎下次继续使用***********************\n");

exit(0);

}

好了,本文到此结束,如果可以帮助到大家,还望关注本站哦!

c语言编译器哪个好?‖c语言怎么用phpstudy安装及使用教程(phpstudy批量抓鸡工具)