当前位置:文档之家› C语言源程序详解

C语言源程序详解

C语言源程序详解
C语言源程序详解

C语言程序设计

<一>

1、程序运行从main()函数开始,也从main()函数结束。

2、函数是C程序的基本单位,由函数头和函数体组成。

3、C语言源程序是由函数组成,它们的数目可以有多个。

4、在C语言源程序中,是必须有一个函数名为main的函数。main()后的小括号()没有任何内容,它不可以省略。

5、C程序中的语句用分号结束,在一个程序行上可以有多个语句,一个C 语句能写在多个程序行上。

6、函数体是由一对大括号围起来语句序列组成。小括号是函数的标志。

二、C语言的组成元素

1、命令、函数和变量等是组成程序的基本对象,每一个程序对象都需要一个名字来标识,程序对象的名称就是标识符。

2、在C语言中,标识符分为用户标识符和系统标识符。

3、用户标识符是指在程序中由程序员为变量、函数、数组等程序对象自行命名的标识符。

4、系统标识符是指C语言编译系统内部预定义的用于表示命令数据内型的标识符,又称保留字符。

5、基本字符集

英文字母:a~z和A~Z。

阿拉伯数字:0~9。其他字符:()、[ ]、+、-、*、/、%、<、>、<=、>=、==、!=、!、&&、‖、++、--、+=、-=、*=、/=、%=。它们是由1~2个字符组成。用作C语言的运算符;还包括:空格、换行符,回车符,单双引号,大括号,逗号,分号,反斜线,它们在程序中起到分隔和定界作用。

6、标识符:是用于标识命令;变量、函数,数组,数据类型等程序对象名称的字符序列。

7、组成标识符的合法字符有:字母,数字,下划线,三种,数字不能作首字符。

三、执行C语言程序

1、单击“开始”——“程序”——“附件”——“命令提示符”。

2、按功能键<10>激活菜单,执行“File”——“NEW”(ALT+回车)全屏。

3、为保存,输入程序文件名。

4、+运行

有输入:等待输入→回车

通过

无输入:返回到编辑

未通过:回车→F6→修改

F3(打开)

<二>

一、对数据进行分类

基本整型int(长度)2 (范围)-32768~32767

长整形long (长度)4 (范围)-21474843648~21474843647 无符号整型unsigned(长度)2 (范围)0~65535

实型单精度float(长度)4 (范围) 3.4e-38~3.4e+38

双精度double(长度)8 (范围)1.7e-308~1.7e+308

字符型char(长度)1

二、正确书写C语言中常量

1、表示形式:

小数形式:只有一个小数点,两边至少一边有数字。

2、指数形式:(科学计数法)e(E)的前后都有数字,e后的数字必须为整数。

3、转义字符:以反斜线(”\”)开头的字符序列人表示一个字符。

4、字符常量:是用单引号(``)括起的一个字符列外,它仍表示一个字符。

5、字符串常量:是双引号(” ”)括起的字符序列(可以是转义字符)。

6、定义符号常量:

一般格式:

#define 标识符常量

三、在程序中使用变量

1、概念:

变量是在程序运行过程中其值可发生变化的数据对象。

2、组成:

变量包括:变量名,数据类型、变量值。

3、变量名是一个合法的用户自定义标识符,是对对应内存单元的符号化地址,通过” & 变量名”的形式可获得该变量所对应内存单元中存储的数据值(物理地址)。

4、在程序中使用变量必须先定义后使用,使用前置初值。

5、定义变量要指出类型和名称,其一般格式为:类型标识符、变量名列表。

6、符号” = ”的作用是给变量賦初值,称赋值号。赋值号把它右边的值赋值给它左边的变量。

7、未赋值变量其值不确定,不能参加运算,所以参加运算前要设置它的初始值。

8、类型标识符: 类型名称,如int ,float,char等,变量名列表是用逗号” ,”分隔。

9、为变量预置初始值有:初始化和赋初值两种,变量初始化是在定义变量后,在使用之前的赋值操作。

初始化:int x=1,y=2,z=3;(再同一语句行上)

赋初值:int x,y,z;

x=1;y=2;z=3;(不再同一语句行上)

<三>

一、计算算术表达式的值

1、运算符:用来特定的符号来表示具体操作。

2、“ /” 名称除号,操作数2个,任意类型,运算规则:如果两个操作数为整数,商为整数(舍弃小数部分,不进行四舍五入;只要其一为实数,商为实型,6位小数)。

3、取模运算(“%”)必须为整数;模的符号和被除数符号相同;被除数小于除数,模等于被除数。

4、表示:用运算符将操作数连接起来组成的句子。

5、优先级:是指在表达式中运算符执行的先后。

6、结合性:是操作数于运算符结合的方向,左结合、右结合。

做结合是:指从左向右结合执行运算;右结合是:指从右向左结合执行运算。

7、强制转换:通过类型转换运算符来将表达式值的类型转换为所需的数据类型,一般格式(类型标识符)表达式如:(int)fv的值为int 型,(float)x/y是把x的转换成实型后再除以y。

二、给变量赋值

1、赋值操作的本质是:向变量对应内存单元写入数据既改变变量的。变化遵守“新来旧去”的原则,未重新赋值的变量保持它原来的。

三、计算自增自减表达式的

1、确定自增自减运算表达式的简单方法是:观察表达式中变量和运算的位置关系,凡变量在前,则表达式值为变量自增(或自减)之前的值;凡

变量在后,则表达式的值为变量自增(或自减)之后的值。

2、自增自减运算操作中包含有赋值操作,因此,不能对常量和表达式进行自增自减运算。

3、不论是前缀形式还是后缀形式的自增自减表达式执行后,对变量的影响都是相同,区别仅在表达式不同。

四、比较两个数的大小

1、任何C语言表达式结果都可以视为逻辑值。非“0”值为真,“0”值为假。

2、字符串不能直接用关系运算符进行大小关系比较运算。

3、数值数据(整型和实型)按数值大小进行比较,字符以它的ASCLL码大小进行比较。

4、高优先级组:>、>=、<、<=。

低优先级组:==、!=。

5、关系运算符的结合性为左结合。

五、表达复杂的条件

1、形如A&&B&&C用&&连接成的串联表达式,如果表达式A为假,则不再计算表达式B和C,以此类推。

2、形如A‖B‖C用‖连接成的串联表达式,如果表达式A为真,则不再计算表达式B和C,以此类推。

3、逻辑运算符的优先级由高到低的顺序是:!→&&→‖

4、逻辑表达式结果为真,sh值为1;结果为假其值为0。

六、计算逗号表达式

1、从左向右依次计算各子表达式的值,然后取最右边表达式的。

