- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C 语言课程设计
专 业: 自动控制
班 级:
姓 名:
学 号:
指导教师: 董昱
评语:
平时(40) 修改(30) 报告(30) 总成绩
兰州交通大学自动化与电气工程学院
2012 年 7 月 6 日
C 程序设计课程设计报告
1 基本题目
1.1 题目:计算字符串中子串出现的次数。
程序说明:利用输入函数输入任意两个字符串,请你编写程序求出第二个字符串
在第一个字符串中出现的次数,即在第一个字符串中有几个第二个字符串。
1.2 程序分析
在主函数中定义两个字符串str,substr,再定义int型的count实现统计第二个字符串
在第一个中出现的次数,定义指针*p,*q,*m通过while循环对相同字符串进行查找,
最后用if语句:如果*p指向’\0’,则实现循环,输出统计个数count。
流程图见附录1。
1.3 程序
#include stdio.h
main()
{
char str[100],substr[10]; //定义两个字符串
int count;
char *p,*q,*m; //定义三个指针
printf(enter string:);
gets(str);
printf(enter substr:);
gets(substr); //输入两个字符串
count=0; //给 count 赋初值
while(*p)
{
q=substr;
m=p; //当 q 指向子串时, m=p;
while(*q==*m*q!=\0) //执行 while 循环
{
m++;
q++;
}
if(*q==\0) //如果 q 指向\0 统计出 count
count++;
p++;
}
printf(count=%d\n,count);
}
- 1 -
C 程序设计课程设计报告
1.4 程序的运行结果
上述程序的运行结果如图 1 所示:
图 1 基本题目运行结果
从图 1 可以看出,输入两个字符串:mhbmhbhgugyumhbmhbmhbmhb。
按回车键:count=2 即子串在第一个字符串中出现了两次。
2 改错题目
2.1 题目
#include stdio.h
main()
{
int a;
char ch;
ch=A;
scanf(%d,a);
printf(%c+%d=%c\n,ch,ch+a);
}
2.2 改正后程序
#include stdio.h
main()
{
int a;
char ch;
ch=A;
scanf(%d,a);
printf(%c+%d=%c\n,ch,a,ch+a);
}
纠错:”A” ‘A’ 字符用””界定;再输入 a 时要给其取地址,前面必须加
;输出时应同时输出 a,所以后面必须有 a。
- 2 -
C 程序设计课程设计报告
2.3 程序运行结果
上述程序的运行结果如图 2 所示:
图 2 改错题运行结果
从图 2 可以看出,输入 int 的 a=32,其结果为 A+32=a,即将大写字母 A 转换成
小写字母 a。
3 综合题目
3.1 题目
综合题题目为:简单图形设计
3.11 问题描述:
根据本专业特点,设计并绘制与专业相关的图形。
3.12 功能要求:
根据1024*768的分辨率,图形位置基本居中;
根据给定的数据,程序可自动生成图形的初始状态。
3.13 算法提示:
数据结:结构体类型数组;
创建MFC应用程序工程,利用可视化程序设计。
3.14 其它:
对该系统有兴趣的同学可以在实现上述基本功能后,完善系统的其它功能。
3.2 程序分析
实现简单图形绘制,如:绘制直线、圆、填充颜色、添加文字等等。最终绘制
出一个完整的车站站场图(分别使用了 MoveTo,LineTo,Ellipse,pNewBrush,
TextOut,OnDraw 等函数)。
基本创建过程流程图见附录 2。
其中我负责的内容如下:
一.绘制信号灯及给其填充颜色;
二.查找相关绘制图形的基本函数,并了解其用法;
三.经过老师最后纠正我对整体图形做了修改和完善。
- 3 -
C 程序设计课程设计报告
3.3 程序中各函数的功能
(1)MoveTo
该函数用于将当前绘图位置移到指定的坐标点处,函数声明如下:
CPoint MoveTo(int x, int y);
CPoint MoveTo(POINT point);
参数 x 和 y,及参数 point 指定了新的当前绘图位置坐标。返回值是 CPoint 对象
实例,它包含了新的当前绘图位置坐标。CPoint 类是 MFC 中定义的一个点对象的类,
它有两个成员变量 x 和 y,用于存放点的坐标位置,类型为 int。在绘图函数参数中所
有使用 POINT 结构的地方都可以使用 CPoint 类。MoveTo 函数通常与 Line
原创力文档


文档评论(0)