当前位置:首页 » 编程语言 » c语言大作业怎么样
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言大作业怎么样

发布时间: 2023-01-03 11:12:55

c语言大作业,这题该怎么写

图片看不清,只看到学生信息录入。
学生信息包含多个类型数据,比如学生学号、成绩、班级、年级、学科、成绩等等。
所以学生应该定义为结构体。
学生数量可以用常量表示。之后定义结构数组用于循环接收学生信息的录入。
之后学生信息的输出,成绩分析,求平均之类,都只是对结构数组的循环遍历。

② C语言大作业怎么做

给你个大概思路~~~~~
1。把每个学生的的信息先组合成一个结构体
struct
Student
{
……},
然后就用它来定义学生,
struct
Student
stu[100];(有能力的话建义用动态内存的链表结构,不明白当我没说)
2。“自顶向下,逐步求精”,把各个功能写成各个函数,如添加,删除,查询,退出……(看你自己了,这正是C语言的模块化思想
3。主函数就是打出这些选择,让USER
去选,然后调用相应的函数去执行,完了又回到主菜单,以此循环
如果能使用图形的界面,增加动画之类的会更好的(呵呵,不会当我没说~~~~)

③ C语言程序设计大作业🙏🙏🙏

大作业很重要,你这个最好请我来写。

④ C语言万年历难不难,适合作大作业吗

是cmd下的程序还是单片机系统实验?
如果是cmd下的程序的话,太简单了,不适合做大作业;如果是单片机系统的话,是可以做为大作业的,但是必须要有你创新的地方,加入你独创的功能,那么他就是名副其实的大作业。

满意请采纳,不满意请追问

⑤ C语言怎么样学起来难吗

C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。
(1)简洁的语言
C语言包含的各种控制语句仅有9种,关键字也只有32个,程序的编写要求不严格且以小写字母为主,对许多不必要的部分进行了精简。实际上,语句构成与硬件有关联的较少,且C语言本身不提供与硬件相关的输入输出、文件管理等功能,如需此类功能,需要通过配合编译系统所支持的各类库进行编程,故c语言拥有非常简洁的编译系统。 [5]
(2)具有结构化的控制语句
C语言是一种结构化的语言,提供的控制语句具有结构化特征,如for语句、if...else语句和switch语句等。可以用于实现函数的逻辑控制,方便面向过程的程序设计。 [5]
(3)丰富的数据类型
C语言包含的数据类型广泛,不仅包含有传统的字符型、整型、浮点型、数组类型等数据类型,还具有其他编程语言所不具备的数据类型,其中以指针类型数据使用最为灵活,可以通过编程对各种数据结构进行计算。 [5]
(4)丰富的运算符
C语言包含34个运算符,它将赋值、括号等均是作运算符来操作,使C程序的表达式类型和运算符类型均非常丰富。 [5]
(5)可对物理地址进行直接操作
C语言允许对硬件内存地址进行直接读写,以此可以实现汇编语言的主要功能,并可直接操作硬件。C语言不但具备高级语言所具有的良好特性,又包含了许多低级语言的优势,故在系统软件编程领域有着广泛的应用。
(6)代码具有较好的可移植性
C语言是面向过程的编程语言,用户只需要关注所被解决问题的本身,而不需要花费过多的精力去了解相关硬件,且针对不同的硬件环境,在用C语言实现相同功能时的代码基本一致,不需或仅需进行少量改动便可完成移植,这就意味着,对于一台计算机编写的C程序可以在另一台计算机上轻松地运行,从而极大的减少了程序移植的工作强度。
(7)可生成高质量、目标代码执行效率高的程序
与其他高级语言相比,C语言可以生成高质量和高效率的目标代码,故通常应用于对代码质量和执行效率要求较高的嵌入式系统程序的编写。

⑥ C语言大作业是什么怎么没人告诉我

//做一个项目看看 #include <stdio.h> #include <string.h> int i,j=0,k; struct arr { int xh; char name[15]; float a; float b; float c; float cj; }f1[50]; void q(); void w(struct arr f2[]); void e(struct arr f3[]); void t(struct arr f4[]); void r(struct arr f5[]); void main() { int s; do { printf("功能选择:\n0.退出\n1.录入\n2.查找\n3.删除\n4.排序\n5.显示\n请选择:"); scanf("%d",&s); if(s==0) break; switch(s) { case 1: q();break; case 2: w(f1);break; case 3: e(f1);break; case 4: r(f1);break; case 5: t(f1);break; default:printf("输入有误;请在0~5之间\n\n");break; } }while(1); } void q() { char ch='y'; do { for(i=j;i<50;i++) { printf("\n请输入 %d 学员信息:\n",j+1); printf("学号:"); scanf("%d",&f1[i].xh); fflush(stdin); printf("姓名:"); gets(f1[i].name); printf("三门成绩:\n"); fflush(stdin); printf("成绩1:"); scanf("%f",&f1[i].a); fflush(stdin); printf("成绩2:"); scanf("%f",&f1[i].b); fflush(stdin); printf("成绩3:"); scanf("%f",&f1[i].c); fflush(stdin); f1[i].cj=((f1[i].a)+(f1[i].b)+(f1[i].c))/3; printf("平均成绩:%.2f\n",f1[i].cj); j++; break; } printf("是否还添学员(Y/N):"); fflush(stdin); ch=getchar(); i++; }while(ch=='y'); } void w(struct arr f2[]) { char s1[15]; int z=0; printf("查找学员姓名:"); fflush(stdin); gets(s1); printf("\n学号\t姓名\t平均成绩\n"); for(i=0;i<=j;i++) { if(strcmp(f1[i].name,s1)==0) { printf("%d\t%s\t%.2f\n",f1[i].xh,f1[i].name,f1[i].cj); z=1; } } printf("\n"); if(z==0) printf("\t没有查找!\n\n"); } void e(struct arr f3[]) { int s2,h,z1=0; printf("\n请输入你要删除的学号:"); scanf("%d",&s2); for(i=0;i<j;i++) { if(f3[i].xh==s2) { for(h=i;h<j;h++) { f3[h]=f3[h+1]; z1=1; } } } if(z1==1) j--; if(z1==0) printf("没有查找到!\n\n"); } void r(struct arr f5[]) { int h1; struct arr temp; printf("平均成绩排序:\n"); for(i=0;i<j;i++) { for(h1=i+1;h1<j;h1++) { if(f5[h1].cj<f5[i].cj) { temp=f5[h1]; f5[h1]=f5[i]; f5[i]=temp; } } } printf("学号\t姓名\t成绩\n"); for(i=0;i<j;i++) { printf("%d\t%s\t%.2f\n",f5[i].xh,f5[i].name,f5[i].cj); } printf("\n"); } void t(struct arr f4[]) { int h2; struct arr temp1; printf("学号\t姓名\t成绩\n"); for(i=0;i<j;i++) { for(h2=i+1;h2<j;h2++) { if(f4[h2].xh<f4[i].xh) { temp1=f4[h2]; f4[h2]=f4[i]; f4[i]=temp1; } } } for(i=0;i<j;i++) { printf("%d\t%s\t%.2f\n",f4[i].xh,f4[i].name,f4[i].cj); } printf("\n"); }

求采纳

⑦ C语言大作业,C语言高手们救下小弟啊```

这是我在大学做过的课程设计,你看看:

/*
程序功能:
能完成每位学生的某门课程的平时成绩和期末考试成绩的录入,
完成每位学生的总评成绩计算(平时成绩*30%+期末考试成绩*70%)并生成数据文件,
生成分数段统计文件(不及格人数,60-69数,70-79人数,80-89人数,90-100人数,及格率),
通过学生成绩的数据文件查询学生成绩(查询条件自定)。
通过学生成绩的分段统计文件输出学生成绩分段情况和及格率。

程序要求:
(1)能够完成300人以内任何人数的成绩处理。
(2)程序要有主控菜单
*/

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

struct stud
{
long num;
char name[20];
double score;
};

typedef struct stucode
{
struct stud student ;
struct stucode *next;
}L;

void menu();
void createlist(struct stucode **r);
void out(struct stucode *r);
void search1(struct stucode *r);
void search2(struct stucode *r);
void del(struct stucode **r);
void insert(struct stucode **r);
void sort(struct stucode **r);

void main()
{
char choose;
int flag=1;
struct stucode *r=NULL;

while(flag)
{
system("cls");
menu();
choose=getchar();
switch(choose)
{
case '1':
createlist(&r);
out(r);
printf("Testing function 1\nPress any key to continue\n");
getchar();
getchar();
break;

case '2':
search1(r);
printf("Testing function 1\nPress any key to continue\n");
getchar();
getchar();
break;

case '3':
search2(r);
printf("Testing function 1\nPress any key to continue\n");
getchar();
getchar();
break;

case '4':
del(&r);
out(r);
printf("Testing function 1\nPress any key to continue\n");
getchar();
getchar();
break;

case '5':
insert(&r);
out(r);
printf("Testing function 1\nPress any key to continue\n");
getchar();
getchar();
break;

case '6':
sort(&r);
out(r);
printf("Testing function 1\nPress any key to continue\n");
getchar();
getchar();
break;

case '7':
out(r);
printf("Testing function 7\nPress any key to continue\n");
getchar();
getchar();
break;

case '0':
flag=0;
printf("The end.\n");
break;

default: printf("\nWrong Selection!(选择错误,请重选!)\n");getchar();getchar();
}
}
}

void createlist(struct stucode **r)
{
struct stucode *p,*t;
long n;
char a[20];
double s;
if(*r) *r=NULL;
printf(" \n请输入:\n 学号(请按学号升序排列) 姓名 分数 (若要结束请输入三个为零)\n");
scanf("%ld%s%lf",&n,a,&s);
if(n==0) return;

p=(L *)malloc(sizeof(L));
p->student.num=n;
strcpy(p->student.name,a);
p->student.score=s;
p->next=NULL;
*r=p;

scanf("%ld%s%lf",&n,a,&s);

while(n)
{
t=p;
p=(L *)malloc(sizeof(L));
p->student.num=n;
strcpy(p->student.name,a);
p->student.score=s;
p->next=NULL;
t->next=p;
scanf("%ld%s%lf",&n,a,&s);
}
}

void search1(struct stucode *r)
{
long x;
if(!r)
{
printf("没有学生信息可查询!\n");
return ;
}
printf(" 请输入要查询的学生信息的学生学号:\n");
scanf("%ld",&x);
while(r&&r->student.num!=x)
r=r->next;
if(r==NULL)
printf("Error! No such student !\n");
else
printf("%ld %s %.2lf\n",r->student.num,r->student.name,r->student.score);
}

void search2(struct stucode *r)
{
char m[20];
if(!r)
{
printf("没有学生信息可查询!\n");
return ;
}

printf(" 请输入要查询的学生信息的学生姓名:\n");
scanf("%s",m);
while(r&&strcmp(r->student.name,m))
r=r->next;
if(r==NULL)
printf("Error! No such student !\n");
else
printf("%ld %s %.2lf\n",r->student.num,r->student.name,r->student.score);
}

void del(struct stucode **r)
{
long k;
struct stucode *p=*r,*t;
if(!(*r))
{
printf("没有学生信息可删除 !\n");
return ;
}
printf(" 请输入要删除的学生信息的学生学号:\n");
scanf("%ld",&k);

if(p->student.num==k)
*r=(*r)->next,free(p);
else
{
while(p->next&&p->next->student.num!=k)
p=p->next;
if(p->next==NULL)
printf("Error! No such student !\n");
else
{
t=p->next;
p->next=p->next->next;
free(t);
}
}
}

void insert(struct stucode **r)
{
long n;
char a[20];
double s;

L *p,*t,*k;
printf(" 请输入要插入的学生信息的学生学号 姓名 分数:\n");
scanf("%ld%s%lf",&n,a,&s);
p=(L *)malloc(sizeof(L));
p->student.num=n;
p->student.score=s;
strcpy(p->student.name,a);
if(!(*r))
{
*r=p;
(*r)->next=NULL;
return ;
}
if(p->student.num<(*r)->student.num)
p->next=(*r),(*r)=p;
else
{
t=*r;
k=t;
while(t->next&&t->next->student.num<=p->student.num)
t=t->next;
p->next=t->next;
t->next=p;
*r=k;
}
}

void sort(struct stucode **r)
{
struct stucode *t,*p,*q,*z;
if(!r)
{
printf("没有学生信息可排序!\n");
return ;
}

if(!(*r)||!(*r)->next)
return;

t=*r;
p=t->next;
t->next=NULL;
while(p)
{
q=p->next;
if(p->student.score>t->student.score)
{
p->next=t;
t=p;
}
else
{
z=t;
while(z->next&&z->next->student.score>=p->student.score)
z=z->next;
p->next=z->next;
z->next=p;
}
p=q;
}
*r=t;
}

void out(struct stucode *r)
{
printf("\n\n");
if(!r)
{
printf("没有学生信息可输出!\n");
return ;
}

while(r)
{
printf("%ld %s %.2lf\n",r->student.num,r->student.name,r->student.score);
r=r->next;
}
printf("\n\n");
}

void menu()
{
printf("\n 学生信息管理系统\n");
printf("\n 菜单\n\n");
printf("\n 1建立链表并显示\n");
printf("\n 2查找某学号的学生信息\n");
printf("\n 3查找某姓名的学生信息\n");
printf("\n 4删除某学号的学生信息\n");
printf("\n 5插入新的学生信息\n");
printf("\n 6按分数降序排列输出\n");
printf("\n 7输出\n");
printf("\n 0退出\n");

printf("\n 请选择您要执行的选项:\n");
}