2、常量和变量也可成为表达式,它们是表达式的特例。

3、逗号表达式的一般格式为: 表达式1,表达式2,表达式3;...

<四>

一、为程序输入数据

1、在输入数据时,数据都是以字符的形式输入的,经过格式转换说明符转换成对应数据类型了类型;分隔非字符型数据的字符有:空格、水平制表符、换行符,它们统称为空白字符。

2、多个字符变量输入数据时格式控制串中没有使用任何普通字符,则输入字符时不使用任何分隔符。

3、scanf(格式控制串,变量地址列表);参数用逗号分隔;格式控制串由一个%和一个字母组成,被称为格式转换说明符:

%d(整型)int、%f(实型)float,double、%c(字符型)char。

4、scanf()函数工作过程:扫描格式控制串,遇到格式转换说明符时,把键盘输入转换相对应类型数据存入对应地址所指的变量中,遇到普通字符则要原样输。

二、输出程序中的数据

1、在printf()函数的格式控制串中出现的普通字符将原样输出到显示器屏幕上。

2、%s格式转换符用于输出字符串。

3、实数在输出时,printf()函数自动保留6位小数,不足补0,超过四十五入。

4、输出函数printf()的一般格式:printf(格式控制串,数据项列表);格式串由格式转换说明符和普通字符组。

5、printf()函数工作扫描格式串,遇到格式转换说明符时,把对应的数据项按指定的格式输出;遇到普通字符则原样输出。

6、在格式字符d前加L用于输出long型数据。

<五>算法的表示

一、C语言语句类别于作用

1、说明语句:用于定义变量或声明函数。(在函数体最前面,集中说明)

2、表达式语句:在表达式后加上分号,它的功能是完成运算,有用的表达式语句能够在执行后改变变量的值。

3、空语句:单独的一个分号。

4、函数调用语句:用于实现对函数的调用。变量名=函数名(实参表);ch=getchar();

5、块语句:用花括号括起的多条语句。

6、控制语句:由控制命令和被控制的语句组成,实现流程控制。常用的有if、switch、while、for、break、retrun、continue等。

二、流程图符号表示的操作

开始→输入x→x<0→y_→x=-x→输出x的绝对值→结束

三、结构化程序的基本结构

1、顺序结构:按语句先后顺序依次执行,没有执行不到的语句,每天语句只执行一次。

2、分支结构(选择):if或switch(根据条件真假来选择执行语句)。

3、特点:只有一个入口;只有一个出口;结构的每部分都有机会被执行;不存在死循环。

4、模块化程序设计要在软件设计开始时把待开发的系统划分成若干相互独立的,简单容易实现的子系统。这种方法被称为“自顶而下逐步细化”的程序设计分析方法。

5、程序设计的一般步骤:分析问题——确定算法→编写程序→→调试程序

<六>、程序流程控制

一、顺序结构程序的执行特点

1、顺序结构程序的执行特点是:按照语句在程序中排列的先后顺序依次执行。

2、顺序结构程序中的每一条语句必须执行且只能执行一次,没有执行不到或重复执行的语句。

3、过程:①认真读题;②预编命令;③确定变量类型;④有无数据输入(赋值);⑤核心语句:①输入;②赋初值;③运算;⑥输出。

二、设计顺序结构

1、交换a、b两个变量的关键代码是:t=a;a=b;a=t;也可以不使用中间变量来完成,关键代码是:a=a+b;b=a-b;a=a-b;

3、字母大小写转换:大写字母=小写字母-32;反之,小写字母=大写字母+32。

4、分离一个3位的整数x的个十百位上的数字的关键代码:d0=x%10;d1=x/10%10;d2=x/100;

算法:把每一位上的数字当做个位去求:y=x%10(求个位)改变被除数(缩小10倍);x=x/10(求被除数)

<七>分支结构

一、分支流程控制语句if语句

1、分之结构程序中有两个或两个以上的执行路径,每个执行路径称为一个分支。在执行时,根据分支条件选择执行一条,其它分支忽略。

2、C语言使用if命令和switch命令来实现程序的分支流程控制。

3、执行过程:如果表达式的值为真(不为0),执行语句;if下只能控制一条语句。否则跳过语句。

如:输x绝对值。

#include“stdio.h”main()

{ int x;

scanf(“%d”,&x);if(x<0)x=-x;

else

x=x;

printf(“%d\n”,x);}

4、if...else语句一般格式:

if(表达式)

语句1

else

语句2

5、执行过程:先计算if后“表达式”判断值为真假,如为真执行“语句1”,否则执行“语句2”。然后执行else后面的语句。

6、else不可单用,必须与if配对使用。if、else只能控制一条语句。

7、if与else之间有多条语句时,这几条语句也必须用花括号围成块语句。如果之间只有一条语句,不要漏掉语句的结束标志分号(;)。

例子(1)

如:判断输入年份是否为闰年(被4整除,不能被100整除或400整除)。

#include“stdio.h”

main()

{ int y;

scanf(“%d”,&y);

if(y%4==0&&y%100!=0)printf(“%d是闰年”,y);else

if(y%400==0)

printf(“%d是闰年”,y);else

printf(“%d是闰年”,y);} 或

{ int y;

for(y=1500;y<=2500;y++)if(y%4==0&&y%100!

=0‖y%400==0)

printf(“%d,”,y);}

1、包含if语句的使用情况称为if 语句嵌套。

2、规定:else总是与它上面的最近的,未配对的if配对。使用花括号可以改变else与if默认配对关系。

二、switch语句

1、switch一般格式:

switch(表达式)

{ case 常量表达式1;

语句1

}

2、case后常量表达式称为标号,标志一组语句。

3、计算过程:

①switch括号中的表达式;

②从上至下查找与表达式的值匹配(相等比较)的标号。

4、switch后表达式是一个整型或字符型表达式,case后则必须

是一个整型或字符型常量表达式。

5、switch语句中不能出现重复标号。

三、设计分之结构

1、由小到大

#include“stdio.h”

main()

{float a,b,c,m;

printf(“输入3个实数: ”);scanf(“%f%f%f”,&a,&b,&c);

if(a>c){m=b;a=b;b=m;}

if(a>c)

{m=a;a=c;c=m;}

if(b>c)

{m=b;b=c;c=m;}

printf(“%f%f%f\n”,a,b,c);}

2、输入x,y两个数,输出较大者。

#include“stdio.h”

main()

{int x,y;

scanf(“%d%d”,&x,&y);

if(x>y)

printf(“%d\n”,x);

else

printf(“%d”,y);} <八>

一、认识while语句

1、循环条件:while命令后面括号中的表达式称为循环条件。

