当前位置:文档之家› 适合初学C语言单的源代码

适合初学C语言单的源代码

适合初学C语言单的源代码
适合初学C语言单的源代码

26 用递归法将一个整数n转换成字符串。例如,输入483,应输出字符串“483”,n的位数不确定,可以是任意位数的整数。

# include

int main ()

{

void print(int n);

int n;

scanf("%d",&n);

print(n);

return 0;

}

void print(int n)

{

if(0== n*10/10)

printf ("%d",n);

else

{

printf("M",n);

print(n/10);

}

}

27.用筛选法求100之内的素数。

# include

# include

int main ()

{

int i,j,a[100];

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

{

a[i]= i;

}

for(i = 2;i

for(j =i+1;j<101;j++)

{

if(a[i]!=0&&a[j]!=0)

if(a[j] % a[i]==0)

a[j]=0;

}

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

{

if(a[i]!=0)

printf ("M",a[i]);

}

printf ("n");

return 0;

}

28.编一个程序,将两个字符串连接起来,不要用strcat函数。https://www.doczj.com/doc/9d13402916.html,/xhffly

# include

int main ()

{

char a[80],b[80];

scanf("%s",a);

scanf("%s",b);

int i =0,j= 0;

while(a[i]!='')i++;

while(b[j]!='')

{

a[i] = b[j];

i++;

j++;

}

a[i] = '';

printf("%s",a);

return 0;

}

29. 用指针实现输入3个整数并按从小到大的顺序输出。

# include

int main ()

{

int i,j,a[3],*p,t;

p = a;

printf ("请输入三个数n");

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

{

scanf("%d",(p+i));

}

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

for(j = i+1;j <3;j++)

if(*(p+i) >*(p+j))

{

t = *(p+i);

*(p+i) = *(p+j);

*(p+j) = t;

}

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

{

printf ("M",*(p+i));

}

return 0;

}

30. 用指针实现输入3个整数并按从大到小的顺序输出。# include

int main ()

{

int i,j,a[3],*p,t;

p = a;

printf ("请输入三个数n");

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

{

scanf("%d",(p+i));

}

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

for(j = i+1;j <3;j++)

if(*(p+i) <*(p+j))

{

t = *(p+i);

*(p+i) = *(p+j);

*(p+j) = t;

}

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

{

printf ("M",*(p+i));

}

return 0;

}

31. 用指针实现将数组b[10]中的元素按逆序存放。

# include

int main ()

{

int b[10] ={3,86,45,34,7,65,87,98,23,43};

int i,t,*p;

p = b;

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

{

t = *(p+i);

*(p+i) = *(p+9-i);

*(p+9-i) = t;

}

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

{

printf ("M",*(b+i));

}

return 0;

}

32. 用冒泡法实现对10个整数按从大到小的顺序排序输出(要求用指针实现)。# include

int main ()

{

int b[10] ={3,86,45,34,7,65,87,98,23,43};

int i,j,t,*p;

p = b;

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

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

if(*(p+i)>*(p+j))

{t = *(p+i);

*(p+i) = *(p+j);

*(p+j) = t;

}

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

{

printf ("M",*(b+i));

}

return 0;

}

https://www.doczj.com/doc/9d13402916.html,/xhffly

33. 用选择法实现对10个整数按从小到大的顺序排序输出(要求用指针实现)。# include

int main ()

{

int b[10] ={3,86,45,34,7,65,87,98,23,43};

int i,j,t,*p;

p = b;

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

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

if(*(p+i)>*(p+j))

{t = *(p+i);

*(p+i) = *(p+j);

*(p+j) = t;

}

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

{

printf ("M",*(b+i));

}

return 0;

}

34编写一个函数实现字符串复制功能(要求用指针作为函数参数)

# include

void copy(char *p1,char *p2)

{

int i= 0;

while(*(p1+i)!='')

{

*(p2+i) =*(p1+i);

i++;

}

*(p2+i)= '';

}

int main ()

{

char a[100],b[100];

char *p1 = a,*p2 = b;

gets(a);

copy(p1,p2);

printf ("%sn",p2);

return 0;

}

35 定义一个结构体变量(包括年、月、日)。计算当天是本年中的第几天,注意闰年问题。# include

int main ()

{

struct eiqi{

int year;

int month;

int day;

}date;

int i,days =0;

int mon[13]= {0,31,28,31,30,31,30,31,31,30,31,30,31};

scanf("%d%d%d",&date.year,&date.month,&date.day);

for(i = 1;i

days =days + mon[i];

days =days + date.day;

if(date.year % 4 ==0 && date.year0!=0||date.year@0==0)days++;

printf ("%d 年%d月%d日时%d年的第%d天n",date.year,date.month,date.day,date.year,days); return 0;

}

36. 设计候选人得票统计程序,要求有4个侯选人(分别是Zhang 、Wang 、Li、Zhao),选民每次输入一个被选人的姓名,最后统计出各人的得票结果。

https://www.doczj.com/doc/9d13402916.html,/xhffly

# include

# include

int main ()

{

struct man{

char name[20];

int goat;

}peo[4] ={"zhang",0,"wang",0,"li",0,"zhao",0};

char a[20];

int i,j;

for(j= 0;j<3;j++)

{

gets(a);

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

if(strcmp(a,peo[i].name)==0)

peo[i].goat++;

}

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

{

printf ("%sn%dn",peo[i].name,peo[i].goat);

}

return 0;

}

37. 定义一个包括学号、姓名、年龄的学生结构体,要求实现三个学生信息的输入输出,并

输出平均年龄

# include

int main ()

{

struct student

{

int num;

char name[20];

int age;

}a[3];

int i,aver;

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

{

printf ("输入第%d个学生n",i+1);

scanf("%d%s%d",&a[i].num,&a[i].name,&a[i].age);

}

aver = (a[0].age+a[1].age+a[2].age)/3;

printf ("学号姓名年龄n");

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

{

printf("M %s Mn",a[i].num,a[i].name,a[i].age);

}

printf ("平均年龄是%d",aver);

return 0;

}

38. 定义一个包括教师编号、姓名、工资的教师结构体,要求实现三个教师信息的输入输出,并输出平均工资。

# include

int main ()

{

struct student

{

int num;

char name[20];

int age;

}a[3];

int i,aver;

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

{

printf ("输入第%d个老师的信息n",i+1);

scanf("%d%s%d",&a[i].num,&a[i].name,&a[i].age);

}

aver = (a[0].age+a[1].age+a[2].age)/3;

printf ("编号姓名工资n");

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

{

printf("M %s Mn",a[i].num,a[i].name,a[i].age);

}

printf ("平均工资是%d",aver);

return 0;

}

39. 定义一个包括职员号、姓名、工资的职员结构体,要求实现三个职员信息的输入输出,并输出平均工资。

# include

int main ()

{

struct student

{

int num;

char name[20];

int age;

}a[3];

int i,aver;

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

{

printf ("输入第%d个老师的信息n",i+1);

scanf("%d%s%d",&a[i].num,&a[i].name,&a[i].age);

}

aver = (a[0].age+a[1].age+a[2].age)/3;

printf ("编号姓名工资n");

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

{

printf("M %s Mn",a[i].num,a[i].name,a[i].age);

}

printf ("平均工资是%d",aver);

return 0;

}

40 建立动态数组,输入5个学生的成绩,另外用一个函数检查其中有无低于60分的,输出不合格的成绩。

# include

# include

int main ()

{

void print(int *p);

int i, *p;

p = (int *) malloc(sizeof(int)*5);

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

{

scanf("%d",&p[i]);

}

print(p);

return 0;

}

void print(int *p)

{

int i;

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

{

if(p[i]<60)

printf ("%dn",p[i]);

}

}

41 写一函数,求一个字符串的长度。在main函数中输入字符串,并输出其长度(要求用指针实现)。

# include

int main ()

{

int len(char *p);

char a[80];

gets(a);

printf ("长度是%dn",len(a));

return 0;

}

int len(char *p)

{

int i=0,n=0;

while(*(p+i) !='')

{i++;

n++;

}

return n;

}

42. 有一个一维数组score,内放10个学生成绩,用一个函数求平均成绩,并将10个成绩中不及格(小于60)的成绩和该成绩在数组中的序号输出。

# include

int main ()

int aver(char *p);

char score[10];

int i;

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

{

scanf("%d",&score[i]);

}

aver(score);

return 0;

}

int aver(char *p)

{

int i=0,sum=0;

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

{

if(p[i]<60)

printf("不合格的是第%d个数%dn",i+1,p[i]);

sum = sum+p[i];

}

printf ("平均值是%dn",sum/10);

return 0;

}

43. 有一个一维数组内放10个数,设计函数,求出10个数中的最大值、最小值、平均值。https://www.doczj.com/doc/9d13402916.html,/xhffly

# include

int main ()

{

int aver(char *p);

char score[10];

int i;

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

{

scanf("%d",&score[i]);

}

aver(score);

return 0;

}

int aver(char *p)

{

int i,j,sum=0,t;

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

{

}

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

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

{

if(p[i]

{

t = *(p+i);

*(p+i) = *(p+j);

*(p+j) = t;

}

}

printf ("最大值是%d最小值是%d",p[0],p[9]);

printf ("平均值是%dn",sum/10);

return 0;

}

44. 找出一个2维数组中的鞍点,即该位置上的元素在该行上最大、在该列上最小。# include

int main ()

{

void find(int (*p)[3]);

int a[2][3] ={

{25,34,56},

{43,47,88}};

int(*p)[3];

p = a;

find(p);

return 0;

}

void find(int (*p)[3])

{

int f = 1;

int i,j,k,max = 0,maxj,m,mi;

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

{

f = 1;

maxj = 0;

mi = 0;

for(j = 0;j<3;j++)

{

if(max

{

maxj = j;

}

for(k = 0;k<2;k++)

{if(p[k][maxj]

f = 0;

}

}

if(1==f)

printf (" 鞍点是M",max);

}

}

45. 输入8个学生4门课的成绩,分别用函数实现如下功能:

(1)计算每个学生平均分;

(2)计算每门课的平均分;

(3)找出32个分数中最高分所对应的学生和课程。https://www.doczj.com/doc/9d13402916.html,/xhffly # include

int a[8][4];

int main ()

{

int aver ();

int i,j;

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

{

printf (" 请输入第%d个学生的成绩n",i+1);

for(j = 0;j<4;j++)

scanf("%d",&a[i][j]);

}

aver();

return 0;

}

int aver (void)

{

int i,j;

int sum = 0;

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

{for(j = 0;j<4;j++)

sum = sum + a[i][j];

printf ("第%d个学生平均成绩是%dn",i+1,sum/4);

}

sum = 0;

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

{for(j = 0;j<8;j++)

sum = sum + a[j][i];

printf ("第%d门课程的平均成绩是%dn",i+1,sum/8);

}

return 0;

}

46. 用一个函数实现将一行字符串中的最长的单词输出。此行字符串从主函数传递给该函数。

# include

int m = 0; //m进行计算单词的长度

int j; //j是进行找定最长单词的首字母地址

int max = 0; //max是最大单词的长度

void chan (char a[]) //定义函数

{

for (int i = 0;a[i] != '';i++)

{if(a[i] ==' ') m = 0; //如果遇到空格结束累加单词的长度

else

m++;

if (max < m ) //如果单词长度大于max 进行交换

{

max = m;

j = i - max+1;

}

}

printf("最长单词长度是%dn最长单词是:",max);

}

int main ()

{

char a[100];int i ;

printf ("请输入一行字符n");

gets(a);

chan(a);//查找最长单词首字母位置

//输出最长单词

for (i = j;i

{

printf ("%c",a[i]);

}

printf ("n");

return 0;

}

47.输出金字塔图案(要求用循环实现)

# include

int main ()

{

int i,j;

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

{

for(j = 0;j<20-i;j++)

printf (" ");

for(j = 0;j

printf ("*");

printf ("n");

}

for(i = 3;i>=0;i--)

{

for(j = 0;j<20-i;j++)

printf (" ");

for(j = 0;j

printf ("*");

printf ("n");

}

return 0;

}

48.有一个已排好序的数组,要求输入一个数后,按原来排序的规律将她插入数组中。# include

int main()

{

int a[11] = {34,36,38,39,45,56,78,84,95,102};

int i = 9,j,n,t;

scanf("%d",&n);

if(n>a[9])

a[10] = n;

else

while(a[i]>n)

{

a[i+1] = a[i];

i--;

}

a[i+1] = n;

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

printf ("M",a[i]);

return 0;

}

49.写一个判断素数的函数,在主函数输入一个整数,输出是否素数的信息。

# include

# include "math.h"

int f = 0;

void su(int n)

{

int i,d;

for (i = 2;i < n; i++)

{

d = n % i;

if (d == 0) break;

if ( i > sqrt(n))

f = 1;

}

}

int main()

{

int n;

scanf("%d",&n);

su(n);

if(1==f)

printf("%d 是素数n",n);

else

printf("不是素数n");

return 0;

}

50. 有一篇文章,共有4行文章,每行有60个字符。要求分别统计出其中英文大写字符、小写字母、数字、空格以及其他字符的个数。

# include

int letters = 0,letterb = 0,space = 0,num = 0,els = 0;

int i = 0,j = 0;

int main()

{

void clas(char *p);

char a[4][60];

while(i<4)

{

printf ("请输入第%d行字符n",i+1);

gets(a[i]);

i++;

}

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

clas(a[i]);

printf("大写字母%dn小写字母%dn空格%dn数字%dn其

他%dn",letterb,letters,space,num,els);

return 0;

}

void clas(char *p)

{

j=0;

while(*(p+j)!='')

{

if(*(p+j)<='Z'&&*(p+j)>='A')

letterb++;

else if(*(p+j)<='z'&&*(p+j)>='a')

letters++;

else if(*(p+j)<='9'&&*(p+j)>='0')

num++;

else if(*(p+j)==' ')

space++;

else

els++;

j++;

}

51. 有一行电文,已按下面规律译成密码:

A→Z a→z

B→Y b→y

C→X c→x

即第1个字母变成第26个字母,第i个字母变成第(26 –i + 1)个字母。非字母符号不变。要求编程序将密码译回原文,并输出密码和原文。

# include

int main ()

{

int i;

char a[10];

printf(" 请输入一行字符");

scanf("%s",a);

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

{

if(a[i]<='z'&&a[i]>='a')

a[i] =219 - a[i];

if(a[i]<='Z'&&a[i]>='A')

a[i] =155 - a[i];

}

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

printf("%c ",a[i]);

return 0;

}

52有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下来的是原来第几号的那位(要求用指针知识实现)。

https://www.doczj.com/doc/9d13402916.html,/xhffly

# include

int main ()

{

int i,a[80],*p,n,m=0,t = 0;

printf("qin shu ru n");

scanf ("%d",&n);

p = a;

for (i = 0;i

{

*(p+i)= i+1;

}

i=0;

for(;t < n-1;)

if(*(p+i) != 0)

{

m++;

}

if(3 == m)

{

m = 0;

*(p+i)= 0;

t++;

}

i++;

if(i == n)

i = 0;

}

for (;*p == 0;)

p++;

//while(*p == 0) p++;

printf ("%dn",*p);

return 0;

}

53 有10个学生,每个学生的数据包括学号、姓名、3门课程的成绩,从键盘输入10个学生数据,要求输出3门课程总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课程成绩、平均分数)(用结构体)。

# include

int main ()

{

int i,j,sum,b[10],max =0,maxi;

struct student{

int num;

char name[20];

int score[3];

}a[2];

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

{

printf("请输入第%d个学生的信息n",i+1);

printf("学号:");

scanf("%d",&a[i].num);

printf("名字n");

scanf("%s",a[i].name);

printf("成绩n");

for(j = 0;j<3;j++)

scanf("%d",&a[i].score[j]);

}

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

{

sum = 0;

printf("学号:");

printf("%dn",a[i].num);

printf("平均成绩");

for(j = 0;j<3;j++)

sum = sum+a[i].score[j];

b[i] = sum/3;

printf("%d",b[i]);

printf("n");

if(max

{max = b[i];

maxi = i;}

}

printf("最大成绩的学生是:");

{

printf("%s",a[maxi].name);

for(j = 0;j<3;j++)

printf("M",a[maxi].score[j]);

}

return 0;

}

54 写一个函数,将一个字符串中的元音字母复制到另一个字符串,然后输出。

#include

int main()

{

char a[80],b[80];

int i,j;

gets(a);

j = 0;

for(i = 0;a[i]!='';i++)

{

if(a[i]=='a'||a[i]=='e'||a[i]=='i'||a[i]=='o'||a[i]=='u'||a[i]=='A'||a[i]=='E'| |a[i]=='I'||a[i]=='O'||a[i]=='U')

{b[j] = a[i];

j++;}

b[j] = '';

puts(b);

return 0;

}

55 编一程序,输入月份号,输出该月的英文月名。例如,输入3,则输出March,要求用指针数组处理。

# include

int main()

{

char a[12][10] = {"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"};

int n;

char (*p)[10] = a;

printf("请输入月份:");

scanf("%d",&n);

printf("%sn",*(p+n-1));

return 0

c语言课程设计机房机位预定系统绝对正确,附源代码

1 设计目的 机房机位预定系统 2 任务概述 20台机器,编号1到20,从早八点到晚八点。两小时一个时间段,每次可预定一个时间段。功能要求: (1)系统以菜单方式工作 (2)查询,根据输入时间,输出机位信息。 (3)机位预定,根据输入的时间查询是否有空机位,若有则预约,若无则提供最近的时间段,另:若用户在非空时间上机,则将用户信息列入等待列表。 (4)退出预定,根据输入的时间,机器号撤销该事件的预定! (5)查询是否有等待信息,若有则提供最优解决方案(等待时间尽量短),若无则显示提示信息。 ......... 3 模块划分 4 主要函数说明及其N-S图 1.主函数: int main() { Menu(); /*当前状态函数*/ } void Menu() /*主界面*/ { int n,w; do { puts("\t\t****************机房机位预约系统*******************\n"); puts("\t\t*************************菜单

***************************\n"); puts("\t\t\t 1.查询某时间段机位状态"); /*查询某时间段机位状态*/ puts("\t\t\t 2.预定空机位"); /*预定空机位*/ puts("\t\t\t 3.取消预订"); /*取消预订*/ puts("\t\t\t 4.查询等待信息"); /*查询等待信息*/ puts("\t\t\t 5.退出"); /*退出*/ puts("\t\t********************************************************\n"); printf("选择菜单号(1-5):"); scanf("%d",&n); if(n<1||n>5) {w=1;getchar();} else w=0; }while(w==1); switch(n) { case 1:Situation();break; case 2:Book();break; case 3:Cancel();break; case 4:SearchWaiting();break; case 5:exit(0);break; } getch(); } 2.机位查询: void Situation() { int time; printf("输在 (8-20)范围内的时间:"); scanf("%d",&time); if(time<8||time>20) {printf("\t时间输入错误!\n"); printf("输入在 (8-20)范围内的时间:"); scanf("%d",&time); } detail(time); /*函数调用*/ getchar(); Menu();} 3.机位预定:

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 语言课程设计(小游戏贪吃蛇的程序设计报告) 设计人: 班级: 201 年月号

目录一:概述 1:研究背景及意义 2:设计的任务与需要知识点3:具体完成设计内容 二:需求分析 1:功能需求 2:操作方法 三:总体设计 1:模块划分 2:数据结构设计 四:详细设计 1:主空摸块设计 2:绘制游戏界面 3:游戏的具体过程 4:游戏的结束处理 5:显示排行榜信息模块 五:程序的调试与测试1:动画与音乐同步 2:蛇的运行 3:终止程序 六:结论 七::结束语 八:程序清单 九:参考文献

一. 概述 本课程设计以软件工程方法为指导,采用了结构化,模块化的程序设计方法,以C语言技术为基础,使用Turbo C++3、0为主要开发工具,对贪吃蛇游戏进行了需求分析,总体设计,详细设计,最终完成系统的实现与测试。 1、1 研究的背景及意义 随着社会的发展,人们生活的节奏日益加快,越来越多的人加入了全球化的世界。人们不再拘泥与一小块天地,加班,出差成了现代人不可避免的公务。而此时一款可以随时随地娱乐的游戏成为了人们的需要。此次课程设计完成的贪吃蛇小游戏,正就是为了满足上述需求而设计出来的。贪吃蛇游戏虽小,却设计诸多的知识点。通过开发贪吃蛇游戏系统,可使读者初步了解使用软件工程的与那个发,技术与工具开发软件的过程,进一步掌握结构化,模块化的程序设计方法与步骤,进一步掌握总体数据结构设计,模块划分方法,掌握局部变量,全局变量,结构体,共用体,数组,指针,文件等数据结构的使用方法,掌握图形,声音,随机数等多种库函数的使用方法,学习动画,音乐,窗口,菜单,键盘等多项编程技术,进一步学会软件调试,测试,组装等软件测试方法,为后续课程的学习与将来实际软件开发打下坚实的基础。 1、2 设计的任务与需要的知识点 1、2、1 课程设计主要完成的任务 1)、通过编写“贪吃蛇游戏”程序,掌握结构化,模块块化程序设计的思想,培养解决实际问题的能力。 2) 有同步播放动画,声音效果。 3) 设计好数组元素与蛇,食物的对应关系。 4) 随机产生食物。 5) 有分数统计,排行榜,分数存储等功能。 通过此次课程设计,希望使读者能更深入的理解与掌握课程教学中的基本概念,培养读者应用基本技术解决实际问题的能力,从而进一步提高分析问题与解决问题的能力。 1、2、2需要掌握与运用的知识点 1、2、3本次课程设计需要掌握与运用如下的知识点: 1) 数组的应用。 2) 全局变量的使用。 3) 按键处理。 4)结构体的应用。 5)图形,音乐与动画的有关知识。 6)随即函数的使用。 7)文件的基本出操作。 8) 结构化,模块化的设计方法。

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语言程序设计-入门源代码代码集合

演示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语言课程设计俄罗斯方块源代码

1、新建“.h”头文件,将“头文件” 代码粘贴至其中, 2、新建“.c”源文件,将“源代码” 代码粘贴到其中。 3、新建空白工程,将头文件和源代码 添加进去,调试使用。 //头文件 //1.自定义枚举类型,定义7种形态的游戏方块 typedef enum tetris_shape { ZShape=0, SShape, LineShape, TShape, SquareShape, LShape, MirroredLShape }shape; //2.函数声明 //(1)操作方块函数 int maxX();//取得当前方块的最大x坐标 int minX();//取得当前方块的最小x坐标 void turn_left();//当前方块逆时针旋转90度 void turn_right(); int out_of_table(); void transform(); int leftable(); int rightable(); int downable(); void move_left(); void move_right(); //(2)操作游戏桌面的函数 int add_to_table();

void remove_full(); //(3)控制游戏函数 void new_game(); void run_game(); void next_shape(); int random(int seed); //(4)绘图函数 void paint(); void draw_table(); //(5)其他功能函数 void key_down(WPARAM wParam); void resize(); void initialize(); void finalize(); //(6)回调函数,用来处理Windows消息 LRESULT CALLBACK WndProc (HWND,UINT,WPARAM,LPARAM); //源代码 //1.文件包含 #include #include #include #include"tetris.h" //2.常量定义 #define APP_NAME "TETRIS" #define APP_TITLE "Tetris Game" #define GAMEOVER "GAME OVER" #define SHAPE_COUNT 7 #define BLOCK_COUNT 4 #define MAX_SPEED 5 #define COLUMS 10 #define ROWS 20 #define RED RGB(255,0,0)

一些比较简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

c语言课程设计报告学生成绩信息管理系统源代码

实验报告 一、问题陈述及其需求分析 (一)问题陈述 学生信息管理系统是对学生信息的基本管理,其中包括以下及模块: (1)增加一个学生的信息(需输入要增加学生的所有信息); (2)统计本班学生总人数及男女生人数。 (3)分别按照学号查找学生的信息;若找到则输出该学生全部信息,否则输出查找不到的提示信息。 (4)按学号对所有学生信息排序,并输出结果; (5)删除一个学生的信息(需指定要删除学生的学号);同时显示删除后的结果。( 二) 功能需求分析 学生信息管理系统设计 学生信息包括:学号,姓名,性别,出生年月,电话 使之提供以下功能: 1、系统以菜单方式工作 2、建立链表并显示 3、插入新的学生信息 4、删除某学号的学生信息 5、查找某学号的学生信息 6、对学生信息排序 7、统计学生人数 8、输出学生信息 二总体设计 (一)模块 依据程序的数据结构,描述该程序的层次结构,如下图:

1、建立链表并显示 void createlist(struct stucode **r); 2、插入新的学生信息 void insert(struct stucode **r); 3、删除某学号的学生信息 void del(struct stucode **r); 4、查找某学号的学生信息 void search1(struct stucode *r); 5、对学生信息排序 void sort(struct stucode **r); 6、统计学生人数 void search2(struct stucode *r); 7、输出学生信息 void out(struct stucode *r); 1 建立链表并显示 2 添加学生信息 3 删除学生信息 息 4 按学号查找学生信 5 对学生信息排序 6统计学生人数 7输出学员信息 8 学生信息写入文件 0退出 main() 菜单函数

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;

C语言课程设计---学生选课系统加源代码

C程序设计课程设计 题目:学生选课系统专业班级:通信工程1班姓名: 学号: 指导教师: 成绩:

摘要 学生选课系统是一个教育单位不可缺少的重要系统组成部分,它对于学校的决策者、管理者管理、查看课程来说都有至关重要,所以学生选课管理系统应该能够为广大学、师生提供充足的信息和快捷的课程选择过程,有助于学生选好每一门课程,此系统系统选课方便、快捷,用简单的界面来展示学生的选课信息,应用简单明了、存储量大、可靠性高、保密性好、寿命长、成本低等优点,可以极大的提高对学生信息管理的效率。利用C语言开发,实现了简单的学生课程信息的录入、修改、查询、删除等操作,并且能够利用文件系统长久的保留原始数据。

目录 一、需求分析 (1) 二、总体设计 (1) 三、详细设计 (2) 1、数据定义...................................................... 错误!未定义书签。 2、算法流程图 (2) 四、编码 (6) 五、调试 (7) 六、设计总结 (10) 致谢 (11) 参考文献 (12) 附录 (13)

一、需求分析 语言文字描述系统要做什么 数据结构可用结构体,包括课程和选修两个结构体,其中课程结构体成员结构体成员包括课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期。选修结构体成员包括学号,课程编号,该结构体的建立主要是为了查询某门课程学生选修情况。 二、总体设计 系统由哪几个功能模块构成,给出功能模块图。C 中模块化的工具是函数 根据上面的需求分析,可以将这个系统的设计分为如下七大模块: 选课模块、按学分查找模块、按编号查找模块、查看课程模块、查看选课情况模块、课程输入模块、完成选择模块。 菜单选择模块 录入学生信息 学生选课 系统信息查看及储存 退出系统 完成选择模块 学生信息 管 理 录入课程信息 课程 管理

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语言课程设计题目(附参考代码)

C语言课程设计题目 选题一(起评分100分) 高考招生录取程序 已知文本文件f1.txt中存放了某个省当年参加高考的1000个考生的数据(考号、姓名、性别和考试成绩),存放格式是每行存放一个考生的数据,每个数据之间用空格隔开。 假定当年该省的招生计划是:一类本科招生计划为10%;二类本科招生计划为15%;三类本科招生计划为20%;四类高职高专招生计划为25%。 请编写程序,实现以下功能: (1)划定各批次录取分数线,结果可屏幕显示,也可存入文件。 (2)能够统计各批次中男生,女生的录取比例。统计结果可屏幕显示,也可存入文件。 (3)确定每名学生的录取情况及录取批次。 (4)考生可以根据考号或姓名(支持重名)查询自己的成绩及录取情况; 说明: ①系统程序要有界面 ②存入文件的数据,每行存一种数据,每行之间的不同信息用空格分隔。 选题二(起评分85分) 《C语言课程设计与学习指导》第4章题目或第5章题目任选其一 成绩评定方式 平时考勤:20% 考试(即程序考核及检查):40% 实习报告:40% 违规违纪处理 出现以下6种情况中的任何一种,整个课程设计的成绩直接认定为不及格: 1.考勤抽查出现3次(含)不在的情况; 2.上机从事玩游戏、看电影等活动被抓住2次(含)的情况; 3.程序检查被认定为抄袭的情况; 4.实习报告被认定抄袭或雷同的情况; 5.不参加考试(即程序考核及检查)的情况 6.不交实习报告的情况。

C语言课程设计报告撰写要求 1 内容要求 整个报告由六个部分构成: ①课设题目 ②题目分析 ③设计思路 ④实现结果 ⑤课设总结 ⑥附录(源代码) 2 篇幅要求 ①-⑤合计不低于8页,⑥不低于8页。 篇幅没有上限要求,但原则上要求不超过25页。 标题字体字号格式:宋体,三号,加黑,单倍行距。 正文字体字号格式:宋体或Times New Roman,五号,单倍行距。 3 撰写要求 严谨出现抄袭。 严谨出现雷同。 报告出现抄袭或雷同的,整个课程设计成绩一律按不及格论处。 4 其它 封面格式附后。

运动会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语言课程设计――飞机订票系统源代码

#include//标准输入、输出头文件 #include//包含字符串函数处理头文件 #include//包含access函数的头文件 #define N 99//定义最多的航班数 #define PRINT "%d\t\t%s\t\t%s\t\t星期%s\t\t%d\n ",s[i].num,s[i].start,s[i].over,s[i].time,s[i].count//宏定义输出格式struct air//定义结构体数组{int num;//定义航班号 char start[20];//航班起始站 char over[20];//终点站 char time[10];//飞行时间 int count;//机票数量 }s[N]; int i,m=0;//定义全局变量 char ii[10]; void add();//函数声明增加航班信息函数 void print();//显示航班信息 void search();//查找航班信息 void dingpiao();//订票业务 void tuipiao();//退票 void read();//读取文件 void save();//保存文件

void output();//输出格式 void paixu();//航班排序 void chushihua();//系统初始化 void build();//建立数据文件 void paixu1();//按航班号从小到大排序 void paixu2();//从大到小 void main()//主函数{int j; chushihua();//系统初始化判断是否存在原始数据文件 printf("欢迎使用飞机订票系统\n");//打印出系统主界面 do{printf("============================================================= =================== "); printf(" 1.增加航班信息\n" "\t 2.浏览航班信息\n" "\t\t 3.查找航班信息(按航班号)\t\t╮(╯_╰)╭\n" "\t\t\t 4.航班排序(按航班号)\n" "\t\t\t\t 5.订票业务\n" "\to(︶︿︶)o\t\t\t

c语言课程设计报告会员卡计费系统源代码

#i n c l u d e//编译预处理指令,引入头文件 #include #include #include #define MAX 10 //自定义符号常量 #define MENU_MAIN_COUNT 7 //主菜单的选项个数 typedef struct member //定义结构体类型member,采用链式存储结构{ char name[MAX]; //姓名 char id[MAX]; //卡号 char sex[2]; //性别 int age; //年龄 float money; //余额 char tel[12]; //电话 struct member *next; //定义一个指针指向下一个会员信息 float cost; //消费金额 }mem; //定义结构体变量mem /*声明函数*/ void menu(); /*声明函数,声明菜单函数*/ void save(mem *p); //声明保存函数 mem *head=NULL; //头指针为NULL mem* get_last(mem *p) //取得链表最后一个元素的节点指针并返回该指针 { if(p->next == NULL) { return p; } else { get_last(p->next); } } void creat_member(mem *pNew) //输入信息操作,会员登记函数 { //创建一个新的会员 char s; printf("卡号:"); scanf("%s",pNew->id); //运用指针输

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语言程序设计(医院信息管理系统)附源代码

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

专业设计报告 课程名称: 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、系统完成后应实现类似下面所示界面

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语言动画程序源码

C语言动画程序 #include <> #include <> #include <> #include <> #define pi 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=; double xo=,yo=,a1=,t1=pi; double xc=xo+m*a1,yc=yo; double a2=,a3,a4=,a5=,a6=,a7=; 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=,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语言日历显示课程设计报告(含源代码)

高级语言程序设计课程设计题目: 专业计算机类 班级计算机类1102 学生 学号 指导教师_______________ 起止时间2012.2.13——2012.2.17 2012年2月

目录 实验报告 (3) 必做题: (3) 选做题: (8) 题目10 写一个日历显示程序 (8) 流程图:(如下) (14) 工程代码: (19) 心得体会 (24)

实验报告 必做题: (1)编一程序对2种排序方法进行比较:交换法、选择法、插入法、冒泡法四种方法选2。具体比较方法是随机生成一组(≥300个)的100以内的整数数据,用选定的2种排序方法进行排序。纪录排序过程中数据比较和交换的次数,输出比较结果。 #include #include int main(void) { int a[300],b[300]; int i,j,temp,t; int s=0,p=0,s1=0,p1=0; for(i=0;i<300;i++) { a[i]=rand()%100; b[i ]=a[i]; } for(i=0;i<299;i++){ for(j=i+1;j<300;j++) { if(a[i]

{ t=i; for(j=i+1;j<300;j++) { if(b[t]

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