A. c语言函数的定义与调用
错误一、
void strca1(char s1[],char s2[])
{
int i,j; //这里i , j 没的初值,运行结果是不确定的!!加上一句:
i=j=0;
错误二、
char e[20]="aaaa",f[20]="bbbb",*g,*h,*k; //这里g h都是指针,且没有给指定空间位置
g="cccc"; //这里直接向g所指向的位置放数据,就好比,你想往盒子里面放苹果,但你却没有告诉往哪个盒子里放,“cccc"就不知道会存放到哪里了,当g指向了一个不可用的内存地址,程序就会运行错误了!
h="dddd";//同上
改正方法:
char e[20]="aaaa",f[20]="bbbb";
char *g="cccc",*h="dddd",*k; //在定义时这样写是可以的,意思是让g直接指向一个存放"cccc"数据的位置。
B. 说明一下C语言函数的基本结构,谢谢!
C语言程序结构的特点是顺序结构、选择结构、循环结构。
1、顺序结构,默认的流程结构,按照书写顺序执行每一条语句。
2、选择结构,对给定的条件进行判断,再根据判断结果来决定执行那一段代码。
3、循环结构,在给定条件成立的情况下,反复执行某一段代码。只有满足条件是才会执行循环体,特别注意是否进入了死循环。
(2)c语言教学第五章函数扩展阅读
C语言程序设计还能帮助我们学习其它计算机语言如我们熟悉的java语言vb语 言的设计,因此C语言是初学者必备的语言。
冯.诺依曼在1945年提出了现代计算机的若干思想,被后人称为冯.诺依曼思想,这是计算机发展史上的里程碑。自1945 年至今大多采用其结构,因此冯.诺依曼被称为计算机之父。
他的体系结构计算机由运算器,控制器,存储器,输入设备,输出设备五大部件构成。C语言拥有一套完整的理论体系经过了漫长的发展历史,在编程语言中具有举足轻重的地位。
C. c语言的函数怎么定义在主函数中要调用该函数,怎么弄 形参与实参的关系
C语言函数在函数过程编写前定义,比如编写一个名称为fx的函数,那么:
#include"stdio.h"
#......
void fx(变量类型定义,用,分开);
main()
{
。。。。。。
fx(形参);
。。。。。。
}
void fx(变量类型定义,用,分开)
{。。。。。。}
形参是一个形式,相当于书架,你把实参(书)赋值给(放到)形参(书架对应位置上),并通过形参进行编辑(理解为在书架上拿书操作);最终书架的东西不能动,你看完从哪里拿的放到哪,但是你拿下来过的东西的方式是你自己决定的
D. C语言图形函数及应用 C语言输出图形
摘 要:图形函数是C语言函数库中的重要组成部分,利用图形函数可以绘制出非常精美的图形,该文介绍了常用C语言图形函数并通过一个具体的实例介绍了如何利用图形函数设计出完美、漂亮的图形。
关键词:C语言 图形函数 应用
引言
C语言是国际上广泛流行的很有发展前途的计算机高级语言。它既具有一般计算机高级语言的可读性改睁、可移植性的特点,又具有低级语言能够改皮对计算机硬件进行操作的特性,因此,它适合用于操作系统的描述语言,用C语言开发系统软件和应用软件。但在87ANSIC中并没有规定C语言的图形功能,许多C语言教材没有介绍C语言的图形功能,这给许多需要用C语言设计完美、漂亮的用户界面的初学者带来了困难[1-2]。本文旨在通过介绍Turbo C 2.0的主要图形函数及一个具体的实例简介这些函数的用法。
1 与图形绘制有关的系统硬件[2-3]
要使计算机能够绘制图形,必须有一定的硬件基础作为保障。图形绘制的硬件基础主要是显示器和显示卡。显示器的工作方式一般有文本方式和图形方式。要在屏幕上显示图形,必须将其设置成图形方式。衡量显示器的主核歼岁要性能指标是点距和分辨率。目前显示器常用的点距有0.39mm、0.31mm和0.28mm三种。高档微机配置的彩色显示器目前流行的是VGA档次,它最低的分辨率为640×480,中档的是800×600,高档的是1024×768。显示器必须与显示卡配套使用才能发挥其图形功能。显示卡所能支持的不同分辨率的显卡类型称为显示模式。下表给出Turbo C中常用的几种显示卡的图形模式:
2 Turbo C 2.0中与绘图有关的常用图形函数
2.1 设置图形工作方式的函数:initgraph()。
Turbo C绘图,首先必须设置显示器为图形方式。该函数通过选定参数可确定显卡的类型及图形模式。
如:
int driver,mode;
driver=IBM8514;
mode=IBM8514HI;
initgraph(&driver,& mode,“c:\temp”);
将图形方式设置为IBM8514类型,IBM8514HI图形模式,1024×768的分辨率,搜索路径temp为C盘一级子目录。
2.2 颜色控制函数setbkcolor(int color)及setcolor(int color)。
其中setbkcolor( )设置背景颜色,setcolor( )设置划线颜色。
2.3 基本绘图函数
A. line(int x1,int y1,int x2,int y2)
功能:从点(x1,y1)到点(x2,y2)画一直线。
B. arc(int x,int y,int stange,int endangle,int r)
功能:以(x,y)为圆弧的中心,以stange为起始角度,以endangle为终止角度,以r为半径作一圆弧。
C. setfillstyle(int pattern,int color)
功能:用参数pattern所确定的填充模式,用参数color确定的颜色进行填充。
D. floodfill(int x,int y,int color)
功能:填充一个含有点(x,y)在内的有界封闭区域,这个有界封闭区域的边界由参数color确定,填充模式与填充颜色由函数setfillstyle设定。
2.4 字符输出函数
A. settextstyle(int font,int direction,int size)
功能:在图形方式下设置字符的字体,式样和放大因子。
B. outtextxy(int x,int y,char &str)
功能:在窗口(x,y)的位置输出字符或字符串。
C. getch( )
功能:从控制台取得一字符且不输出,用来使程序暂停,按任意键后使程序继续运行。
3. 绘制一个圆饼型统计图的程序如下
#include
main( )
{ int driver,mode;
driver=VGA;
mode=VGAHI;
initgraph(&driver,&mode,“ ”);
setbkcolor(0);
setcolor(15);
arc(320,240,0,360,180);
line(320,240,500,240);
line(320,240,443,112);
line(320,240,266,70);
line(320,240,200,374);
setfillstyle(4,2);
floodfill(340,230,15);
setfillstyle(5,9);
floodfill(340,180,15);
setfillstyle(7,4);
floodfill(300,240,15);
setfillstyle(8,3);
floodfill(340,280,15);
setcolor(14);
settextstyle(1,0,4);
outtextxy(410,180,“14%”);
settextstyle(1,0,4);
outtextxy(330,110,“16%”);
settextstyle(1,0,4);
outtextxy(200,200,“34%”);
settextstyle(1,0,4);
outtextxy(340,310,“36%”);}
上述程序在Turbo C 2.0中上机通过编译、连接、运行,可得到精美的圆饼型图。读者通过阅读并上机调试运行该程序可以对C语言的图形设置、绘制;颜色的控制、填充等函数的应用有一个感性的认识,对复杂枯燥的C函数提高学习兴趣。
结语
目前许多C语言教材很少介绍C语言的图形功能,而许多C语言学习者对C语言的图形功能很感兴趣,为帮助初学者学习C语言绘图函数并提高学习兴趣,本文简单介绍了C语言一些常用的绘图函数及其应用,权当抛砖引玉!还有一些图形函数没有列出,读者若有兴趣可参阅《C语言函数大全》。
参考文献:
[1]徐士良.PC机C图形编程手册.北京:清华大学出版社,1994.2.
[2]谭浩强.C程序设计(第二版)[M].北京:清华大学出版社,1999.
[3]MarkFinlay.C和C++图形程序设计基础.北京:龙门书局,1997.4.
[4]Herbert Schildt着.戴健鹏译.C语言大全(第二版)[M].北京:电子工业出版社,1994.
E. C语言教程的内容是
C语言学习从入门到精通的一套经典视频教程,本课程通过高清晰的视频、概念详解、实例精讲、习题测试让你很快的掌握C语言的相关知识,并领略运用到实例中去。在针对一些用户认为C语言比较难学的情况下,本课程从初中级用户的角度出发,进行合理的内容安排,突出学、练、用、巩固相结合的特点,以通俗易懂的语言,丰富多彩的实例,详细介绍了使用C语言进行程序开发应该掌握的各方面知识。本课程主要给大家讲解了C语言概述,算法,数据类型,运算符与表达式,常用的数据输入、输出函数,选择结构程序设计,循环控制,数组,函数,指针,结构体和共用体,位运算,预处理,模块化编程,编程规范,C语言常见问题及分析,习题测试等内容。所有知识都结合具体实例进行介绍,涉及的程序代码给出了详细的讲解,可以使读者轻松领会C语言程序开发的精髓,快速提高开发技能。
课程内容详尽,实例丰富,非常适合作为单片机及编程初学者的学习课程,也可作为大中院校相关专业在校学生及毕业生的教学辅导课程、短期C语言培训课程,是C语言编程爱好者从入门到深入的经典课程。
课程共分为15讲,每节课的内容大纲如下:
第1课 C语言概述
1、几种常见的程序设计语言
2、C语言出现的历史背景
3、C语言的特点
4、简单的C程序介绍
5、C程序的上机步骤
6、习题测试
第2课 程序的灵魂-算法
1、程序设计过程
2、算法的基本概念
3、算法的特征
4、算法的表示方法(流程图)
5、结构化程序设计方法
6、习题测试
第3课 C语言的数据类型
1、预备知识
2、C语言的数据类型
3、常量与变量
4、不同数据类型之间的转换
5、运算符号和表达
6、习题测试
第4课 C语言顺序程序设计
1、C语句概述
2、赋值语句
3、数据的输入输出
4、字符数据输入输出
5、格式输入输出
6、顺序程序举例
7、习题测试
第5课 C语言选择程序设计
1、关系运算符和关系表达式
2、逻辑运算符和逻辑表达式
3、if 语句---条件判断
4、条件运算符
5、switch 语句
6、选择程序举例
7、习题测试
第6课 C语言的循环控制
1、概述
2、goto语句及与if语句构成循环
3、while语句
4、do …while语句
5、for语句
6、循环的嵌套
7、几种循环的比较
8、break语句和contiune语句
9、程序举例
10、习题测试
第7课 C语言数组
1、一维数组
2、二维数组及多维数组
3、字符数组和字符串
4、程序举例
5、习题测试
第8课 函数
1、概述
2、函数定义的一般格式
3、函数的返回值
4、函数的调用
5、函数参数及其传递方式
6、函数的嵌套与递归调用
7、数组作为函数参数
8、变量的存储属性
9、内部函数和外部函数
10、习题测试
第9课 C语言预处理命令
1、编译预处理
2、宏定义
3、文件包含
4、条件编译
5、习题测试
第10课 指针
1、指针的概念
2、指针变量
3、指针与数组
4、指针与字符串
5、指针与函数
6、返回指针值的函数
7、指针数组和多级指针
8、习题测试
第11课 结构体与共用体
1、结构类型与结构变量的定义
2、结构变量的引用与初始化
5、结构数组
6、指向结构类型数据的指针
7、用指针处理链表
8、共用体
9、枚举类型
10、用typedef定义别名
11、程序举例
12、习题测试
第12课 位运算
1、位运算概述
2、位运算符的使用方法
3、习题测试
第13课 单片机C语言的模块化编程
1、模块化编程的优点
2、C语言源文件(*.c)文件和头文件(*.h)的的作用
3、模块化编程设计步骤
4、程序实例
5、模块化程序的移植
6、习题测试
第14课 C语言编程规范
1、编码规范概述
2、编程排版规范
3、编程注释规范
4、命名规则
5、可读性规范
6、变量与结构规范
7、函数与过程规范
8、编程效率规范
9、质量保证规范
10、宏规范
11、代码编辑
12、编译
13、审查
14、代码测试
15、维护
16、习题测试
第15课 C语言编程常见出错问题及分析
1、C语言的一些基本概念
2、位(bit)和字节(byte)
3、变量和数据存储
4、数据文件
5、字符串操作
6、数组
7、指针和内存分配
8、函数
9、编译预处理
10、标准库函数
11、系统调用
12、可移植性
13、编程风格和标准
14、程序的编写和编译
15、调试
F. C语言 函数功能解析
本函数为求字符长度的函数。
int
fun(char
*s)
{char
*t=s;
//t取s的首地址
while(*t++);
//t自己遍历,到字符末也就是
‘\0’的时候,也是,s有几个字符,就++几次,到不能加的时候,停止循环,
return(t-s);
//首先,字符是一个字节的大小,所以t-s就是char
*s的长度,又因为*t到‘\0’的时候还加一次,所以长度包括‘\0’.
}