這裡蒐索程式師資訊,查找有用的技術資料
当前位置:首页 » 编程语言 » c语言登榜
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言登榜

发布时间: 2022-05-12 01:34:58

㈠ 如何用c语言编写录入成绩和排行

先输入到一个数组内,然后再排序就行了,具体的知道吧?

㈡ c语言排行榜怎么编

结构体数组名字+名次不就对了么。显示的时候按名次显示用循环来实现。

㈢ c语言中排名怎么搞

C语言用struct实现,把信息包含在同一个struct里面就可以了,每个struct对应一个学生。然后你建立一个N维struct数组即可。
或者C++用类实现。
再普通一些,用链表,把所有数据通过指针项定位进行绑定。

㈣ C语言如何实现用户注册登录注销,用户签到功能

数据库实现,可以用MySQL,PostgreSQL,如果数据多一点用Oracle,签到功能在数据库中记录,加密密码用加密方法可以用异或加密。

㈤ C语言学生成绩排名

举个例子,学生的成绩依次为:7,5,6,3,8,排名初始化为1,2,3,4,5
根据你的程序:
经过第一次循环,即i=0;j=0时,程序排序依旧为7,5,6,3,8;排名为:1,3,2,5,4
如果在往下循环执行,第五名同学的最高成绩“8”分,将永远处于第4名;
所以,有错误。。。

修改建议:
可以参考排序,每次循环总能得到一个最大值,将此最大值所在结构体的排名rank赋值:
大概如下:
for(i=0;i<5;i++)
{
for(j=0;j<4-i;j++)
{
if(student[j].total>student[j+1].total)
{
//temp也是结构体,交换
temp = student[j];
student[j] = student[j+1];
student[j+1] = temp;
}
}
student[j].rank = i+1;
}

也可以用结构体指针,不需要每次交换,只需要标记下最大值,然后赋予名次~

㈥ c语言成绩排名(详细点)

# include<stdio.h>
main()
{
int a[70],i,j,n;//a[70]保存成绩,i,j控制循环变量,n学生数量
printf("请输入学生最大数量(<=70)");
scanf("%d",&n);
printf("请输入学生成绩以-1结束");
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
if(a[i]==-1)
{
break;
}//如果输入数为-1 跳出
}//成绩输入完毕
int max,temp;
for(i=0;i<n;i++)
for(j=i+1;j<n;j++)
{
if(a[j]>a[i])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}//快速排序完成
printf("成绩由搞到低为\n");
for(i=0;i<n-1;i++)
{
printf("%d ",a[i]);
}
return 0;
}

㈦ C语言 如何更新高手榜排名顺序送10分~

首先你的代码里面有个问题
就是这个位置:
if(ch=='Y'||ch=='y')
{
printf("你选择了记录成绩。\n请输入你的名字:\n");
scanf("%s",&name);
fp=fopen("d:\\cha.txt","a");
if(fp==NULL)
{
printf("抱歉,系统错误,成绩无法记录");
exit(0);
}
这里name本身就是数组名,输入的时候前面不应该再有地址符号。
其次你说的排名问题,我建议你用结构体数组来做,就是把在游戏中用到的变量:姓名,时间,次数,总分都放到结构体中去,然后用总分来排序...我刚学C语言,没有接触过时间函数,所以没有能力给你改,还是自己尝试一下吧

㈧ c语言 学生成绩排名

#include<stdio.h>
voidsetList(int*a,intlen);
voidprintfList(int*a,intlen);
voidpxList(int*a,intlen);
voidinsertList(int*a,intlen);
voidfanList(int*a,intlen);
intmain()
{
inta[11];//1.定义一个数组a[11],用以存放学生的成绩。
setList(a,10);//2.从键盘输入10个学生成绩。
pxList(a,10);//3.采用选择法,将学生成绩按照从高到低进行排序。
printfList(a,10);
insertList(a,10);//4.再输入一个学生的成绩,将此成绩按照排序规律插入原学生成绩数组。
printfList(a,11);
fanList(a,11);//5.将排好序的成绩单进行反序存放,即原来是从高到低,现在改为从低到高排列
printfList(a,11);
return0;
}
voidsetList(int*a,intlen)//输入
{
inti;
printf("请输入%d个学生成绩 ",len);
for(i=0;i<len;i++)
scanf("%d",&a[i]);
}
voidprintfList(int*a,intlen)//打印数组
{
inti;
printf(" ---打印数组--- ");
for(i=0;i<len;i++)
printf("%d",a[i]);

}
voidpxList(int*a,intlen)//选择排序
{
inti,j;
printf(" ---从大到小排序--- ");
for(i=0;i<len-1;i++)
for(j=i+1;j<len;j++)
if(a[i]<a[j])
{
a[j]^=a[i];
a[i]^=a[j];
a[j]^=a[i];
}
}
voidinsertList(int*a,intlen)//插入数组
{
printf(" ---插入数组--- ");
printf("输入要插入的数:");
scanf("%d",&a[len]);
pxList(a,11);
}
voidfanList(int*a,intlen)//数组反向存储
{
int*p0,*p1;
p0=a;
p1=&a[len-1];
while(p0<p1)
{
*p0^=*p1;
*p1^=*p0;
*p0^=*p1;
p0++;
p1--;
}

}

㈨ 成绩排行系统C语言

#include<stdio.h>
#definen20
intmain()
{
charname[n],c;
inti,j,t,score[n];
c='a';
for(i=0;i<n;i++)//初始化姓名
{
name[i]=c++;
}
for(i=0;i<n;i++)//输入从a到…t对应的成绩
scanf("%d",&score[i]);
for(i=0;i<n-1;i++)//升序排列
{
for(j=i;j<n-1-i;j++)
{
if(score[j+1]<score[j])//注意,成绩与姓名要同时改变
{
t=score[j+1];
score[j+1]=score[j];
score[j]=t;
c=name[j+1];
name[j+1]=name[j];
name[j]=c;
}
}
}
for(i=n-1,j=1;i>=n-6;i--,j++)
printf("姓名为:%c的成绩为:%d,排名第%d名 ",name[i],score[i],j);
return0;
}

这是经过调试成功的代码,希望采纳。

㈩ c语言中rank函数怎么用

c语言中rank函数是自定义的函数吧?如果是的话,怎么用,还必须看这个函数是怎么定义的了。