c語言寫系統
❶ 用c寫一個簡單的系統功能菜單,怎麼寫
#include<stdio.h>
#include<stdlib.h>
#include<string.h>struct record
{
char xuehao[10];//學號
char name[20]; //姓名
char sex[3];//性別
int ke1;//數學
int ke2 ;//語文
int ke3;//英悶手嘩語
int pin;
}stu[50];
int k=1,n,m;void readfile();
void seek();
void insert();
void del();
void save();
void menu();
void seek()
{int i,j,item,flag;<br>char s1[20];<br>printf("------------------\n");<br>printf("1.按學號查詢\n");<br>printf("2.退出本菜單\n");<br>printf("------------------\n");<br>while(1)<br>{ printf("請選擇子菜單編號:");<br>scanf("%d",&item);<br>flag=0;<br>switch(item)<br>{<br>case 1:<br>printf("請輸入要查詢的學生的學號:\n");<br>scanf("%s",s1);<br>for(i=0;i<n;i++)<br>if(strcmp(stu[i].xuehao,s1)==0)<br>{ flag=1;<br>printf("該學生學號,姓名,性別,數學,語文,英語 分別為:\n");<br>printf(" %s %s %s %d %d %d",stu[i].xuehao,stu[i].name,<br>stu[i].sex,stu[i].ke1,stu[i].ke2,stu[i].ke3);<br>}
if(flag==0)
printf("該學號不存在!\n"); break;
case 2:return;
default:printf("請在1-2之間選擇\n");
}
}
}
void insert()
{ int i=n,j,flag;
printf("請輸入待增加的學生數:\n");
scanf("%d",&m);
do
{ flag=1;
while(flag)
{ flag=0;
printf("請輸入第 %d 個學生的學號:\n",i+1);
scanf("%s",stu[i].xuehao);
for(j=0;j<i;j++)
if(strcmp(stu[i].xuehao,stu[j].xuehao)==0)
{ printf("已有該學號,請檢查後重新錄入!\n");
flag=1;
break;
}
}
printf("請輸入第 %d 個學生的姓名:",i+1);
scanf("%s",stu[i].name);
printf("\n請輸入第 %d 個學生的性別:",i+1);
scanf("%s",stu[i].sex);
printf("\n請輸入第 %d 個學生的數學成績:",i+1);
scanf("%d",&stu[i].ke1);
printf("\n請輸入第 %d 個學生的語文成績:",i+1);
scanf("%d",&stu[i].ke2);
printf("\薯純n請輸入第 %d 個學生的英語成績:",i+1);
scanf("%d",&stu[i].ke3);if(flag==0)
{ i=i;
i++;
}
}while(i<n+m);
n+=m;
printf("錄入完畢!\n\n");
}void del()
{ int i,j,flag=0;
char s1[20];
printf("請輸入要螞行刪除學生的學號:\n");
scanf("%s",s1);
for(i=0;i<n;i++)
if(strcmp(stu[i].xuehao,s1)==0)
{ flag=1;
for(j=i;j<n-1;j++)
stu[j]=stu[j+1];
}
if(flag==0)
printf("該學號不存在!\n");
if(flag==1)
{ printf("刪除成功,顯示結果請選擇菜單6\n");
n--;
}
}
void readfile()
{
char buf[80],*p="student.dat";
FILE *fp;
int i=0;
if ((fp=fopen("student.dat","r"))==NULL)
{ printf("Open file %s error! Strike any key to exit!",p);
system("pause");
exit(0);
}
while(fscanf(fp,"%s%s%s%d%d%d",stu[i].xuehao,stu[i].name,
stu[i].sex,&stu[i].ke1,&stu[i].ke2,&stu[i].ke3)==6)
{ i++;
i=i;
}
fclose(fp);
n=i;
printf("錄入完畢!\n");
}void save()
{ int i,j,k,flag=0;
FILE *fp;
fp=fopen("student.dat","w");
for(i=0;i<m;i++)
{
fprintf(fp,"%s%s%d%d%d",stu[i].xuehao,stu[i].name,stu[i].sex,&stu[i].ke1,
&stu[i].ke2,&stu[i].ke3);
fclose(fp);
printf("已儲存");
}
}
void paixu()
{
int i,j,k,t;
for(i=0;i<m;i++)
{
stu[i].pin=(stu[i].ke1+stu[i].ke2+stu[i].ke3)/3;
}
for(i=0;i<=m-2;i++)
{
k=i;
for(j=i+1;j<=m-1;j++)
if(stu[j].pin<stu[k].pin)
k=j;
if(k!=i)
{
t=stu[k].pin;
stu[k].pin=stu[i].pin;
stu[i].pin=t;
}
}
for(i=0;i<m;i++)
{printf("第 %d 個學生的姓名%s:",i+1,stu[i].name);<br> printf("\n第 %d 個學生的性別:%s",i+1,stu[i].sex);<br> printf("\n第 %d 個學生的數學成績:%d",i+1,stu[i].ke1);<br> printf("\n第 %d 個學生的語文成績:%d",i+1,stu[i].ke2);<br> printf("\n第 %d 個學生的英語成績:%d",i+1,stu[i].ke3);<br> printf("\n第 %d 個學生的平均成績:%d",i+1,stu[i].pin);<br> }
}
void menu()
{ int nub;
printf(" \n\n學生成績管理系統\n\n");
printf("*****系統功能菜單*****\n");
printf("----------------------\n");
printf("1.輸入學生信息\n");
printf("2.查詢學生信息\n");
printf("3.按學號刪除信息\n");
printf("4.讀入學生信息\n");
printf("5.保存信息(要把修改保存到文件,退出程序前必須執行本項)\n");
printf("6.查詢學生平均成績信息\n");
printf("0.退出系統\n");
printf("----------------------\n");
printf("請選擇菜單編號:");
scanf("%d",&nub);
switch(nub)
{
case 1:insert();break;
case 2:seek();break;
case 3:del();break;
case 4:readfile();break;
case 5:save();break;
case 6:paixu();break;
case 0:k=0;break;
default:printf("請在0-6之間選擇\n");
}}
void main()
{
while(k)
menu();
}
//平均數是排序後,輸出的,如果你不想直接輸入,那就不要對每個學生進行選擇排序了
❷ 如何用c語言寫操作系統
1、打開VC6.0,在菜單欄中選擇「文件->新建」,或者Ctrl+N,彈出所示的對話框。
2、切換到「工程」選項卡,選擇「Win32ConsoleApplication」,填寫工程名稱和路徑,點擊「確定」,會彈出一個對話框詢問類型,這里選擇「一個空工程」,所示:
3、然後開始新建C文件,在菜單欄中選擇「文件->新建」,或者Ctrl+N,茄磨彈出下面的對話框。
4、在工作空間中可以看到剛才創建的工程和源文件,然後雙擊hello.c,進入編輯界面,輸顫穗斗入代碼。
5、程序運行之前,需要編譯,你可以在「組建」菜單中找到編譯、組建和運行的功能,所示:
6、更加簡單的方法族銀是使用快捷方式,所示:
7、保存編寫好的源代碼,點擊運行按鈕或Ctrl+F5,如果程序正確,可以看到運行結果,所示:
❸ 用C語言可以寫操作系統嗎
C語言當然是可以寫操作系統的,但是操作系統的編寫一般都不僅僅只是用C語言編寫的。
寫操作系統需要編程語言提供以下幾個特徵:
1、跨平台,不能是只在某個平台下編譯(VB就不行);
2、必須是編譯型語言(PHP就不行),或者有一個非常高效的解釋器;
3、必須有方便的操作硬體的功能,容易嵌入匯編(Java就不行);
4、兼容性要好,最好不同編譯器編譯的符號要基本相同,容易鏈接(C++不行,如果放棄Class的話C++基本可以);
5、編譯器本身最好是由該語言自己完成的(大部分語言的編譯器都是用C/C++寫的);
6、開發者可以很方便的擴展、改造、或者使用第三方的運行庫(大部分語言的庫都無法修改);
7、開發者眾多(小眾語言就不行);
8、該語言開發操作系統的資料要足夠完善。
所以總結下來,C語言是首選。
❹ 用C語言設計一個學生信息查詢系統程序
1、首先創建一個c語言項目。然後右鍵頭文件,創建一個Stu的頭文件。
❺ C語言如何自製操作系統
用obj做成二進制,格式是:obj -I elf格式 -S -R ".eh_frame" -R ".comment" -O binary elf文件 最終的二進制文件.例如: obj -I elf32-i386 -S -R ".eh_frame" -R ".comment" -O binary a.obj a.bin
❻ 怎樣用c語言編寫ATM系統
#include<stdio.h>
#include<string.h>
void print_welcome();
int main()
{
print_welcome();
char c[11]="1234567890",d[7]="123456";
char a[20],b[20];
char p,q;
int h=0,i=0,j=0,k,l=0;
do
{
printf("請輸入賬號:\n");
gets(a);
printf("請輸入密碼:\n");
gets(b);
if(strcmp(c,a)==0&&strcmp(d,b)==0)
{
printf("賬號正確 歡迎使用\n");
h++;
}
else
printf("賬號或密碼錯誤請重新輸入\n");
}while(h!=1);
do
{
print_welcome();
retrn:
printf("請選擇對應的字母\n");
printf(" a存款業務 \n");
printf(" b余額查詢\n");
printf(" c資金轉賬\n");
printf(" d取款業務\n");
printf(" e退卡\n");
printf("請選擇您要辦理的業務\n");
scanf("%c",&p);
getchar();
switch(p)
{
case'a':printf(" 存款業務\n");
printf("**本服務暫停 請重新選擇**\n");
break;
case'b':
printf(" 余額查詢\n");
printf("**您的余額為 ¥9999999\n請重新選擇**\n");
break;
case'c':
printf(" 資金轉賬\n");
printf("**您的銀行卡不支持該業務 請重新選擇**\n");
break;
case'd':
printf(" 取款業務\n");
do
{
printf("請選擇您要取款的金額\n**請輸入序號\n**請您注意每位用戶每天只能去20000 每次最多取2500\n");
printf(" r 100\n");
printf(" s 200\n");
printf(" t 500\n");
printf(" u 1000\n");
printf(" v 2000\n");
printf(" w 其他\n");
printf(" x 返回\n");
printf("請選擇要取的金額\n");
scanf("%c",&q);
getchar();
switch(q)
{
case'r':printf("**取款成功 金額為100元**");goto retrn;break;
case's':printf("**取款成功 金額為200元**");goto retrn;break;
case't':printf("**取款成功 金額為500元**");goto retrn;break;
case'u':printf("**取款成功 金額為1000元**");goto retrn;break;
case'v':printf("**取款成功 金額為2000元**");goto retrn;break;
case'w':printf("**請輸入你想取出的金額**\n**並保證是100的倍數\n");
while(l!=1)
{
scanf("%d",&k);
getchar();
if(k%100==0&&k>=0&&k<=2500)
{
printf("您取出的金額%d元\n",k);
l++;
goto retrn;
}
else
{
printf("您輸入的面額有誤請重新輸入\n");
printf("請您保證為100的倍數\n");
}
}
break;
case'x':goto retrn;break;
default:printf("**操作有誤請從新輸入**");
j++;
}
}while(j!=1);
break;
case'e':
printf("**歡迎您的使用 請勿忘取卡**\n");
i++;
break;
default:printf("**操作有誤請從新輸入**\n");
}
}while(i!=1);
print_welcome();
return 0;
}
void print_welcome()
{
printf(" **歡迎使用**\n");
}
❼ C語言,操作系統:怎麼開發一個小型操作系統_如何用c語言寫個小型系統
你這想法的規模也太宏大了吧?即便是小型的操作系統核心,那代碼和涉及的方伍攜腔面也是很多的,比如有一部分和硬體以及驅動程序有關,其難度和復雜度相當大。不是你學習了C和操作系統就能隱明乾的事。
所以,我覺得從現實性的角度來講,你首先應該盡量利用課本所學,主要研究一下進程和腔衫線程的創建、再模擬一下內存管理就行了,這些是核心的東西。再加一些用戶輸入處理和命令實現應該就差不多了。
❽ 怎樣用C語言寫學生成績管理系統
程序如下: #include
❾ 用純C語言能不能寫一個操作系統
C語言當然是可喊滑脊以寫操作系統的,但是操作系統的編寫一般都不僅僅只是用C語言編寫的。 寫操鄭滲作系統需要編程語言提供以下幾個特徵: 1、跨平台,不能是只在某個平台下編譯(VB就不行); 2、必須是編譯型語言(PHP就不行讓好),或者有一個非常高效的解
❿ 如何用C語言設計一個信息管理系統
信息管理信息系統,最基本的登錄,退出,增、刪、改、查等功能都是最基本的功能。
詳細的可以看下「如鵬網」的《C語言也能幹大事》之網站開發視頻教程,有詳細的關於管理系統的沖態寬開發,從最初的項目功能的分析,到代碼的閉盯實現以及調試,在到最後的完成,都有詳細的講解,視頻,資料,源碼等都散亮是可以免費下載的。
最後把系統完成的時候還是挺有成就感的,可以去看看。
還可以增加一些功能:
1、統計功能,生成各種報表;
2、驗證與預測功能,根據已知數據和條件,進行預測。
3、計劃功能,通過設定一定的約束條件,來提供相應的工作計劃。