2、循环体:在每次循环周期均要执行一次语句,称为循环体。可

以是简单语句,块语句,空语句。

3、循环控制变量:在循环条件中控制条件真假的变量。称为循环

控制变量,通常决定循环体的执行次数。

4、对循环控制变量做了3个工作:①循环控制变量赋初值,

②写出正确循环条件,

③循环控制变量的更新。

5、执行过程:

第一步:计算表达式的值,如果表达式的值为真,则执行第二步开

始一次循环周期;否则转入第三步,结束循环。

第二步:执行语句。语句执行完后结束本次循环周期,重返第一步。第三步:结束循环,执行循环后面语句。

二、认识do...while语句

1、语句部分可以是一条语句,也可以是块语句。整个do...while

循环在语法上被看成一条语句。while后面必须以分号结束。

2、不论循环条件真假,do...while语句的循环体总要执行一次。

3、执行过程:

①执行do下面的语句(循环体),开始一个循环周期,

②计算while括号中的表达式(循环体条件),如果表达式为真,结束本次循环,重返回①步,开启下一个循环周期,否则转入第③步。

③结束do…while循环,流程转到循环结构外第一条语句。

如:#include”stdio.h”

main()

{ int n=10;(赋初值)

do

{printf(“%d”,n);

n=n-2;} 循环体

while(n>0);(条件)

}

三、认识for语句

1、for语句一般格式:

for(表达式1;表达式2;表达式3;)

语句

2、for语句后面3个表达式作用是:循环变量赋初值,循环测试条件,循环变量更新。

3、执行步骤:

①计算表达式1

②计算表达式2,如果结果为真,转第三步,如果结果为假转第五步。

③执行for下面的语句部分(循环体),执行完后转第四步。

④计算表达式3,结束本次循环周期,转回第二步,开始下一次循环。

⑤结束循环,执行for 语句后续语句。

4、用for 语句实现1*3*...15之积。

#include ”stdio.h”

main()

{ longs=0;int x;

for(x=1;x<=15;x=x+2)

S=s*x p rintf(“s=%d”, s) }

四、认识循环嵌套

1、一个循环语句的循环体中包含另外一个循环,称为循环嵌套或嵌套或嵌套循环。内嵌的循环还可以再嵌套循环,从而构成多重循环。

2、在嵌套循环中,外层循环中,外层循环体执行的每一个周期中,内层循环语句都完整地执行一遍。只有当外层循环条件为假时,才结束整个嵌套循环。

3、执行:外循环开始,外循环被执行一次,内循环执行一遍。

4、执行过程:

①当m 值为1时,,进入外层循环的第一个周期,进入循环体后执行的第一条语句就是for 语句。

②内层循环重复25次周期,每次周期都输出m*n 的值。当m 为1时,n 从1变到5,并输出结果为第一行的内容。

③内层循环结束后,执行外层循环体的下一条输出语句,输出换行符。

④外层循环体执行完后,m 更新为2,进入外层循环第2个周期。 ⑤重复上述操作,当m 的值为6时,使得外层循环条件为假

表达式1

表达式 2

表达式 3

终止整个循环程序结束。

五、认识循环辅助语句

1、break语句在循环结构中的作用是提前结束包含它的循环语句的执行,使程序流程转向到该循环语句后面的语句。

2、continue语句是提前结束本次循环周期的执行而开始下一个循环周期。

3、break语句能于循环语句或switch语句中,而continue语句

能用于循环语句中。

4、break语句和continue语句只能控制直包含它的循环语句的执行流程,一般于if语句配合使用,不单独使用。结束本次循环周期后,对于while语句和do...while语句,它的下一步操作是计算while中的循环条件表达式;对于for语句,则执行表达式3。

#include”stdio.h”

main()

{ int num;

for(num=10;num<=19;num++) {if(num%2==0)

comtinue;

p rintf(“%d\n”,num); }

}

九、数组

<一>考察数组

1、数组:是一组有序的连续的类型相同的变量集合。

2、数组元素:构成数组的数据。如a[0]、a[1]、a[5]。

3、数组长度:数组元素的个数。(中括号中的值)

4、下标:数组元素在数组中的位置序号,是从0开始的数字。

5、下标变量:数组名(用户标识符)[下标]。(个数)

6、数组的维:在数组中确定数组元素所需下标个数。

7、数组长度、下标用方括号括起,下标必须为整型表达式。

8、下标变量和基本数据类型的变量具有相同的特征,可执行基本变量的各种操作。

9、一维数组定义格式:

类型标识符数组名[整型常量表达式];

如:int array[10];

10、数组的三个特性:数组元素类型相同,数组长度固定,数组存储时占用连续的内存单元。

如:

{ int a[10],i;

for(i=0;i<10;i+1)

a[i]=i;

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

p rintf(“a[%d]=%d”,i,a[i]);

}

11、初始化:在定义数组的同时指定数组元素的初始值。

12、一维数组初始化一般格式:

类型标识符数组名[整型常量表达式]={初始值列表};

13、访问数组一般格式:

数组名[下标表达式]

14、部分元素初始化,系统自动为没有初始值的元素初始化为0,初始值表中数据的个数不能超过数组长度。定义数组时,不能省略数组长度。

<二>在程序中合理地使用数组

1、在求一个数组中最大值和最小值过程,将第0号元素的值假定为最大和最小的初值。

2、求最大最小值:

