① 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");
}