C语言程序设计实验报告模板_c语言程序设计实验报告
1.C语言实验报告
2.有关C语言的 实验报告 怎么写啊,具体一点好吗?比如三个实数求和求差的编辑实验报告。谢谢了!
3.C语言程序设计实验报告
4.c语言程序设计实验报告80~100行,关于一种小游戏的,语句简单些,
实验报告
1、有一分段函数:
设计一程序完成, 主控函数main()输入X的值并输出Y值.函数VAL计算Y的值。
1.需求规格说明
本题要求掌握C语言的数据类型,程序结构,基本输出输入,函数应用知识,问题的要求用到两个函数,要求利用主控函数main()输入X的值并输出Y值.并用函数VAL计算Y的值。
2.设计
2.1 设计思想
用两个储存空间分别存放主函数和被调用函数,在主函数中控制输入输出,在调用函数中对数据进行处理. 本程序需要用到实型变量作为数据主要数据类型.
2.2 设计表示
本程序有两大模块,主函数MAIN()和被调用函数VAL()
2.3实现注释
程序开发环境为“Windows XP sp2中文版“为操作系统,运行环境turbo c/vc 6.0等等可以运行C语言程
2.4详细设计
3.用户手册
用户打开turbo c/vc 6.0的界面,启动本程序,然后按ALT+R运行程序,用户根据提示输入x值, 然后按回车键,最后用ALT+F5看运行结果。
4.调试报告
在调试过程中,如果在主函数中没有调用函数y=VAL(x),结果可以运行,但不能得到正确的结果.由此可知,我们在做主控函数时,一定要注意调用函数的重要性.
5.源程序清单
#include
void main()
{float VAL(float x);
float x,y;clrscr();
printf("input x=");
scanf("%f",&x);
y=VAL(x);
printf("y= %f",y);
}
float VAL(float x)
{float y;
if(x<1)
y=x;
else if(x>=1&&x<10)
y=2*x-1;
else
y=3*x-11;
return(y);
}
C语言实验报告
海龟作图行不。这是我大一时的C语言课程设计,我自已做的。
高级级语言课程设计实验报告
实验课程:课程设计 年级:2004级 实验成绩:
课程设计名称 海龟作图 姓名:
任课教师: 学号:2004810025 实验日期:
一、目的
通过编一些小程序,巩固和利用所学的知识,加强变成能力。
本课题涉及的知识内容:for循环嵌套,if语句,二维数组,文件创建与保存,自定义函数等高级语言内容。
二、内容与设计思想
1. 设计内容
海龟爬行过程中,笔朝下纪录海龟爬行踪迹,笔朝上则不纪录并保存踪迹,
1表示笔朝上,2表示朝下,3右转弯,4左转弯,5,x向前走x格,6打印
9结束
2. 主要代码结构
main()函数调用了两个函数
3. 主要代码段分析。
譬如print函数,打印海龟踪迹并保存。Step函数当笔朝上时海龟走过的数组值加一
三、使用环境
本次上机实践所使用的平台和相关软件。
平台:Windows 2000
相关软件:VC++
四、调试过程
1. 测试结果分析
经检验,运行结果正确
五、总结
1. 设计中遇到的问题及解决过程
调试过程中出现一些逻辑和语法错误,但是语法错误容易纠正,而
逻辑错误则比较难纠正。有时会漏掉“,”,“;”,“}”等符号
2. 设计体会和收获。
发现自己也能解决有点复杂的问题
六、附录
1. 源代码
/*海龟作图,活动区域50*50,超出区域,海龟死亡游戏完*/
#include<stdio.h>
void print(int [][49]);
void move(int [][49],int,int,int);
main()
{
int step[49][49];
int a,gostep,direct=1,record=1,i,j;
for(i=0;i<=49;i++)
for(j=0;j<=49;j++)
step[i][j]=0;
while(1)
{
scanf("%d,%d",&a,&gostep);
if(a==2) record=1;
if(a==1) record=0;
if(a==4)
{
direct++;
if(direct==5) direct=1;
continue;
}
if(a==3)
{
direct--;
if(direct==0) direct=4;
continue;
}
if(a==5)
{
move(step,gostep,direct,record);
continue;
}
if(a==6)
print(step);
if(a==9)
return 0;
}
}
/*打印海龟踪迹并保存*/
void print(int s[][49])
{
int i,j;
FILE *fp;
fp=fopen("D:\\step.txt","w");
for(i=0;i<=49;i++)
{
for(j=0;j<=49;j++)
{
printf(s[i][j]==0? " ":"*");
fprintf(fp,s[i][j]==0? " ":"*");
}
printf("\n");
}
fclose(fp);
}
void move(int t[][49],int i,int j,int k)
{
static int x=0,y=0;
int xmove,ymove,num;
if(j==1)
{
xmove=1;ymove=0;}
if(j==2)
{
xmove=0;ymove=-1;
}
if(j==3)
{
xmove=-1;ymove=0;
}
if(j==4)
{
xmove=0;ymove=1;
}
for(num=0;num<i;num++)
{
t[0][0]=1;
x+=xmove;
y+=ymove;
if(x<0||x>49||y<0||y>49)
{
printf("the place is danger ,you are died");
exit();
}
t[y][x]+=k;
}
}
有关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语言程序设计实验报告
学号:__________ 姓名:__________ 班级:__________ 日期:__________指导教师:__________ 成绩:__________实验一 上机操作初步和简单的C程序设计
一、 实验目的
1、熟悉C语言运行环境Turbo C++3.0
2、会简单的程序调试
3、熟悉C语言各种类型数据的输入输出函数的使用方法
4、掌握顺序结构程序设计
二、 实验内容
1、 上机运行本章3个例题,熟悉所用系统的上机方法与步骤。(习题1.7)
2、 编写一个C程序,输入a、b、c 3个值,输出其中最大者。(习题1.6)
3、 设圆半径r=1.5,圆柱=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字。注意:在Trubo C++ 3.0中不能输入汉字,只能输入英文或拼音。(习题4.8)
4、 运行如下程序,写出运行结果。
#include <stdio.h>
void main()
{
int a=1,b=2;
a=a+b; b=a-b; a=a-b;
printf("%d,%d\n",a,b);
}
三、 实验步骤与过程
四、程序调试记录
c语言程序设计实验报告80~100行,关于一种小游戏的,语句简单些,
题目2:
#include <stdio.h>
#include <stdlib.h>
main()
{
int a;
printf("?ɼ¨?\n");
scanf("%d",&a);
if(90<=a&&a<=100) printf("A");
if(80<=a&&a<=89) printf("B");
if(70<=a&&a<=79) printf("C");
if(60<=a&&a<=69) printf("D");
if(0<=a&&a<=59) printf("E");
if(a>100||a<0) printf("ݳ?í");
getch();
}
switch:
#include<stdio.h>
main2()
{
int a;
printf("?ɼ¨:\n");
scanf("%d",&a);
switch(a/10)
{
case 10:printf("A!\n");
break;
case 9:printf("A!\n");
break;
case 8:printf("B!\n");
break;
case 7:printf("C!\n");
break;
case 6:printf("D!\n");
break;
case 5:printf("E!\n");
break;
case 4:printf("E!\n");
break;
case 3:printf("E!\n");
break;
case 2:printf("E!\n");
break;
case 1:printf("E!\n");
break;
case 0:printf("E!\n");
break;
default:
printf("?дí\n") ;
}
getch();
}
还有你第一题是什么意思呢
题目3 :
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
main
()
{
int a,g,s,b,q,w,x,p,x1,x2,x3,x4;
printf("?룺\n");
scanf("%d",&a);
/*?ж?λ?*/
if(a<0||100000<a) printf("ݳ·?§?");
else if(a/10000!=0){ printf("5λ?\n");p=5;}
else if(a/1000!=0){ printf("4λ?\n");p=4;}
else if(a/100!=0) {printf("3λ?\n"); p=3;}
else if(a/10!=0) {printf("2λ?\n");p=2;}
else if(a/1!=0) {printf("1λ?\n");p=1;}
/*·?±?òӡ?ÿһλ?×?*/
w=a/10000;
printf("?òλΪ%d\n",w);
q=(a-w*10000)/1000;
printf("?§λΪ%d\n",q);
b=(a-10000*w-1000*q)/100;
printf("°?λΪ%d\n",b);
s=(a-10000*w-1000*q-b*100)/10;
printf("ʮλΪ%d\n",s);
g=(a-w*10000-q*1000-b*100-10*s) ;
printf("?÷λΪ%d\n",g);
/*°ò?òӡ÷λ?*/
if(p==5) {x=g*10000+s*1000+b*100+q*10+w; printf("ò?Ϊ%d\n:",x);}
else
if(p==4) {x1=g*1000+s*100+b*10+q; printf("ò?Ϊ%d\n:",x1); }
else
if(p==3) {x2=g*100+s*10+b; printf("ò?Ϊ%d\n:",x2);}
else
if(p==2) {x3=g*10+s; printf("ò?Ϊ%d\n:",x3);}
else
if(p==1) {x4=g; printf("ò?Ϊ%d\n:",x4);}
getch();
}
题目4:
#include <stdio.h>
#include <stdlib.h>
main()
{
int a[8],i,b,j,swap;
printf("?ݣ?\n");
for(i=0;i<8;i++) scanf("%d",&a[i]);
for(i=0;i<7;i++)
{
swap=0;
for(j=0;j<8-i-1;j++)
{
if(a[j]>a[j+1])
{
swap=1;
b=a[j];
a[j]=a[j+1];
a[j+1]=b;
}
}
if(!swap) break;
}
for(i=0;i<8;i++) printf(" %d ",a[i]);
printf("\n");
getch();
}
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define MAX_PARKING_SIZE 10//停车场最大停车数量
#define PRIZE 10.00//停留每小时单价
#define true 1
#define false 0
typedef struct stack
{
long pos[MAX_PARKING_SIZE];//存储车牌号码
int time[MAX_PARKING_SIZE];//存储进入车站的时间
int point;//最后一辆车的位置指针
}Stack;//定义栈-模拟停车场
typedef struct queue
{
int num;//存储车牌号
struct queue *next;//指向下一辆车
}Queue;//定义队列-模拟停车场外
void InitStack(Stack *s)
{
s->point=-1;
}//初始化栈
Queue *InitQueue()//初始化队列
{
Queue *q;
q=(Queue *)malloc(sizeof(Queue));
q->next=NULL;
return q;
}
int StackPop(Stack *s,long *i,int *j)//退栈函数
{
if(s->point==-1)return false;
else
{
*i=s->pos[s->point];
*j=s->time[s->point];
s->point--;
return true;
}
}
int StackPush(Stack *s,long i,int j)//压栈函数
{
if(s->point==MAX_PARKING_SIZE-1)return false;
else
{
s->point++;
s->pos[s->point]=i;
s->time[s->point]=j;
return true;
}
}
int QueuePop(Queue **qH,long *i)//退队函数
{
Queue *temp;
if((*qH)->next==NULL)return false;
else
{
temp=(*qH)->next;
(*qH)->next=temp->next;
*i=temp->num;
free(temp);
return true;
}
}
int QueuePush(Queue **q,long i)//入队函数
{
Queue *temp;
if((temp=(Queue *)malloc(sizeof(Queue)))==NULL)return false;
else
{
(*q)->next=temp;
temp->num=i;
temp->next=NULL;
*q=temp;
return true;
}
}
int main()
{
int time,i,j,inStack,inQueue;
long num;
char state;
Stack park;
Queue *H,*p,*temp,*temp2;
H=InitQueue();
p=H;
system("color 9E");
InitStack(&park);//初始化队列和栈
printf("**********这里是停车场管理程序,欢迎使用**************\n");
printf("\n停车场最大能停车%d辆,停车时间不得超过24小时,现在停车的单价为每小时%.2f元\n",MAX_PARKING_SIZE,PRIZE);
while(1)
{
inStack=inQueue=0;temp=H;
printf("┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\n");
printf("┃ 停车场管理系统 ┃\n");
printf("┃ (A或a)汽车到达和已到汽车查询 ┃\n");
printf("┃ (D或d)汽车离开 ┃\n");
printf("┃ (E或e)程序退出 ┃\n");
printf("┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\n");
printf("\n您的选择是:");
state=getche();
if(state=='a'||state=='A'||state=='d'||state=='D')
{
printf("\n输入车牌号(数字):");
scanf("%ld",&num);
printf("\n输入到达或查询或离开的的时间(24小时制,单位:小时):");
scanf("%d",&time);
}
if(state=='a'||state=='A')
{
for(i=0;i<=park.point;i++)
if(park.pos[i]==num)
{
inStack=1;
break;
}//在车站中查找
for(j=1;temp->next!=NULL;j++)
{
temp2=temp;
temp=temp2->next;
if(temp->num==num)
{
inQueue=1;
break;
}
}//在车站外查找
if(inStack)
printf("\n查询结果:输入的汽车已经在车站中第%d个位置停留了%d个小时!\n",i+1,time>park.time[i]?time-park.time[i]:time+24-park.time[i]);
else if(inQueue)
printf("\n查询结果:输入的汽车已经在车站外第%d个位置等候\n",j);
else
{
if(StackPush(&park,num,time)==false)
{
QueuePush(&p,num);
printf("\n车站已满,车辆停在场外。\n");
}
else printf("\n车辆成功进站!\n");
}//如果车辆到达,当车站已满,停在车站外,否则,进入车站
}
else if(state=='d'||state=='D')//如果是离开
{
for(i=0;i<=park.point;i++)
if(park.pos[i]==num)
{
inStack=1;
break;
}//在车站中查找
if(inStack)//如果在车站中
{
printf("正要离开的汽车在车站中第%d个位置停留了%d个小时,应付%.2f元\n",i+1,time>park.time[i]?time-park.time[i]:time+24-park.time[i],time>park.time[i]?(time-park.time[i])*PRIZE:(time+24-park.time[i])*PRIZE);
while(i<park.point)
{
park.pos[i]=park.pos[i+1];
park.time[i]=park.time[i+1];
i++;
}
park.point--;//把离开的车辆从车站中删除
if(H->next!=NULL)
{
QueuePop(&H,&num);
if(H->next==NULL)p=H;
StackPush(&park,num,time);
printf("\n停车场空出一位置。场外等候的%d号汽车入站了!\n",num);
}//如果车站外有车,入站
}
else//不在车站中
{
for(i=1;temp->next!=NULL;i++)
{
temp2=temp;temp=temp2->next;
if(temp->num==num)
{
inQueue=1;
break;
}
}//查找是否在车站外
if(inQueue)
{
printf("\n汽车在停车场外,不收费\n",i);
temp2->next=temp->next;
if(temp==p)p=temp2;
free(temp);
}//在车站外
else printf("\n对不起,您输入了不存在的车牌号!\n");
}
}
else if(state=='e'||state=='E')
{
printf("\n");
break;
}
else printf("\n输入错误!\n");
}
return 0;
}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。