{ int a[30],i max,min sum=0;

float ave;

for(i=0;i<=30,i++)

{s canf(“%d”,&a[i]);

sum=sum+a[i]

max=min=a[0];}

for(i=1;i<30;i++)

{ if(max

max=a[i];

if(min>a[i])

min=a[i];

}

ave=sum/30.0

p rintf(“%d%d%d%f\n”,min,ma x,sum,ave);

}

<三> 用字符数组处理字符串

1、字符数组初始化时可用字符常量列表,也可以直观的使用字符串常量。使用字符串常量时要注意其后的结束符“\0”(不输入也不输出)也是字符数组的元素。

2、输入字符串时,系统会自动在字符串末尾加上结束符“\0”;遇到第一个“\0”结束符,不输出“\0”。

3、与格式转换说明符“%S”对应的输入,输出项是字符数组名,输入的第一个非空白字符到下一个空白字符之前的字符序列作

为有效字符输入。

4、gets()函数输入的第一个非空白字符到回车之前的字符序列转换为字符串。

5、gets(字符数组)、gets字符数组:函数一次只能输入输出一

个字符串。

scanf()、printf():一次可以输入输出多个字符。

6、在调用字符串处理函数时,在程序前面必须设置一个相关文件包含预编处理命令,即#include“string.h”

十、函数

一、考察函数

1、c语言的函数分为两类:库函数和自定义函数。库函数是系统

提供,用户不用自己定义而直接使用。如:printf,scanf()函数自定义函数是用户按需要编写的完成相应功能的程序段。

2、turbo C的库函数程序代码存储在扩展名为LIB的库文件中;库函数原型说明(函数类型、函数名、参数类型及个数)存放在一个或多个扩展名为h的头文件中;在程序中使用库函数必须在源程序开始处使用预编处理命令include包含相应文件,格式为:#include“文件名”。

2、一般格式:

类型标识符函数名(函数形参说明表){声明部分

语句部分} 函数包括两部分:函数头和函数体。

3、定义函数:

①类型标识符:指定函数返回值的数据类型。如果不返回值,则

要把函数类型定义为void。

②函数名:是一个个合法的用户标识符,用于在程序中区分不同。

③形式参数:在函数后面小括号中的变量称为形式参数,简称形

参形参用于从函数外部接收数据,函数也可以没有形参。

④函数体:是一对花括号括起来了语句序列,实现函数功能。它

由声明部分和执行部分组成。

⑤空函数:是指定义函数时函数体为空的函数。

4、在同一个程序中,函数名不能相同,小括号是函数标志不能省略。

5、说明形参的数据类型时,必须一个形参变量使用一个类型标

识符,多个形参说明之间用逗号分隔。形参只能是变量,不能是常量或表达式。函数体语句语句无论多少必须用花括号括起来。

6、return语句格式:

return;或return表达式;

作用:结束函数的执行,把流程控制返回到调用函数中,并结束函数调用语句的执行,向调用函数返回“表达式”的值。

7、形参的作用:接收调用函数中传递的数据。

8、定义函数时,高数类型要与函数返回值类型一致,若不一致,return语句返回值类型将自动转化为函数定义的类型。

9、没有return语句或不带表达式的return语句的函数将调用函数返回一个不确定的值。一个函数中可以使用多个return语句,但一次只能返回一个值。

<二>在程序中使用函数

1、调用函数一般格式:

①无参函数:函数名()

②有参函数:函数名(参数列表)

在调用函数时,必须给被调函数提供形参函数所声明类型数据,这些数据被称为实际参数,简称实参。实参可以是常量,变量和

表达式。(形参不能是变量)

2、调用函数两种方式:

①函数语句方式:把调用函数作为一个独立的语句,这种方式通常用于调用有返回值的函数。

②函数表达式方式:函数调用出现在一个表达式中,这种方式通常用于调用有返回值的函数。函数返回值可参加表达式的运算。,无返回值函数不能用此方式调用。

3、函数声明一般格式:

类型标识符函数名(参数类型1,参数类型2,...);

4、关于函数声明:

①被调函数的类型为int或char时,可以不对被用函数进行声明,而直接调用。

②当被调用函数定义在调用函数之前时,可以不对被调用函数进行声明。

③在源程序开始处集中地对所有函数进行了声明,则在调用函数中不必再对被调函数做声明。

④#include的作用就是对将要使用的库函数进行声明。

三、在函数之间实现数据

1、当函数实参是基本数据类型时,实参向形参的数据传递规则是“单向的值传递”,即数据只能由实参传递给形参。

2、函数不调用时,形参变量不占用内存单元。发生函数调用时,系统才会为形参变量分配内存单元。调用结束时,形参变量所占用内存单元被系统自动释放。离开调用函数后,就不能再使用形参变量。

3、被调函数形参为基本数据类型时,实参与形参在内存不同存储单元,当实参把值传递给形参时,形参不同的内存单元中进行操作,因此形参值变化不会引起实参值的变化。

4、函数实参是数组名时,向形参数组传递的是该数组的首地址。形参和实参占用相同的内存单元,所以形参数组值改变后,实参数组值也跟着改变。实参是数组元素时,也遵守“单向的值传递”规则。

5、函数形参是数组时,调用函数时必须使用数组名作实参。在说明形参数组时,可以不指定数组长度,调用函数时必须和形参一一对应,类型一致。

变量的作用域

二、考察局部变量的作用域

1、在函数外部定义的变量称为全局变量,其默认作用域从定义变量的程序行开始到本源程序文件结束。

2、全局变量的默认初始值为0,数组初始值也为0。

3、程序运行时,系统为全局变量分配存储单元,直到程序结束才释

放分配存储空间。

4、不同函数中可以定义同名的局部变量,他们除名字相同外,没有任何联系。

5、实参和形参也可以同名,他们分别属于不同函数中的局部变量。

三、制定变量的使用策略

1、如果大量使用全局变量,则可能出现空间占用而不用的情况,从而降低内存的利用率。

数组的特性

一、质数

1、质数是除1和它本身外再也没有一个数能被它整除的整数。

2、for语句中控制循环次数的变量i应该赋初值为2,表示从2开始判断。

3、在设置for语句的判断条件时,可以有以下三种:

①i

②i

③i*i

二、水仙花数

{int i,j,k,n;

printf(“_”);

scanf(“%d”,&n);

if(n<100‖n>999)

printf(“输入数据错误\n”);else

{i=n%10;j=n/10%10;k=n/100;if(i*i*i+j*j*j+k*k*k==n)

printf(“%d\n”,n);}}

三、完数

1、一个数恰好等于它的因子只和。如6=1+2+3.

{int n,j;

scanf(“%d”,&n);

s=0;

for(j=1;j

s=s+j;

if(s==n)

printf(“%d是一个完数”,n);}

C语言源代码

剪刀石头布源代码 #include #include main() { int d,x; { printf("请输入:1是剪刀,2是石头,3是布"); scanf("%d",&d); x=rand()%3; if(d==x) printf("双方平局"); else if((d==1&&x==2)||(d==2&&x==3)||(d==3&&x==1)) printf("你赢了"); else printf("电脑赢了"); } }

简单计算器 #include main() { int a,b,d=0; char c; while(d==0) { printf("请开始计算,请输入需要运算的数字和运算法则,数字符号数字:"); scanf("%d%c%d",&a,&c,&b); switch(c) { case'+': printf("%d+%d=%d\n",a,b,a+b); break; case'-': printf("%d-%d=%d\n",a,b,a-b); break; case'*': printf("%d*%d=%d\n",a,b,a*b); break; case'/': if(0==b) printf("除法被除数不能为零!\n") ; else printf("%d/%d=%d\n",a,b,a/b); break; } } }

加油站加油问题 #include int main() { double a = 3.25, b = 3.00, c= 2.75; double d = 0.05, e = 0.10, m; int x,y,z; printf("请输入您要的加油量:"); scanf("%d",&x); printf("请输入您要的汽油种类,1-a型汽油售价3.25元/千克,2-b型汽油售价3.00元/千克,3-c型汽油售价2.75元/千克:"); scanf("%d",&y); printf("请输入您要的服务类型,1-自己加服务优惠0.05,2-协助加服务优惠0.10:"); scanf("%d",&z); switch(y) { case 1: y = a;break; case 2: y = b;break; case 3: y = c;break; } if(z == 1) m = (1 - d) * y * x; else if(z == 2) m = (1 - e) * y * x; printf("您需要支付:%f 元,谢谢惠顾,欢迎下次再来",m); return 0; }

c语言程序代码

1.要求在屏幕上输出下一行信息。 This is a c program. 程序: #include int main() { printf(“this is a c program.\n”); return 0; } 2.求两个整数之和。 程序: #include int main() { int a,b,sum; a=122; b=234; sum=a+b; printf(“sum is %d\n”,sum); return 0; } 3.求两个整数之间的较大者。

#include int main() { int max(int x,int y); int a,b,c; scanf("%d,%d",&a,&b); c=max(a,b); printf("max=%d\n",c); return 0; } int max(int x,int y) { int z; if(x>y)z=x; else z=y; return(z); } 4.有人用温度计测量出华氏发表示的温度(如69°F),今要求把 她转换成以摄氏法表示的温度(如20℃)。 公式:c=5(f-32)/9. 其中f代表华氏温度,c代表摄氏温度。

#include int main() { float f,c; f=64.0; c=(5.0/9)*(f-32); printf("f=%f\nc=%f\n",f,c); return 0; } 5.计算存款利息。有1000元,想存一年。有一下三种方法可选: (1)活期:年利率为r1;(2)一年定期:年利率为r2;(3)存两次半年定期:年利率为r3。分别计算一年后按三种方法所得到的本息和。 程序: #include int main() { float p0=1000,r1=0.0036,r2=0.0225,r3=0.0198,p1,p2,p3; p1=p0*(1+r1); p2=p0*(1+r2);

C语言源程序

C语言程序设计 <一> 1、程序运行从main()函数开始,也从main()函数结束。 2、函数是C程序的基本单位,由函数头和函数体组成。 3、C语言源程序是由函数组成,它们的数目可以有多个。 4、在C语言源程序中,是必须有一个函数名为main的函数。main()后的小括号()没有任何内容,它不可以省略。 5、C程序中的语句用分号结束,在一个程序行上可以有多个语句,一个C 语句能写在多个程序行上。 6、函数体是由一对大括号围起来语句序列组成。小括号是函数的标志。 二、C语言的组成元素 1、命令、函数和变量等是组成程序的基本对象,每一个程序对象都需要一个名字来标识,程序对象的名称就是标识符。 2、在C语言中,标识符分为用户标识符和系统标识符。 3、用户标识符是指在程序中由程序员为变量、函数、数组等程序对象自行命名的标识符。 4、系统标识符是指C语言编译系统内部预定义的用于表示命令数据内型的标识符,又称保留字符。 5、基本字符集 英文字母:a~z和A~Z。 阿拉伯数字:0~9。其他字符:()、[ ]、+、-、*、/、%、<、>、<=、>=、==、!=、!、&&、‖、++、--、+=、-=、*=、/=、%=。它们是由1~2个字符组成。用作C语言的运算符;还包括:空格、换行符,回车符,单双引号,大括号,逗号,分号,反斜线,它们在程序中起到分隔和定界作用。 6、标识符:是用于标识命令;变量、函数,数组,数据类型等程序对象名称的字符序列。 7、组成标识符的合法字符有:字母,数字,下划线,三种,数字不能作首字符。 三、执行C语言程序 1、单击“开始”——“程序”——“附件”——“命令提示符”。 2、按功能键<10>激活菜单,执行“File”——“NEW”(ALT+回车)全屏。 3、为保存,输入程序文件名。 4、+运行 有输入:等待输入→回车 通过 无输入:返回到编辑 未通过:回车→F6→修改 F3(打开)

C语言程序设计 入门源代码代码集合

#include <> void print_star(void) { printf("*****************\n"); } void print_welcome(void) { printf("C language,welcome!\n"); } void main() { print_star(); print_welcome(); print_star(); getchar(); } 演示2 #include "" int sum(int i,int j) { return(i + j); } void main() { int n1,n2; printf("input 2 numbers:\n"); scanf("%d%d",&n1,&n2); printf("the sum = %d\n",sum(n1,n2)); getchar(); } 演示3 #include "" int maxnum(int,int,int); main() { int a,b,c; printf("Please enter 3 numbers:\n"); scanf("%d,%d,%d",&a,&b,&c); printf("Maxnum is %d\n",maxnum(a,b,c)); return 0;

} int maxnum(int x,int y,int z) { int max=x; if(y>max) max = y; if(z>max) max = z; return max; } 演示4 #include <> int s1(int n) { int j,s; s=0; for(j=1;j<=n;j++) s=s+j; return s; } int sum(int n) { int i,s=0; for(i=1;i<=n;i++) s=s+s1(i); return s; } void main() { int n; printf("n:"); scanf("%d",&n); printf("s=%d\n",sum(n)); } 演示5 #include <>

简单易懂的C语言源代码(供初学者使用)

#include main() {float pi=3.14159265,r; printf("enter radius:\n"); scanf("%f",&r); printf("r=%.2f,c=%.2f,area=%.2f\n",r,2*pi*r,pi*r*r); system("pause"); } #include main() {int m,n,x,y; printf("inputm,n:\n"); scanf("%d%d",&m,&n); if (n%2==1) {printf("error!! n bu shi ji shu!\n",n); return;} /*n在这里不能是奇数*/ x=(4*m-n)/2; y=(n-2*m)/2; if((x>=0)&&(y>=0)) printf("x=%d,y=%d\n",x,y); else printf("shu ru cuo wu!\n");

getch(); } #include #include #include main() {float a,b,C; printf("enter 3number(a,b,C):\n"); scanf("%.2f %.2f %.2f",&a,&b,&C); s=0.5*a*b*sinC; printf("s=%.2f\n",s); system("pause"); } #include main() {int ds,nl,yf; char c; printf("shu ru ds;\n"); scanf("%d",&ds); if (ds<14||ds>1184)

