700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > c语言课程设计 职工工资处理系统 院职工工资管理系统_C语言课程设计-10月.doc...

c语言课程设计 职工工资处理系统 院职工工资管理系统_C语言课程设计-10月.doc...

时间:2024-07-19 12:37:19

相关推荐

c语言课程设计 职工工资处理系统 院职工工资管理系统_C语言课程设计-10月.doc...

信息科学与技术学院

课程设计报告

—学年第一学期

课程名称:C语言课程设计上机

设计题目:院职工工资管理系统

学 号:__________________

姓 名:__________________

专业班级:__________________

指导老师:__________________

____月____日

基础任务

学生成绩排名

用指针优化学生成绩排名

任务要求

1.学生成绩排名

定义一个数组a[11],用以存放学生的成绩。

从键盘输入10个学生成绩

采用冒泡法,将学生成绩按照从高到低进行排序

再输入一个学生的成绩,将此成绩按照排序规律插入原学生成绩数组

将排好序的成绩单进行反序存放,即原来是从高到低,现在改为从低到高排列。

将以上每一步骤的结果均打印输出,验证程序是否正确实现题目要求

2. 用指针优化学生成绩排名

定义数组stu[10]存放10个学生的成绩,从键盘输入数据,用指针实现

将数组stu[10]的内容输出到屏幕上,要求用指针实现

将成绩数组按照从高到低进行排序,要求用指针实现

将第三步内容放在函数中实现,在主函数中调用实现排序,用指针实现,输出排序后的成绩单

采用指针方法,输入字符串“student score ”,复制该字符串并输出(复制字符串采用库函数或用户自定义函数)

算法流程图

主要代码

1.学生成绩排名

for(j=0;j

{

for(i=0;i

{

if(a[i]

{

t=a[i];

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

a[i+1]=t;

}

}

}

printf("按从高到低排列成绩:\n");

for(i=0;i

printf("%4d",a[i++]);

printf("请再输入一个学生的成绩:\n");

scanf("%d",&number);

printf("第%d个学生的成绩是:%d\n",N+1,number);//宏定义用得好!

end=a[N-1];//插入一个新数据按原顺序排列 是难点!

if(number

else

for(i=0;i

{

if(number>a[i])

{

t=a[i];

a[i]=number;

for(j=i+1;j

{

t1=a[j];//关键是要引入两个临时变量

a[j]=t;

t=t1;

}

break;

}

}

printf("插入后成绩排序是:\n");

for(i=0;i

printf("%4d",a[i]);

指针优化后的学生成绩排名

#include

#include

#define NULL 0

#define N 10

int main ()

{

void sort(int *p,int n);

void sort2(int *p,int n);

void inv(int *p,int n);

void copy_string(char *,char *);

int stu[N];

int *p=stu;

int i;

char a[20],b[20],c[20];

char *p1=a,*p2=b,*p3=c;

printf("请输入%d个学生的成绩:\n",N);

for(i=0;i

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

printf("这%d个学生的成绩是:\n",N);

for(p=stu,i=0;i

printf("%4d",*p++);

printf("\n");

printf("从高到低排序:\n");

p=stu;//指针复位,一定不能漏!

sort(p,N);

for(i=0;i

printf("%4d",*p++);

printf("\n");

printf("逆序存放且输出:\n");

p=stu;//指针复位,一定不能漏!

inv(p,N);

for(i=0;i

printf("%4d",*p++);

printf("\n");

printf("realize the copy_string\n");//字符串输入和复制

p

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。