① 在c语言编程中,给出一个百分制成绩,要求输出成绩等级
#include <stdio.h>
int main()
{
int score, m;
scanf("%d", &score);
while (score < 0 || score > 100){
printf("Error! Retry! ");
scanf("%d", &score);
}
m= score / 10;
if (m>= 9)
printf("Grade is A! ");
switch(m){
case 0: printf("Grade is E! "); break;
case 1: printf("Grade is E! "); break;
case 2:printf("Grade is E! "); break;
case 3:printf("Grade is E! "); break;
case 4:printf("Grade is E! "); break;
case 5: printf("Grade is E! "); break;
case 6: printf("Grade is D! "); break;
case 7: printf("Grade is C! "); break;
case 8: printf("Grade is B! "); break;
}
return 0;
}
(1)c语言成绩扩展阅读:
其他实现输出成绩等级‘A'、’B‘、'C'、‘D'、'E’。90分以上为A,80~89分为B,70~79分为C,60~69分为D,60分一下为E的方法:
#include <stdio.h>
int main()
{
int score;
scanf("%d", &score);
while (score < 0 || score >100){
printf("Error! Retry! ");
scanf("%d", &score);
}
if (score < 60)
printf("Grade is E! ");
else if (score >= 60 && score < 70)
printf("Grade is D! ");
else if (score >= 70 && score < 80)
printf("Grade is C! ");
else if (score >=80 && score < 90)
printf("Grade is B! ");
else
printf("Grade is A! ");
return 0;
}
② 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语言求平均成绩
#include<stdio.h>
intmain()
{
floata[5][50],s,av;
inti,j,stu,sub,count;
while(scanf("%d%d",&stu,&sub))
{
for(i=0;i<stu;i++)
for(j=0;j<sub;j++)
scanf("%f",&a[i][j]);//输入信息
for(i=0;i<stu;i++)
{
for(j=0,s=0;j<sub;j++)
s+=a[i][j];
av=s/sub;
if(j!=stu-1)
printf("%.2f",s/sub);//这里应该是%f,下同
else
printf("%.2f",s/sub);
}
printf(" ");//这里要换行
for(i=0;i<sub;i++)
{
for(j=0,s=0;j<stu;j++)
s+=a[j][i];
if(j!=sub-1)
printf("%.2f",s/stu);
else
printf("%.2f",s/stu);
}
printf(" ");//这里要换行
for(i=0;i<stu;i++)
{
for(j=0,count=0;j<sub;j++)
if(a[i][j]>=av)
count++;
printf("%d",count);
}
printf(" ");//这里要换行
}
}
一个小错误,把%f写成了%d,下次看到正常运行,还出现0就有经验了。
还有你给出的代码换行应该是不正确的。被输入输出示例误导了。
④ c语言可以以分数的形式输出么
如果采用float或者double定义数据类型,则无法以分数形式输出,如果需要用分数形式输出,最好的方法是采用两个int类型的变量储存分子和分母,如下面的代码:
int num; // 定义分子
int den; // 定义分母
double a = 3.5;
num = 7; // 3.5的分子
den = 2; // 3.5的分母
printf("%d ", num); // 输出分子并换行
printf("---- "); // 输出分数线并换行
printf("%d ", den); // 输出分母并换行
(4)c语言成绩扩展阅读:
C语言参考函数
C语言isgraph()函数:判断一个字符是否是图形字符
C语言isdigit()函数:判断一个字符是否为数字
C语言iscntrl()函数:判断一个字符是否为控制字符
C语言isalpha()函数:判断一个字符是否是字母
C语言isalnum()函数:判断一个字符是否是字母或者数字
int islower(int ch) 若ch是小写字母('a'-'z')返回非0值,否则返回0
int isprint(int ch) 若ch是可打印字符(含空格)(0x20-0x7E)返回非0值,否则返回0
⑤ 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>
#include <stdlib.h>
int main()
{
int n,i,j,k,m,l,c,a[9999],b[9999];
a[0]=-1;
b[0]=-1;
scanf("%d",&n);
for(i=1;i<n+1;i++)
{
scanf("%d",&a[i]);
}
for(k=1,i=1;k<n+1;k++,i++)
{
b[k]=a[i];
}
for(j=1;j<=n-1;j++)
{
for(i=1;i<n-j+1;i++)
{
if(a[i]<a[i+1])
{
m=a[i];
a[i]=a[i+1];
a[i+1]=m;
}
}
}
for(i=1,l=1;i<n+1;i++,l++)
{
for(k=1;k<n+1;k++)
{
if(a[i]==b[k]&&a[i]!=a[i-1])
{
printf("%d:%d,%d\n",l,k,a[i]);
b[k]=0;
break;
}
else if(a[i]==b[k])
{
printf("%d:%d,%d\n",l-1,k,a[i]);
l=l-1;
break;
}
}
}
}
⑦ c语言成绩编程
不难的 你有认真学就会的
⑧ C语言 统计学生成绩
//按你要求来的
不过只输入了3组数,你可以自己改
#include
#include
#define
max
100
typedef
struct
{
char
name[max];//
姓名
int
num;//学号
int
eng;//英语成绩
int
pro;//程序设计成绩
int
maths;//数学成绩
}student;
void
input(student
s[],int
n)//输入以及求总分
{
int
sum=0;
for(int
i=0;i<n;i++)
{
printf("输入第%d个学生的姓名:\n",i+1);gets(s[i].name);
printf("输入第%d个学生的学号:\n",i+1);scanf("%d",&s[i].num);
printf("输入第%d个学生的英语成绩:\n",i+1);scanf("%d",&s[i].eng);
printf("输入第%d个学生的程序设计成绩:\n",i+1);scanf("%d",&s[i].pro);
printf("输入第%d个学生的数学成绩:\n",i+1);scanf("%d",&s[i].maths);
sum=s[i].eng+s[i].pro+s[i].maths;
printf("总分为:%d\n",sum);
fflush(stdin);
}
}
void
sumscore(student
s[],int
n)//单科成绩总和
{
int
sum_eng=0,sum_pro=0,sum_maths=0;
for(int
i=0;i<n;i++)
{
sum_eng+=s[i].eng;
sum_pro+=s[i].pro;
sum_maths+=s[i].maths;
}
printf("英语总成绩为:%d\n",sum_eng);
printf("程序设计总成绩为:%d\n",sum_pro);
printf("数学总成绩为:%d\n",sum_maths);
}
void
searchst(student
s[],int
n)//查找学生
{
char
e[max];int
number;
printf("输入要查询的姓名:\n");gets(e);
printf("输入要查询的学号:\n");scanf("%d",&number);
for(int
i=0;i<n;i++)
if(!strcmp(s[i].name,e)&&number==s[i].num)
{
printf("英语成绩:%d\n程序设计成绩:%d\n数学成绩:%d\n",s[i].eng,s[i].pro,s[i].maths);
printf("总成绩为:%d\n",s[i].eng+s[i].pro+s[i].maths);
return;
}
printf("查无此人!");
}
void
main()
{
student
s[3];int
n=3;//这里只用了3个测试,30个太夸张了,可以改成30组数....
input(s,n);
printf("\n");
sumscore(s,n);
printf("\n");
searchst(s,n);
printf("\n");
}
⑨ c语言分成绩等级
scanf("%lf",&grade); %d是整型,double要用lf 我用switch改了一下,附测试图:
#include <stdio.h>
int main(void)
{
float Grade;
int grade;
char ch;
bed: printf("Please input the grade:");
scanf("%f",&Grade);
if(Grade > 100 || Grade < 0)
{
printf("Illegal input!");
goto bed;
}
grade = (int)(Grade /= 10);
switch(grade)
{
case 10 : case 9 : ch = 'A';break;
case 8 : ch = 'B';break;
case 7 : ch = 'C';break;
case 6 : ch = 'D';break;
default: ch = 'E';break;
}
printf("成绩等级是:%c
",ch);
goto bed; //这个goto是为了重复测试
return 0;
}
⑩ c语言学生成绩的等级
#include<stdio.h>
int main()
{
int s=0;
printf("请输入学生的成绩:");
scanf("%d",&s);
if (s < 0 || s>100)
{
printf("error\n");
}
else if (s<60)
{
printf("fail\n");
}
else if (s < 70)
{
printf("pass\n");
}
else if (s < 80)
{
printf("medium\n");
}
else if (s < 90)
{
printf("good\n");
}
else
{
printf("excellent\n");
}
return 0;
}
楼主你要加油了