c语言程序代码

创作编号: GB8878185555334563BT9125XW 创作者:凤呜大王* 1.要求在屏幕上输出下一行信息。 This is a c program. 程序: #include int main() { printf(“this is a c program.\n”); return 0; } 2.求两个整数之和。 程序: #include int main() { int a,b,sum; a=122; b=234;

sum=a+b; printf(“sum is %d\n”,sum); return 0; } 3.求两个整数之间的较大者。 程序: #include int main() { int max(int x,int y); int a,b,c; scanf("%d,%d",&a,&b); c=max(a,b); printf("max=%d\n",c); return 0; } int max(int x,int y) { int z; if(x>y)z=x; else z=y; return(z);

} 4.有人用温度计测量出华氏发表示的温度(如69°F),今要 求把她转换成以摄氏法表示的温度(如20℃)。 公式:c=5(f-32)/9. 其中f代表华氏温度,c代表摄氏温度。 程序: #include int main() { float f,c; f=64.0; c=(5.0/9)*(f-32); printf("f=%f\nc=%f\n",f,c); return 0; } 5.计算存款利息。有1000元,想存一年。有一下三种方法可 选:(1)活期:年利率为r1;(2)一年定期:年利率为r2; (3)存两次半年定期:年利率为r3。分别计算一年后按三种方法所得到的本息和。 程序: #include

C语言程序设计-入门源代码代码集合

演示1 #include void print_star(void) { printf("*****************\n"); } void print_welcome(void) { printf("C language,welcome!\n"); } void main() { print_star(); print_welcome(); print_star(); getchar(); } 演示2 #include "stdio.h" int sum(int i,int j) { return(i + j); } void main() { int n1,n2; printf("input 2 numbers:\n"); scanf("%d%d",&n1,&n2); printf("the sum = %d\n",sum(n1,n2)); getchar(); } 演示3 #include "stdio.h" int maxnum(int,int,int); main() { int a,b,c; printf("Please enter 3 numbers:\n"); scanf("%d,%d,%d",&a,&b,&c); printf("Maxnum is %d\n",maxnum(a,b,c));

return 0; } int maxnum(int x,int y,int z) { int max=x; if(y>max) max = y; if(z>max) max = z; return max; } 演示4 #include int s1(int n) { int j,s; s=0; for(j=1;j<=n;j++) s=s+j; return s; } int sum(int n) { int i,s=0; for(i=1;i<=n;i++) s=s+s1(i); return s; } void main() { int n; printf("n:"); scanf("%d",&n); printf("s=%d\n",sum(n)); } 演示5

c语言课程设计源代码

c语言课程设计源代码标准化管理处编码[BBX968T-XBB8968-NNJ668-MM9N]

学校运动会管理系统问题描述: (1) 初始化输入:N-参赛院系总数,M-男子竞赛项目数,W-女子竞赛项目数; (2) 各项目名次取法有如下几种: 取前5名:第1名得分 7,第2名得分 5,第3名得分3,第4名得分2,第5名得分 1; (3) 由程序提醒用户填写比赛结果,输入各项目获奖运动员的信息。 (4) 所有信息记录完毕后,用户可以查询各个院系或个人的比赛成绩,生成团体总分报表,查看参赛院系信息、获奖运动员、比赛项目信息等。 程序代码: #include<> #include<> #define N 3 #define M 3 #define W 3 char* n_number[3]={"1","院系2","院系3"}; char* m_number[3]={"1","男项2","男项3"};

char* w_number[3]={"女项1","女项2","女项3"}; int size=2; struct student { char num[10]; char name[20]; char xiangmu[20]; int score; char ximing[20]; }stu[100],temp; void input() um,&stu[i].name,&stu[i].xiangmu,&stu[i].score,&stu[i].ximing); iming,n_number[0])==0) iming); iming,n_number[h])==0) for(int s=0;s

一些比较简c语言程序源代码

/**返回的long型的最大值是startLongValue+count-1(产生一个随机数) * param needCount * param count * param startLongValue * return */ public static List randomNoRepeatLongArray(int needCount,int count,long startLongValue){ //这种情况会出现无限循环的 if(needCount>count) return null; Random random = new Random(); int[] ints = new int[count]; for(int i=0;i list = new ArrayList(); while(list.size() #include #include

PL0源代码(C语言版)

/*PL/0 编译系统C版本头文件pl0.h*/ # define norw 13 //a number of reserved word /*关键字个数*/ # define txmax 100 //length of identifier table /*名字表容量*/ # define nmax 14 //max number of digits in numbers /*number的最大位数*/ # define al 10 //length of identifier /*符号的最大长度*/ # define amax 2047 //maximum address /*地址上界*/ # define levmax 3 //max depth of block nesting /*最大允许过程嵌套声明层数[0,lexmax]*/ # define cxmax 200 //size of code array /*最多的虚拟机代码数*/ /*符号*/ enum symbol{ nul, ident, number, plus, minus, times, slash, oddsym, eql, neq, //slash斜线 lss, leq, gtr, geq, lparen, //leq :less than or equal to; gtr: great than;lparen:left parenthesis rparen, comma, semicolon,period, becomes,//comma逗号semicolon分号period句号becomes赋值号 beginsym, endsym, ifsym, thensym, whilesym, writesym, readsym, dosym, callsym, constsym, varsym, procsym, }; #define symnum 32 /*-------------*/ enum object{ //object为三种标识符的类型 constant, variable, procedur, }; /*--------------*/ enum fct{ //fct类型分别标识类PCODE的各条指令 lit, opr, lod, sto, cal, inte, jmp, jpc, //书本P23 }; #define fctnum 8 /*--------------*/ struct instruction //指令 { enum fct f; //功能码 int l; //层次差 int a; //P23 };

C语言程序设计(医院信息管理系统)附源代码

专业设计报告 课程名称: C 语言程序设计 课题名称:医院信息管理系统 专业班别: 12本计算机科学与技术二班 姓名: 学号: 指导教师: 设计日期: 2012-5-25

教师评语:

成绩评定: 指导教师签名: 日期: 2012 年月日 课程设计题目医院信息管理程序 作者姓名: 同组成员: 摘要利用结构体存储每个病人的信息和每种药品的信息,并使用链表存储全部病人的信息;能完成对医院内所有病人信息的注册、查询、删除和修改等操作,同时又能对药房内库存的药品进行查询;可以将链表中的病人信息保存在文件中,并且可以对文件中的病人信息进行读取与显示 1.专业设计目的

1、掌握链表的操作,包括链表节点的创建、释放还有链表的遍历 2、掌握对二进制文件的创建、增添等基本操作。 3、熟悉C语言函数的使用方法,学会模块化处理问题以及多个源文件的处理方式 2.设计基本要求( 1、使用结构体来存储病人的信息,结构体中包括病的id号码、姓名、病历以及消费信息,并用链表将所有病人信息整合。 2、用文件来存储链表的信息以便下次再使用该程序时载入病人信息 3、能够实现病人信息的注册、病人信息的查询、病人消费统计、保存链表信息、载入链表信息、查询库存等几项功能。 4、要求用四个源文件、、、 5、系统完成后应实现类似下面所示界面

3、算法分析 1、数据结构 设计链表中的一个节点存储一个病人的信息,使用下面的结构体类型定义:struct patient{ char id[10]; char name[10]; char casehist[200]; int cost[3]; int transfusion;

PL0-C语言源代码

//A.2 C 版本 /*编译和运行环境: *1Visual C++6.0,VisualC++.NET and Visual C++.NET 2003 *WinNT, Win 200, WinXP and Win2003 *2 gcc version 3.3.2 20031022(Red Hat Linux 3.3.2-1) *Redhat Fedora core 1 *Intel 32 platform *使用方法: *运行后输入PL/0 源程序文件名 *回答是否输出虚拟机代码 *回答是否输出名字表 *fa.tmp 输出虚拟机代码 *fa1.tmp 输出源文件及其各行对应的首地址 *fa2.tmp 输出结果 *fas.tmp 输出名字表 */ #include /*PL/0 编译系统C版本头文件pl0.h*/ #include"string.h" /*解释执行时使用的栈*/ #define stacksize 500 //typedef enum { // false, // true //}bool; # define norw 13 /*关键字个数*/ # define txmax 100 /*名字表容量*/ # define nmax 14 /*number的最大位数*/ # define al 10 /*符号的最大长度*/ # define amax 2047 /*地址上界*/ # define levmax 3 /*最大允许过程嵌套声明层数[0,lexmax]*/ # define cxmax 200 /*最多的虚拟机代码数*/ /*符号*/ enum symbol{ nul, ident, number, plus, minus, times, slash, oddsym, eql, neq, lss, leq, gtr, geq, lparen, rparen, comma, semicolon,period, becomes, beginsym, endsym, ifsym, thensym, whilesym, writesym, readsym, dosym, callsym, constsym, varsym, procsym, }; #define symnum 32

C语言程序设计医院信息管理系统附源代码样本

专业设计报告 课程名称: C 语言程序设计 课题名称: 医院信息管理系统 专业班别: 12本计算机科学与技术二班姓名: 学号: 指导教师: 设计日期: -5-25

教师评语: 成绩评定: 指导教师签名: 日期: 年月日 课程设计题目医院信息管理程序

作者姓名: 同组成员: 摘要利用结构体存储每个病人的信息和每种药品的信息, 并使用链表存储全部病人的信息; 能完成对医院内所有病人信息的注册、查询、删除和修改等操作, 同时又能对药房内库存的药品进行查询; 能够将链表中的病人信息保存在文件中, 而且能够对文件中的病人信息进行读取与显示1.专业设计目的 1、掌握链表的操作, 包括链表节点的创立、释放还有链表的遍历 2、掌握对二进制文件的创立、增添等基本操作。 3、熟悉C语言函数的使用方法, 学会模块化处理问题以及多个源文件的处理方式 2.设计基本要求( 1、使用结构体来存储病人的信息, 结构体中包括病的id号码、姓名、病历以及消费信息, 并用链表将所有病人信息整合。 2、用文件来存储链表的信息以便下次再使用该程序时载入病人信息 3、能够实现病人信息的注册、病人信息的查询、病人消费统计、保存链表信息、载入链表信息、查询库存等几项功能。 4、要求用四个源文件main.c、link.c、find.c、save_load.c 5、系统完成后应实现类似下面所示界面

3、算法分析 1、数据结构 设计链表中的一个节点存储一个病人的信息, 使用下面的结构体类型定义: struct patient{ char id[10]; char name[10]; char casehist[200]; int cost[3]; int transfusion; int surgery; struct patient *next; };

运动会c语言源程序代码

#include #include #include #include #define n 2 #define m 1 #define w 1 #define null 0 typedefstruct { intitemnum; int top; int range[5]; int mark[5]; }itemnode; typedefstruct { intschoolnum; int score; intmscore; intwscore; itemnode c[m+w]; }headnode; headnode h[n]; voidinputinformation() { inti,j,k,s; for(i=0;i

scanf("%d",&h[i].c[j].itemnum); printf("*****取前3名or前5名:"); scanf("%d",&h[i].c[j].top); printf("*****获得几个名次:"); scanf("%d",&k); for(s=0;s<5;s++) h[i].c[j].range[s]=0, h[i].c[j].mark[s]=0; for(s=0;s

《C语言程序设计》基本知识点

《C语言程序设计》教学基本知识点 第一章C语言基本知识 1.C源程序的框架 尽管各个C源程序的功能千变万化,但框架是不变的,主要有:编译预处理、主函数()、函数n()等,主函数的位置不一定在最前面,可以在程序的中部或后面,主函数的名字固定为main。 2.C语言源程序的书写规则: (1)C源程序是由一个主函数和若干个其它函数组成的。 (2)函数名后必须有小括号,函数体放在大括号内。 (3)C程序必须用小写字母书写。 (4)每句的末尾加分号。 (5)可以一行多句。 (6)可以一句多行。 (7)可以在程序的任何位置加注释。 3.语句种类 语句是程序的基本成分,程序的执行就是通过一条条语句的执行而得以实现的,根据表现形式及功能的不同,C语言的基本语句可以分为五大类。 (1)流程控制语句 流程控制语句的功能是控制程序的走向,程序的流程有三种基本结构:顺序结构、分支结构和循环结构,任何复杂的程序都可以由这三种基本结构复合而成。其中后两种结构要用特定的流程控制语句实现。 (2)表达式语句 表达式语句的形式是:表达式;,即表达式后跟一分号“;”,分号是语句结束符,是一个语句必不可少的成分。表达式和表达式语句的区别在于表达式代表的是一个数值,而表达式语句则代表一种动作。最常见的表达式语句是赋值语句。 (3)函数调用语句 函数调用语句实际上也是一种表达式语句,形式为:在一次函数调用的小括号后面加上一个分号。 (4)空语句 空语句的形式就是一个分号,它不代表任何动作,常常作为一个意义转折点使用。 (5)复合语句 复合语句从形式上看是多个语句的组合,但在语法意义上它只相当于一个语句,在任何单一语句存在的地方都可以是复合语句。注意复合语句中最后一个语句末尾的分号不能少。复合语句右大括号后面没有分号。 4.运算符 用来表示数据各种操作的符号称为运算符。运算符实际上代表了一种类型数据的运算规则。不同的运算符具有不同的运算规则,其操作的数据类型必须符合该运算符的要求,运算结果的数据类型也是固定的。 根据参加操作的数据个数多少,可以将C语言的运算符分为单目运算符,双目运算符和三目运算符(三目运算符只有条件运算符一个)。 根据运算对象和运算结果的数据类型可分为算术运算符、关系运算符、逻辑运算符等。 5.表达式 表达式是由常量、变量、函数,通过运算符连接起来而形成的一个算式。一个常量,一个变量或一个函数都可以看成是一个表达式。 表达式的种类有: 算术表达式、关系表达式、逻辑表达式、赋值表达式、字位表达式、强制类型转换表达式、逗号

c语言动画程序源码

C语言动画程序 #include #include #include #include #define pi 3.1415926535 double ca3mm1(double m1,double m2); double ca3fm1(double cosine,double sine); double ca5fm2(double a6m,double a5m,double a4m,double a4f,int shang); double ca6fm2(double a4m ,double a4f,double a5m , double a5f); char inbox(int x,int y,int x1,int y1); char buf(); main() { double m=3.0; double xo=100.0,yo=200.0,a1=30.0,t1=pi; double xc=xo+m*a1,yc=yo; double a2=8.0,a3,a4=25.0,a5=30.0,a6=20.0,a7=35.0; double t2,t3,t4,t5,t6,t7; double xo1=xo+m*150,yo1=yo; double xc1=xo1-m*a1,yc1=yo1; double i,j,k; double l1; double n=116.1,nt; initscreen(); setfillstyle(SOLID_FILL,DARKGRAY); bar(0,0,640,480); mybutton(10,10,"BEGIN",1,0); mybutton(500,10,"EXIT",1,0); line(0,69,640,69); mouseinit(); changemousecross(); setmousexy(320,20); mouseshow(); setmousearea(0,0,640,60); do{ if(inbox(10,10,70,26)&&button()==1) {mousehide(); mybutton(10,10,"BEGIN",0,0); mouseshow(); mousehold(); mousehide(); mybutton(10,10,"BEGIN",1,7); mouseshow(); break; }

经典C语言源代码

经典C语言源代码 1、(1)某年某月某日是星期几 #include int main() { int year, month, day; while (scanf_s("%d%d%d", &year, &month, &day) != EOF) { if (month == 1 || month == 2)//判断month是否为1或2 { year--; month += 12; } int c = year / 100; int y = year - c * 100; int week = (c / 4) - 2 * c + (y + y / 4) + (13 * (month + 1) / 5) + day - 1; while (week<0) { week += 7; } week %= 7; switch (week) { case 1:printf("Monday\n"); break;

case 2:printf("Tuesday\n"); break; case 3:printf("Wednesday\n"); break; case 4:printf("Thursday\n"); break; case 5:printf("Friday\n"); break; case 6:printf("Saturday\n"); break; case 0:printf("Sunday\n"); break; } } return 0; } 1、(2)某年某月某日是第几天(一维数组) #include "stdio.h" void main() { int i, flag, year, month, day, dayth; int month_day[] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 }; printf("请输入年/月/日:\n"); scanf_s("%d/%d/%d", &year, &month, &day); dayth = day; flag = (year % 400 == 0) || (year % 4 == 0 && year % 100 != 0); if (flag) month_day[2] = 29;

几个简单的c语言源程序

1》分解质因数的程序: #include zhishu(x,y) { int m=1; while(y%x==0) { if(y%x==0) y=y/x; if(y%x==0) m++; } printf("^%d x ",m); } sushu(j) { int n,m=0; for(n=2;n

2》看你的星座的程序: #include void main() { int m,d; float s; printf("请输入你的生日(月、日):\n"); scanf("%d",&m); scanf("%d",&d); if(m>12||m<1||d>31||d<1) printf("你输入的生日错误!"); if(m>=1&&m<=12&&d>=1&&d<=31); { s=(float)(m+d/100); if(s>=3.21&&s<=4.20) printf("你的星座是:白羊座"); else if(s>=4.21&&s<=5.20) printf("你的星座是:金牛座"); else if(s>=5.21&&s<=6.21) printf("你的星座是:双子座"); else if(s>=6.22&&s<=7.22) printf("你的星座是:巨蟹座"); else if(s>=7.23&&s<=8.22) printf("你的星座是:狮子座"); else if(s>=8.23&&s<=9.22) printf("你的星座是:处女座"); else if(s>=9.23&&s<=10.23) printf("你的星座是:天秤座"); else if(s>=10.24&&s<=11.21) printf("你的星座是:天蝎座"); else if(s>=11.22&&s<=12.21) printf("你的星座是:射手座"); else if((s<=12.31&&s>=12.22)||(s<=1.19&&s>1.00)) printf("你的星座是:摩羯座"); else if(s>=1.20&&s<=2.18) printf("你的星座是:水瓶座"); else if(s>=2.19&&s<=3.20) printf("你的星座是:双鱼座"); else printf("ERRORS!OUT OF MY EXPECTATION!"); } printf("\n\n"); }

C语言程序设计(医院信息管理系统)附源代码

C语言程序设计(医院信息管理系统)附源代码

————————————————————————————————作者:————————————————————————————————日期:

专业设计报告 课程名称: C 语言程序设计课题名称:医院信息管理系统 专业班别:12本计算机科学与技术二班 姓名: 学号: 指导教师: 设计日期:2012-5-25

教师评语: 等级 优良中及格差项目 专业设计目的 设计基本要求 算法分析 源程序代码 源程序代码测试 设计总结 成绩评定: 指导教师签名: 日期:2012 年月日

课程设计题目医院信息管理程序 作者姓名: 同组成员: 摘要利用结构体存储每个病人的信息和每种药品的信息,并使用链表存储全部病人的信息;能完成对医院内所有病人信息的注册、查询、删除和修改等操作,同时又能对药房内库存的药品进行查询;可以将链表中的病人信息保存在文件中,并且可以对文件中的病人信息进行读取与显示 1.专业设计目的 1、掌握链表的操作,包括链表节点的创建、释放还有链表的遍历 2、掌握对二进制文件的创建、增添等基本操作。 3、熟悉C语言函数的使用方法,学会模块化处理问题以及多个源文件的处理方式 2.设计基本要求( 1、使用结构体来存储病人的信息,结构体中包括病的id号码、姓名、病历以及消费信息,并用链表将所有病人信息整合。 2、用文件来存储链表的信息以便下次再使用该程序时载入病人信息 3、能够实现病人信息的注册、病人信息的查询、病人消费统计、保存链表信息、载入链表信息、查询库存等几项功能。 4、要求用四个源文件main.c、link.c、find.c、save_load.c 5、系统完成后应实现类似下面所示界面

相关主题
文本预览
相关文档 最新文档