當前位置:首頁 » 課程大全 » 有源代碼的c課程設計

有源代碼的c課程設計

發布時間: 2021-03-14 03:04:17

『壹』 求C語言課程設計的源代碼

課程設計報告內容 報告應包括以下內容: 摘要(300~400字) 目錄 1. 概述 2. 課程設計任務及要求 2.1 設計任務 2.2 設計要求 3. 理論設計 3.1方案論證 3.2 系統設計 3.2.1 結構框圖及說明 3.2.2 系統原理圖及工作原理 3.3 單元電路設計 3.3.1單元電路工作原理

『貳』 高分求C語言課程設計源代碼(分不多了,全部給你們)

#include <string>
#include <iostream>
#include <time.h>
#include <vector>
using namespace std;
class Employee //定義雇員類
{
public:
Employee(); //構造函數
virtual VEmployee();
virtual void Display()=0;
int GetAge(); //獲取年齡
string GetName(); //獲取姓名
protected:
int Id; //職工ID號
string Name; //職工姓名
char Sex[5]; //性別
int Wage; //工資
string BirthDay; //出身年月
string WorkTime; //參加工作時間
int Age; //年齡
};
class Worker : public Employee //定義工人類
{
public:
Worker();
virtual VWorker();
void Display();

};
class Teacher : public Employee //定義教師類
{
public:
Teacher();
virtual VTeacher();
void Display();
string GetAcademy();
private:
string Academy;
};

Employee::Employee()
{

}

Employee::VEmployee()
{

}

int Employee::GetAge()
{
return Age;
}

string Employee::GetName()
{
return Name;
}
Teacher::Teacher() //添加教師信息
{
cout<<"請輸入該教師的信息:"<<endl;

cout<<"職工編號 : "<<endl;
cin>>Id;

cout<<"姓名 : "<<endl;
cin>>Name;

cout<<"性別 : "<<endl;
cin>>Sex;

cout<<"工資 : "<<endl;
cin>>Wage;

cout<<"出生時間 : (格式xxxx/xx/xx)"<<endl;
cin>>BirthDay;

cout<<"參加工作時間 : (格式xxxx/xx/xx)"<<endl;
cin>>WorkTime;

cout<<"所屬院系 : "<<endl;
cin>>Academy;

//從生日里提取出生的年份
int Pos = BirthDay.find_first_of('/');
string BirthYear;
BirthYear.assign(BirthDay,0,Pos);
char chBirthYear[6];
strcpy(chBirthYear,BirthDay.c_str());
//獲取當前系統的年份
char NowYear[5];
time_t tnow = time(0);
strftime(NowYear , 5 , "%Y" , localtime(&tnow));
Age = atoi(NowYear)-atoi(chBirthYear); //計算年齡

}

Teacher::VTeacher()
{

}

void Teacher::Display(){ //display()同名函數,輸出教師信息
cout<<"職工編號 : "<<Id<<endl;
cout<<"姓名 : "<<Name<<endl;
cout<<"性別 : "<<Sex<<endl;
cout<<"工資 : "<<Wage<<endl;
cout<<"出生時間 : "<<BirthDay<<endl;
cout<<"參加工作時間 : "<<WorkTime<<endl;
cout<<"年齡 : "<<Age<<endl;
}

string Teacher::GetAcademy(){
return Academy;
}
Worker::Worker() //添加工人信息
{
cout<<"請輸入該工人的信息:"<<endl;
cout<<"職工編號 : "<<endl;
cin>>Id;

cout<<"姓名 : "<<endl;
cin>>Name;

cout<<"性別 : "<<endl;
cin>>Sex;

cout<<"工資 : "<<endl;
cin>>Wage;

cout<<"出生時間 : (格式xxxx/xx/xx)"<<endl;

cin>>BirthDay;
cout<<"參加工作時間 : (格式xxxx/xx/xx)"<<endl;
cin>>WorkTime;

//從生日里提取出生的年份
int Pos = BirthDay.find_first_of('/');
string BirthYear;
BirthYear.assign(BirthDay,0,Pos);
char chBirthYear[6];
strcpy(chBirthYear,BirthDay.c_str());
//獲取當前系統的年份
char NowYear[5];
time_t tnow = time(0);
strftime(NowYear , 5 , "%Y" , localtime(&tnow));
Age = atoi(NowYear)-atoi(chBirthYear); //計算年齡
}

Worker::VWorker()
{

}

void Worker::Display(){//display()同名函數,輸出工人信息
cout<<"職工編號 : "<<Id<<endl;
cout<<"姓名 : "<<Name<<endl;
cout<<"性別 : "<<Sex<<endl;
cout<<"工資 : "<<Wage<<endl;
cout<<"出生時間 : "<<BirthDay<<endl;
cout<<"參加工作時間 : "<<WorkTime<<endl;
cout<<"年齡 : "<<Age<<endl;
}

void AddTeacher(vector <Teacher> *TeaInfo) //新增老師對象
{
system("color 05A"); //設置當前窗口的背景色和前景色
Teacher TeaTemp;
(*TeaInfo).push_back(TeaTemp);
}

void AddWoker(vector <Worker> *WorkerInfo) //新增工人對象
{
system("color 05A");
Worker Wokertmp;
(*WorkerInfo).push_back(Wokertmp);
}

void DisplayAll(vector <Teacher> *TeaInfo,vector <Worker> *WokerInfo){ //顯示全部職工記錄
system("color 05A");
cout<<"所有教師的信息:"<<endl;
vector <Teacher>::iterator pTeaInfo;
for (pTeaInfo=(*TeaInfo).begin();(*TeaInfo).empty()!=1&&pTeaInfo!=(*TeaInfo).end();pTeaInfo++) //如果到達vector末尾,則退出
{
(*pTeaInfo).Display();
cout<<endl;
}

cout<<"所有工人的信息:"<<endl;
vector <Worker>::iterator pWorkerInfo;
for (pWorkerInfo=(*WokerInfo).begin();(*WokerInfo).empty()!=1&&pWorkerInfo!=(*WokerInfo).end();pWorkerInfo++) //如果到達vector末尾,則退出
{
(*pWorkerInfo).Display();
cout<<endl;
}
cout<<"按Enter返回"<<endl;
getchar(); getchar();
}

void DisAvgTeacherAge(vector <Teacher> *TeaInfo){ //查詢老師平均年齡
system("color 05A");
int SumAge = 0;
vector <Teacher>::iterator pTeaInfo;
for (pTeaInfo=(*TeaInfo).begin();(*TeaInfo).empty()!=1&&pTeaInfo!=(*TeaInfo).end();pTeaInfo++)//遍歷老師容器
{ //如果到達vector末尾,則退出
SumAge+= (*pTeaInfo).GetAge();
cout<<endl;
}
if((*TeaInfo).size()!=0)
cout<<"教師的平均年齡為"<<SumAge/((*TeaInfo).size())<<endl;
else cout<<"沒有記錄"<<endl;
cout<<"按Enter返回"<<endl;
getchar(); getchar();
}

void DisAvgWorkerAge(vector <Worker> *WokerInfo){
system("color 05A");
int SumAge = 0;
vector <Worker>::iterator pWorkerInfo;
for (pWorkerInfo=(*WokerInfo).begin();(*WokerInfo).empty()!=1&&pWorkerInfo!=(*WokerInfo).end();pWorkerInfo++) //如果到達vector末尾,則退出
{
SumAge+= (*pWorkerInfo).GetAge();
cout<<endl;
}

if((*WokerInfo).size()!=0)
cout<<"職工的平均年齡為"<<SumAge/((*WokerInfo).size())<<endl;
else cout<<"沒有記錄"<<endl;
cout<<"按Enter鍵返回"<<endl;
getchar(); getchar();
}

void DelTeacher(vector <Teacher> *TeaInfo){ //用於刪除老師信息

system("color 05A");
bool Hflag=false;
string SearchName;
vector <Teacher>::iterator pTeaInfo;

cout<<"請輸入您要刪除的老師的姓名:"<<endl;
cout<<"姓名: ";
cin>>SearchName;
for(pTeaInfo=(*TeaInfo).begin();(*TeaInfo).empty() != 1&&pTeaInfo!=(*TeaInfo).end();pTeaInfo++) //如果到達vector末尾,則退出
{

if (0==SearchName.compare((*pTeaInfo).GetName())) //如果找到要刪除老師的姓名,則執行
{
Hflag=true; //找到老師
(*TeaInfo).erase(pTeaInfo); //刪除vector中指定的老師
continue;
}
}
if (false==Hflag) //如果沒有該老師,則執行
{
cout<<"沒有該老師!"<<endl;
}
cout<<"按Enter返回"<<endl;
getchar(); getchar();
}

void DelWorker(vector <Worker> *WokerInfo) //用於刪除工人信息
{
system("color 05A");
bool Hflag=false;
string SearchName;
vector <Worker>::iterator pWorkerInfo;

cout<<"請輸入您要刪除的工人的姓名:"<<endl;
cout<<"姓名: ";
cin>>SearchName;
for(pWorkerInfo=(*WokerInfo).begin();(*WokerInfo).empty() != 1&&pWorkerInfo!=(*WokerInfo).end();pWorkerInfo++) //如果到達vector末尾,則退出
{

if (0==SearchName.compare((*pWorkerInfo).GetName())) //如果找到要刪除工人的姓名,則執行
{
Hflag=true; //找到工人
(*WokerInfo).erase(pWorkerInfo); //刪除vector中指定的工人
continue;
}
}
if (false==Hflag) //如果沒有該工人,則執行
{
cout<<"沒有該老師!"<<endl;
}
cout<<"按Enter返回"<<endl;
getchar();getchar();

}

void SearchByName(vector <Teacher> *TeaInfo,vector <Worker> *WokerInfo){ //按名字查找職工信息
system("color 05A");
bool Hflag=false;
string SearchName;
vector <Teacher>::iterator pTeaInfo;

cout<<"請輸入您要查找的職工的姓名:"<<endl;
cout<<"姓名: ";
cin>>SearchName;
for(pTeaInfo=(*TeaInfo).begin();pTeaInfo!=(*TeaInfo).end();pTeaInfo++)
{

if (0==SearchName.compare((*pTeaInfo).GetName())) //如果找到輸入的職工,則執行
{
Hflag=true; //找到職工
cout<<"這個人是老師,他的信息為:"<<endl;
(*pTeaInfo).Display(); //顯示職工信息
continue;
}
}

vector <Worker>::iterator pWorkerInfo;
for(pWorkerInfo=(*WokerInfo).begin();pWorkerInfo!=(*WokerInfo).end();pWorkerInfo++)
{

if (0==SearchName.compare((*pWorkerInfo).GetName())) //如果找到輸入的職工,則執行
{
Hflag=true; //找到職工
cout<<"這個人是老師,個人信息為:"<<endl;
(*pWorkerInfo).Display(); //顯示職工信息
continue;
}
}
if (false==Hflag)
{
cout<<"沒有這個職工!"<<endl; //沒有找到信息
}

cout<<"按Enter返回"<<endl; //返回
getchar(); getchar();
}

void DisTeacherByAcademy(vector <Teacher> TeaInfo){ //按系輸出教師信息
system("color 05A");
bool Hflag=false;
string SearchName;
vector <Teacher>::iterator pTeaInfo;

while((TeaInfo).empty()!=1) { //輸出所有指定系的老師
pTeaInfo=(TeaInfo).begin();
string Academy = (*pTeaInfo).GetAcademy();
cout<<"系:"<<Academy<<","<<"該系的老師有:"<<endl;
for(pTeaInfo=(TeaInfo).begin();(TeaInfo).empty()!=1&&pTeaInfo!=(TeaInfo).end();){
if (0==Academy.compare((*pTeaInfo).GetAcademy()))
{
(*pTeaInfo).Display();
cout<<endl;
(TeaInfo).erase(pTeaInfo);
pTeaInfo=(TeaInfo).begin();
}
else pTeaInfo++;
}
cout<<endl;
}
cout<<"按Enter返回"<<endl;
getchar(); getchar();
}

void WriteFile(vector <Teacher> *TeaInfo,vector <Worker> *WokerInfo) //生成新文件
{

FILE *fp;
if (NULL==(fp=fopen("Employee.txt","w+")))
{
cout<<"打開文件錯誤"<<endl;
exit(-1);
}

vector <Worker>::iterator pWorkerInfo;
vector <Teacher>::iterator pTeaInfo;
for(pTeaInfo=(*TeaInfo).begin();pTeaInfo!=(*TeaInfo).end();pTeaInfo++) //寫入vector中所有老師的信息
{
fputs("教師信息:\n",fp);
fprintf(fp,"姓名:%s\n",(*pTeaInfo).GetName().c_str());
fprintf(fp,"年齡:%d\n",(*pTeaInfo).GetAge());
fputs("\n",fp);
}
fputs("教師信息結束\n",fp);
for(pWorkerInfo=(*WokerInfo).begin();pWorkerInfo!=(*WokerInfo).end();pWorkerInfo++) //寫入vector中所有老師的信息
{
fputs("職工信息:\n",fp);
fprintf(fp,"姓名:%s\n",(*pWorkerInfo).GetName().c_str());
fprintf(fp,"年齡:%d\n",(*pWorkerInfo).GetAge());
fputs("\n",fp);
}
fputs("職工信息結束\n",fp);
fclose(fp);
}

void Mainmenu(){//菜單界面
system("color 05A"); //設置當前窗口的背景色和前景色
cout<<" ╭――――――――――《教職工管理系統》―――――――――╮"<<endl;
cout<<" ∣ 請選擇功能 ∣"<<endl;
cout<<" ├――――――――――――――――――――――――――――┤"<<endl;
cout<<" ∣ 1.新建並輸入職工數據 ∣"<<endl;
cout<<" ∣ 2.按條件輸出職工數據 ∣"<<endl;
cout<<" ∣ 3.刪除職工數據 ∣"<<endl;
cout<<" ∣ 0.退出 ∣"<<endl;
cout<<" ╰――――――――――――――――――――――――――――╯"<<endl;
cout<<" ――――――――――――――――――――――――――――――"<<endl;
cout<<" 請選擇您要服務的類別: " ;

}

void Insert(vector <Teacher> *TeaInfo,vector <Worker> *WorkerInfo) //增加職工數據菜單界面
{
system("color 05A"); //設置當前窗口的背景色和前景色
int select = -1;
while(select!=0)
{
cout<<" ╭――――――――――《增加職工數據》――――――――――╮"<<endl;
cout<<" ∣ 請選擇操作: ∣"<<endl;
cout<<" ├――――――――――――――――――――――――――――┤"<<endl;
cout<<" ∣ 1增加一位教師記錄 ∣"<<endl;
cout<<" ∣ 2增加一位工人記錄 ∣"<<endl;
cout<<" ∣ 0返回主菜單 ∣"<<endl;
cout<<" ╰――――――――――――――――――――――――――――╯"<<endl;
cin>>select;
switch(select){
case 1:AddTeacher(TeaInfo);break;
case 2:AddWoker(WorkerInfo);break;
case 3:Mainmenu();break;
default:
cout<<"回到主菜單!"<<endl;
}

}
}
void Search(vector <Teacher> *TeaInfo,vector <Worker> *WorkerInfo) //查詢職工數據菜單界面
{
system("color 05A"); //設置當前窗口的背景色和前景色
int select = -1;
while(select!=0)
{
cout<<" ╭――――――――――《查詢職工數據》――――――――――╮"<<endl;
cout<<" ∣ 請選擇操作: ∣"<<endl;
cout<<" ├――――――――――――――――――――――――――――┤"<<endl;
cout<<" ∣ 1顯示全部職工記錄 ∣"<<endl;
cout<<" ∣ 2按系輸出教師信息 ∣"<<endl;
cout<<" ∣ 3按姓名檢索所有信息 ∣"<<endl;
cout<<" ∣ 4計算教師平均年齡 ∣"<<endl;
cout<<" ∣ 5計算工人平均年齡 ∣"<<endl;
cout<<" ∣ 0返回主菜單 ∣"<<endl;
cout<<" ╰――――――――――――――――――――――――――――╯"<<endl;
cin>>select;
switch(select){
case 1:DisplayAll(TeaInfo,WorkerInfo);break;
case 2:DisTeacherByAcademy(*TeaInfo);break;
case 3:SearchByName(TeaInfo,WorkerInfo);break;
case 4:DisAvgTeacherAge(TeaInfo);break;
case 5:DisAvgWorkerAge(WorkerInfo);break;
case 6:Mainmenu();break;
default:
cout<<"回到主菜單!"<<endl;
}
}
}
void Delete(vector <Teacher> *TeaInfo,vector <Worker> *WorkerInfo) //刪除職工數據
{
system("color 05A"); //設置當前窗口的背景色和前景色
int select = -1;
while(select!=0)
{
cout<<" ╭――――――――――《刪除職工數據》――――――――――╮"<<endl;
cout<<" ∣ 請選擇操作: ∣"<<endl;
cout<<" ├――――――――――――――――――――――――――――┤"<<endl;
cout<<" ∣ 1刪除一位教師記錄 ∣"<<endl;
cout<<" ∣ 2刪除一位工人記錄 ∣"<<endl;
cout<<" ∣ 0返回主菜單 ∣"<<endl;
cout<<" ╰――――――――――――――――――――――――――――╯"<<endl;
cin>>select;
switch(select){
case 1:DelTeacher(TeaInfo);break;
case 2:DelWorker(WorkerInfo);break;
case 3:Mainmenu();break;
default:
cout<<"回到主菜單!"<<endl;
}
}
}

void MainCho(vector <Teacher> *TeaInfo,vector <Worker> *WorkerInfo)
{ //主菜單操作
int choice = -1;
while(choice!=0){
Mainmenu();
cin>>choice;
switch(choice){
case 1:Insert(TeaInfo,WorkerInfo);break;
case 2:Search(TeaInfo,WorkerInfo);break;
case 3:Delete(TeaInfo,WorkerInfo);break;
case 0:break;
default:
cout<<"操作錯誤!"<<endl;
}
}
}
void main() //主函數
{
vector <Teacher> TeaInfo; //
vector <Worker> WorkerInfo; //
vector <Teacher>::iterator pTeacher; //
vector <Worker>::iterator pWoker; //
pTeacher = TeaInfo.begin(); //
pWoker = WorkerInfo.begin(); //
MainCho(&TeaInfo,&WorkerInfo); //調用主要處理程序
WriteFile(&TeaInfo,&WorkerInfo); //存入文件操作

}

『叄』 請高手給個C語言課程設計的源代碼,謝謝了`

什麼是課程設計??
簡單的加減法?內?容?
#include <stdio.h>
int main(){
int a,b;
scanf("%d%d",&a,&b);
printf("%d",a+b);
return 0;
}

『肆』 有沒有300行左右的C語言課程設計的源代碼

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

#defineS_MAX50

intuser_count=0;//用戶信息的總數
intbook_count=0;
charini_path[100]={""};//數據文件的絕對路徑
charuser_path[100]={""};//用戶數據文件的絕對路徑
charbook_path[100]={""};
intbook_pos=0;//book數組的計數
intuser_pos=0;

structuser_data
{
charname[10];
charbook_name[50];
}user[S_MAX];

structbook_data
{
charno[10];
charname[50];
charauthor[30];
charmoney[10];
charin_or_out[10];
charuser_name[10];
}book[S_MAX];

voidread_file()//從文件讀取數據
{
user_pos=0;
inti;
for(i=0;i<S_MAX;i++)
{
memset(user[i].name,'',10);
memset(user[i].book_name,'',50);

memset(book[i].no,'',10);
memset(book[i].name,'',50);
memset(book[i].author,'',30);
memset(book[i].money,'',10);
memset(book[i].in_or_out,'',10);
memset(book[i].user_name,'',10);
}
user_count=GetPrivateProfileInt("USER","user_count",0,user_path);
book_count=GetPrivateProfileInt("book","book_count",0,book_path);

for(i=0;i<user_count;i++)
{
chart[5]={""};
sprintf(t,"%d",i+1);
GetPrivateProfileString(t,"name","",user[i].name,10,user_path);
GetPrivateProfileString(t,"book_name","",user[i].book_name,50,user_path);
user_pos++;
}
for(i=0;i<book_count;i++)
{
chart[5]={""};
sprintf(t,"%d",i+1);
GetPrivateProfileString(t,"no","",book[i].no,10,book_path);
GetPrivateProfileString(t,"name","",book[i].name,50,book_path);
GetPrivateProfileString(t,"author","",book[i].author,30,book_path);
GetPrivateProfileString(t,"money","",book[i].money,10,book_path);
GetPrivateProfileString(t,"in_or_out","",book[i].in_or_out,10,book_path);
GetPrivateProfileString(t,"user_name","",book[i].user_name,10,book_path);
book_pos++;
}
}

voidwrite_file()
{
inti;
for(i=0;i<user_count;i++)
{
chart[5]={""};
sprintf(t,"%d",i+1);
WritePrivateProfileString(t,"name",NULL,user_path);
WritePrivateProfileString(t,"book_name",NULL,user_path);

WritePrivateProfileString(t,"no",NULL,book_path);
WritePrivateProfileString(t,"name",NULL,book_path);
WritePrivateProfileString(t,"author",NULL,book_path);
WritePrivateProfileString(t,"money",NULL,book_path);
WritePrivateProfileString(t,"in_or_out",NULL,book_path);
WritePrivateProfileString(t,"user_name",NULL,book_path);
}
chartemp[5]={""};
inttemp_count=0;
for(i=0;i<user_pos;i++)
{
if(strcmp(user[i].name,"")==0)
{
continue;
}
chart[5]={""};
sprintf(t,"%d",i+1);
WritePrivateProfileString(t,"name",user[i].name,user_path);
WritePrivateProfileString(t,"book_name",user[i].book_name,user_path);
temp_count++;
}
sprintf(temp,"%d",temp_count);
WritePrivateProfileString("USER","user_count",temp,user_path);

temp_count=0;
for(i=0;i<book_pos;i++)
{
if(strcmp(book[i].no,"")==0)
{
continue;
}
chart[5]={""};
sprintf(t,"%d",i+1);
WritePrivateProfileString(t,"no",book[i].no,book_path);
WritePrivateProfileString(t,"name",book[i].name,book_path);
WritePrivateProfileString(t,"author",book[i].author,book_path);
WritePrivateProfileString(t,"money",book[i].money,book_path);
WritePrivateProfileString(t,"in_or_out",book[i].in_or_out,book_path);
WritePrivateProfileString(t,"user_name",book[i].user_name,book_path);
temp_count++;
}
sprintf(temp,"%d",temp_count);
WritePrivateProfileString("BOOK","book_count",temp,book_path);
}

voidsearch_user_name()//按借書人姓名查詢
{
system("cls");
charsearch_key[10]={""};
printf("請輸入要查詢圖書借書人:");
scanf("%s",search_key);
inti;
ints[10]={-1,-1,-1,-1,-1,-1,-1,-1,-1,-1};
ints_i=0;
intfind=0;
for(i=0;i<book_pos;i++)
{
if(strcmp(book[i].user_name,search_key)==0)
{
find=1;
s[s_i]=i;
s_i++;
printf(" 編號:%s",book[i].no);
printf(" 名稱:%s",book[i].name);
printf(" 作者:%s",book[i].author);
printf(" 金額:%s",book[i].money);
printf(" 狀態:%s",book[i].in_or_out);
printf(" 借書人:%s ",book[i].user_name);
}
}
if(find==0)
{
printf(" 未找到符合條件的信息!");
}
else
{
for(i=0;i<s_i;i++)
{
printf(" 第%d本書:%s",i+1,book[i].name);
}
printf(" 共%d本",i);
}
fflush(stdin);
getchar();
}

voidsearch_book_author()//按圖書作者查詢
{
system("cls");
charsearch_key[50]={""};
printf("請輸入要查詢圖書的作者:");
scanf("%s",search_key);
inti;
intfind=0;
for(i=0;i<book_pos;i++)
{
if(strcmp(book[i].author,search_key)==0)
{
find=1;
printf(" 編號:%s",book[i].no);
printf(" 名稱:%s",book[i].name);
printf(" 作者:%s",book[i].author);
printf(" 金額:%s",book[i].money);
printf(" 狀態:%s",book[i].in_or_out);
printf(" 借書人:%s ",book[i].user_name);
break;
}
}
if(find==0)
{
printf(" 未找到符合條件的信息!");
}
fflush(stdin);
getchar();
}

voidsearch_book_name()//按圖書名稱查詢
{
system("cls");
charsearch_key[50]={""};
printf("請輸入要查詢圖書的名稱:");
scanf("%s",search_key);
inti;
intfind=0;
for(i=0;i<book_pos;i++)
{
if(strcmp(book[i].name,search_key)==0)
{
find=1;
printf(" 編號:%s",book[i].no);
printf(" 名稱:%s",book[i].name);
printf(" 作者:%s",book[i].author);
printf(" 金額:%s",book[i].money);
printf(" 狀態:%s",book[i].in_or_out);
printf(" 借書人:%s ",book[i].user_name);
break;
}
}
if(find==0)
{
printf(" 未找到符合條件的信息!");
}
fflush(stdin);
getchar();
}

voidsearch_book_no()//按圖書編號查詢
{
system("cls");
charsearch_key[10]={""};
printf("請輸入要查詢圖書的編號:");
scanf("%s",search_key);
inti;
intfind=0;
for(i=0;i<book_pos;i++)
{
if(strcmp(book[i].no,search_key)==0)
{
find=1;
printf(" 編號:%s",book[i].no);
printf(" 名稱:%s",book[i].name);
printf(" 作者:%s",book[i].author);
printf(" 金額:%s",book[i].money);
printf(" 狀態:%s",book[i].in_or_out);
printf(" 借書人:%s ",book[i].user_name);
break;
}
}
if(find==0)
{
printf(" 未找到符合條件的信息!");
}
fflush(stdin);
getchar();
}
voidsearch_all_book()//查詢所有圖書
{
system("cls");
if(book_pos==0)
{
printf("真TM窮,一本書都沒有");
}
else
{
inti;
printf("共有%d本書 ",book_pos);
for(i=0;i<book_pos;i++)
{
printf(" 編號:%s名稱:%s作者:%s金額:%s狀態:%s",book[i].no,book[i].name,book[i].author,book[i].money,book[i].in_or_out);
if(strcmp(book[i].in_or_out,"out")==0)
{
printf("借書人:%s",book[i].user_name);
}
}
}
fflush(stdin);
getchar();
}

voidsearch_all_user()//查詢所有用戶
{
system("cls");
if(user_pos==0)
{
printf("要倒閉了?一個人都沒有!");
}
else
{
inti;
printf("共有%d個用戶 ",user_pos);
for(i=0;i<user_pos;i++)
{
printf(" 用戶名稱:%s借書名稱:",user[i].name);
if(strcmp(user[i].book_name,"")!=0)
{
printf("%s",user[i].book_name);
}
else
{
printf("未借書");
}
}
}
fflush(stdin);
getchar();
}

voidNo7()//查詢
{
intf=1;
intsel;
while(f)
{
system("cls");
printf("********************************* ");
printf("** ");
printf("*圖書管理系統--查詢* ");
printf("** ");
printf("*1.按圖書編號查詢* ");
printf("** ");
printf("*2.按圖書名稱查詢* ");
printf("** ");
printf("*3.按作者查詢* ");
printf("** ");
printf("*4.按借書人姓名查詢* ");
printf("** ");
printf("*5.查詢所有圖書* ");
printf("** ");
printf("*6.查詢所有用戶* ");
printf("** ");
printf("*0.返回主菜單* ");
printf("** ");
printf("********************************* ");
printf("請選擇:(1,2,3,4,5,6,0)");
fflush(stdin);
scanf("%d",&sel);
getchar();
switch(sel)
{
case1:
search_book_no();

break;
case2:
search_book_name();

break;
case3:
search_book_author();

break;
case4:
search_user_name();

break;
case5:
search_all_book();
break;
case6:
search_all_user();
break;
case0:

f=0;
break;
default:
break;
}
}
}

voidNo6()//用戶信息刪除
{
system("cls");
chardel_key[10]={""};
printf("請輸入要刪除的用戶名稱:");
scanf("%s",del_key);
inti,del_pos;
intfind=0;
for(i=0;i<user_pos;i++)
{
if(strcmp(user[i].name,del_key)==0)
{
find=1;
printf(" 姓名:%s",user[i].name);
if(strlen(user[i].book_name)>0)
{
printf(" 所借書籍:%s",user[i].book_name);
}
del_pos=i;
break;
}
}
if(find==0)
{
printf(" 未找到符合條件的信息!");
fflush(stdin);
getchar();
return;
}

while(1)
{
fflush(stdin);
printf(" 確認要刪除該記錄嗎?(y/n):");
chart;
scanf("%c",&t);
if(t=='y'||t=='Y')
{
if(strlen(user[del_pos].book_name)>0)
{
printf(" 該用戶尚有書籍未歸還,不能刪除!");
fflush(stdin);
getchar();
return;
}
strcpy(user[del_pos].name,"");
strcpy(user[del_pos].book_name,"");
write_file();
printf(" 刪除成功!");
read_file();
fflush(stdin);
getchar();
break;
}
elseif(t=='N'||t=='n')
{
printf(" 你選擇了不刪除,按任意鍵返回!");
fflush(stdin);
getchar();
break;
}
else
{
continue;
}
}
}

voidNo5()//圖書刪除
{
system("cls");
chardel_key[10]={""};
printf("請輸入要刪除的圖書的名稱或編號:");
scanf("%s",del_key);
inti,del_pos;
intfind=0;
for(i=0;i<book_pos;i++)
{
if(strcmp(book[i].name,del_key)==0||strcmp(book[i].no,del_key)==0)
{
find=1;
printf(" 編號:%s",book[i].no);
printf(" 名稱:%s",book[i].name);
printf(" 作者:%s",book[i].author);
printf(" 金額:%s",book[i].money);
printf(" 狀態:%s ",book[i].in_or_out);
del_pos=i;
break;
}
}
if(find==0)
{
printf(" 未找到符合條件的信息!");
fflush(stdin);
getchar();
return;
}

while(1)
{
fflush(stdin);
printf(" 確認要刪除該記錄嗎?(y/n):");
chart;
scanf("%c",&t);
if(t=='y'||t=='Y')
{
if(strcmp("out",book[del_pos].in_or_out)==0)
{
printf(" 圖書已經借出,不能刪除!");
fflush(stdin);
getchar();
return;
}
strcpy(book[del_pos].no,"");
strcpy(book[del_pos].name,"");
strcpy(book[del_pos].money,"");
strcpy(book[del_pos].author,"");
strcpy(book[del_pos].in_or_out,"in");
strcpy(book[del_pos].user_name,"");
write_file();
printf(" 刪除成功!");
read_file();
fflush(stdin);
getchar();
break;
}
elseif(t=='N'||t=='n')
{
printf(" 你選擇了不刪除,按任意鍵返回!");
fflush(stdin);
getchar();
break;
}
else
{
continue;
}
}
}

voidNo4()//用戶信息錄入
{
system("cls");
charname[10]={""};
printf("請輸入新增用戶信息: ");
printf("名稱:");
scanf("%s",name);
strcpy(user[user_pos].name,name);
user_pos++;
write_file();//寫入信息文件

printf(" 信息錄入成功!");
fflush(stdin);
getchar();
}

voidNo3()//圖書信息錄入
{
system("cls");
charno[10]={""};
charname[50]={""};
charauthor[30]={""};
charmoney[10]={""};
charin_or_out[10]={""};
charuser_name={""};
printf("請輸入新增圖書信息: ");
printf("編號:");
scanf("%s",no);
printf("名稱:");
scanf("%s",name);
printf("作者:");
scanf("%s",author);
printf("價格:");
scanf("%s",money);

strcpy(book[book_pos].no,no);
strcpy(book[book_pos].name,name);
strcpy(book[book_pos].author,author);
strcpy(book[book_pos].money,money);
book_pos++;
write_file();//寫入信息文件

printf(" 信息錄入成功!");
fflush(stdin);
getchar();
}

voidNo2()//圖書還回
{
system("cls");
printf(" 請輸入還回圖書的編號或名稱:");
chartemp[50]={""};
scanf("%s",temp);
inti;
intbook_i=-1;
intfind=0;
for(i=0;i<book_pos;i++)
{
if(strcmp(temp,book[i].no)==0||strcmp(temp,book[i].name)==0)
{
find=1;
book_i=i;
printf(" 編號:%s",book[i].no);
printf(" 名稱:%s",book[i].name);
printf(" 作者:%s",book[i].author);
printf(" 金額:%s",book[i].money);
printf(" 狀態:%s",book[i].in_or_out);

printf(" 按任意鍵進行還回操作");
fflush(stdin);
getchar();
intj;
strcpy(book[i].in_or_out,"in");
for(j=0;j<user_pos;j++)
{
if(strcmp(book[i].user_name,user[j].name)==0)
{
strcpy(user[j].book_name,"");
write_file();//寫入信息文件
break;
}
}
strcpy(book[i].user_name,"");
if(j>=user_pos)
{
printf(" 數據出錯");
}
else
{
printf(" 圖書還回成功");
fflush(stdin);
getchar();
return;
}
}
}
if(find==0)
{
printf(" 未找到符合條件的信息!");
fflush(stdin);
getchar();
return;
}
}

voidNo1()//圖書借出
{
system("cls");
printf(" 請輸入出借圖書的編號或名稱:");
chartemp[50]={""};
scanf("%s",temp);
inti;
intbook_i=-1;
intfind=0;
for(i=0;i<book_pos;i++)
{
if(strcmp(temp,book[i].no)==0||strcmp(temp,book[i].name)==0)
{
find=1;
book_i=i;
printf(" 編號:%s",book[i].no);
printf(" 名稱:%s",book[i].name);
printf(" 作者:%s",book[i].author);
printf(" 金額:%s",book[i].money);
printf(" 狀態:%s",book[i].in_or_out);
if(strcmp(book[i].in_or_out,"out")==0)
{
printf(" 該圖書已經借出! ");
fflush(stdin);
getchar();
return;
}
printf(" 請輸入借書人姓名:");
charname[10]={""};
scanf("%s",name);
intj,user_i=-1;
for(j=0;j<user_pos;j++)
{
if(strcmp(name,user[j].name)==0)
{
user_i=j;
break;
}
}
if(j>=user_pos)
{
printf(" 找不到該借書人信息,已自動添加");
strcpy(user[user_pos].name,name);
strcpy(user[user_pos].book_name,"");
user_i=user_pos;
user_pos++;
fflush(stdin);
getchar();
}
strcpy(user[user_i].book_name,book[book_i].name);
strcpy(book[book_i].user_name,name);
strcpy(book[book_i].in_or_out,"out");
printf(" 圖書借出成功");
write_file();//寫入信息文件
fflush(stdin);
getchar();
return;
}
}
if(find==0)
{
printf(" 找不到該圖書信息 ");
fflush(stdin);
getchar();
return;
}
}

intflag_exit=0;

voida88()
{
system("cls");
while(1)
{
fflush(stdin);
printf(" 真的要退出嗎?(y/n):");
chart;
scanf("%c",&t);
if(t=='y'||t=='Y')
{
flag_exit=1;
break;
}
elseif(t=='N'||t=='n')
{
flag_exit=0;
return;
}
else
{
continue;
}
}
system("cls");
printf("ooooooooooooooooooooooooooooo ");
printf("ooooooooooooooooooooooooooooo ");
printf("oooooo ");
printf("oooooooooooooooooo ");
printf("oooooooooooooooooo ");
printf("oooooooooooo ");
printf("oooooooooooooooooo ");
printf("oooooooooooo ");
printf("oooooooooooo ");
printf("oooooooooooooooooooo ");
printf("ooooooooooooooooooooo ");
printf("ooooooooooo ");
printf("oooooooooooooooooooo ");
printf("ooooooooooooo ");
fflush(stdin);
getchar();
}

voidtitle()
{
intf=1;
intsel;
while(f)
{
system("cls");
printf("******************************* ");
printf("** ");
printf("*圖書管理系統* ");
printf("** ");
printf("*1.圖書借出* ");
printf("** ");
printf("*2.圖書還回* ");
printf("** ");
printf("*3.圖書錄入* ");
printf("** ");
printf("*4.用戶錄入* ");
printf("** ");
printf("*5.圖書刪除* ");
printf("** ");
printf("*6.用戶刪除* ");
printf("** ");
printf("*7.查詢* ");
printf("** ");
printf("*0.退出* ");
printf("** ");
printf("******************************* ");
printf("請選擇:(1,2,3,4,5,6,7,0)");
fflush(stdin);
scanf("%d",&sel);
getchar();
switch(sel)
{
case1:
No1();

break;
case2:
No2();

break;
case3:
No3();

break;
case4:
No4();

break;
case5:
No5();

break;
case6:
No6();

break;
case7:
No7();

break;
case0:
a88();
if(flag_exit==1)
system("exit");
else
{
break;
}
f=0;
break;
default:
break;
}
}
}

intmain(intargc,char*argv[]){
_getcwd(ini_path,100);//取得當前程序的絕對路徑
strcpy(user_path,ini_path);
strcat(user_path,"\user.ini");
strcpy(book_path,ini_path);
strcat(book_path,"\book.ini");
if(!access(user_path,0))
{

}
else
{
printf(" 用戶數據文件不存在,按任意鍵將創建文件");
getchar();
FILE*fp;
fp=fopen(user_path,"wb");
intre=fputs("[USER] user_count=0",fp);
if(re>=0)
{
printf(" 用戶數據文件創建成功!");
}
else
{
printf(" 用戶數據文件創建失敗!");
}
getchar();
fclose(fp);
}
if(!access(book_path,0))
{

}
else
{
printf(" 圖書數據文件不存在,按任意鍵將創建文件");
getchar();
FILE*fp;
fp=fopen(book_path,"wb");
intre=fputs("[BOOK] book_count=0",fp);
if(re>=0)
{
printf(" 圖書數據文件創建成功!");
}
else
{
printf(" 圖書數據文件創建失敗!");
}
getchar();
fclose(fp);
}
read_file();
title();
return0;
}

『伍』 c語言課程設計,設計一個任意的程序!有說明,要求源程序150行左右!很急!!!

#include <data.h>
#include <windows.h>
#include <stdio.h>
#include <malloc.h>
#include <winbase.h>
#include <process.h>

void Search()
{
char temp[100];
char buffer[2];
char result[100];
printf("請輸入要查詢的單詞:\n");
scanf("%s",&temp);
buffer[0]=temp[0];
buffer[1]='\0';
int ret=GetPrivateProfileString(buffer,temp,0,result,100,"e:\\data.ini");
if(ret>0)
printf("%s\n\n\n\n\n",result);
else
printf("%s\nsorry,沒有您要查找的單詞!",temp);
/*printf("sorry,沒有您要查找的單詞!.\n\n\n\n\n");*/
}

void InsertItem()
{
char temp[100];
char buffer[2];
char result[100];

printf("請輸入要插入的單詞:\n");
scanf("%s",&temp);
printf("請輸入單詞的解釋:\n");
getchar();
scanf("%s",&result);
buffer[0]=temp[0];
buffer[1]='\0';
int ret=WritePrivateProfileString(buffer,temp,result,"e:\\data.ini");
if(ret=0)
printf("哈哈~~~插入失敗!。\n\n\n\n\n");
else
printf("嘿嘿~~~~插入成功!。\n\n\n\n\n");
}

int main(int argc, char* argv[])
{
int index;
main:
printf("******************\n\n");
printf(" 1 英譯漢\n");
printf(" 2 插入新的詞彙\n");
printf(" 3 清空屏幕\n");
printf(" 4 退出\n\n");
printf("**********************************\n");
do{
printf("請選擇操作(1~4):\n");
scanf("%d",&index);
}while(index<0||index>5);
switch(index)
{
case 1:
Search();
goto main;
break;
case 2:
InsertItem();
goto main;
break;
case 3:
system("cls");
goto main;
break;
case 4:
return 0;
break;
default:
break;
}
return 0;
}

『陸』 急需要C語言程序源代碼 做課程設計,謝謝啦! ! !。。。。。。

c語言的把一個文件分成相等的兩個文件。
#include<stdio.h>

int main()
{
int len=0;
int len2=0;
FILE* stream;
FILE* stream1;
FILE* stream2;
char buf[50];
char buf1[50];
char buf2[50];
char text[1024];

printf("input anfile path to open:");

scanf("%s",buf);
stream=fopen(buf,"r+");

fseek(stream,0,SEEK_END);
len=ftell(stream);
printf("the file %s length is %d!\n",buf,len);
len2 = len/2;

printf("intput 2 file name: \n");
scanf("%s%s",buf1,buf2);
fseek(stream,0,SEEK_SET);
stream1=fopen(buf1,"w+");
stream2=fopen(buf2,"w+");
fread(text,len2,1,stream);
fwrite(text,len2,1,stream1);
fread(text,len-len2,1,stream);
fwrite(text,len-len2,1,stream2);

fclose(stream);
fclose(stream1);
fclose(stream2);

return 0;
}
文件合並
#include<stdio.h>

int main()
{
int len=0;
int len2=0;
FILE* stream;
FILE* stream1;

char buf[50];
char buf1[50];

char text[1024];

printf("input anfile path to open:");

scanf("%s",buf);
stream=fopen(buf,"r+");

fseek(stream,0,SEEK_END);

printf("intput another file name: \n");
scanf("%s",buf1);

stream1=fopen(buf1,"r+");
fseek(stream1,0,SEEK_END);
len=ftell(stream1);
fseek(stream1,0,SEEK_SET);
fread(text,len,1,stream1);
fwrite(text,len,1,stream);

fclose(stream);
fclose(stream1);
remove(buf1);//remove the another file

return 0;
}
需要在程序目錄下有文件存在

『柒』 求C語言課程設計的源代碼和流程圖

YT

『捌』 急需編一份C語言程序源代碼做課程設計。。。。。。謝謝啦!!! 要求如下:

我暈,看看這么長題目都懶得看了,還懸賞0分,汗

『玖』 求C語言課程設計源代碼 急~!!

#include "stdio.h"
#define MAX 100 /*定義輸入數據的最大長度*/

void countmax(int a[MAX],int N){ /*計算最值的函數*/
int minn=a[0],maxx=a[0]; /*minn表最小值,maxx表最大值*/
for(int i=0;i<=N;i++){ /*N是實際輸入數組的長度*/
if(a[i]<minn) /*循環求最值*/
minn=a[i];
else
if(a[i]>maxx)
maxx=a[i];
}
printf("\n最小值:%d\n最大值:%d\n",minn,maxx);
printf("\n————————————————————————\n");
}

void found(int a[MAX],int N){ /*查找函數*/
int Flag = 1,x; /*Flag用來標記是否查找成功,0表成功,1表未成功*/
printf("請輸入你要查找的數: ");
scanf("%d",&x); /*x是待查找的數*/
for(int i=0;i<=N;i++){
if(a[i]==x){
printf("所找的數在數組中的位置是第 %d 位\n",i+1);
Flag = 0;
break;
}
}
if(Flag == 1)
printf("Not Found!\n");
printf("————————————————————————\n");
}

void deletedata(int a[MAX],int N){ /*刪除操作函數*/
int Flag = 1,x,pos; /*Flag用來標記是否刪除成功,0表成功,1表未成功,pos用來記錄刪除的位置*/
printf("請輸入你要刪除的數: ");
scanf("%d",&x);
for(int i = 0;i <= N;i++){ /*在數組中循環查找所要刪除的數*/
if(a[i]==x){
for(int j=i;j<=N;j++) /*刪除位置後的數全部向前移動一位*/
a[j]=a[j+1];
Flag = 0;
N--; /*數組長度減1*/
pos = i; /*記錄刪除位置*/
break;
}
}
if(Flag==1)
printf("Not Found!");
else{
printf("刪除成功!\n");
printf("所刪除的數在數組中的位置是第 %d 位\n",pos+1);
}
printf("刪除操作後的數據為:\n");
for(int j=0;j<=N;j++)
printf("%d ",a[j]);
printf("\n————————————————————————\n");
}

void sumdata(int a[MAX],int N){ /*求奇數和偶數函數*/
int SUM1=0,SUM2=0,N1=0,N2=0;
/*SUM1表示偶數之和,N1表偶數個數
**SUM2表示奇數之和,N2表奇數個數
*/
for(int i=0;i<=N;i++){
if(a[i]%2==0){
N1++;
SUM1 = SUM1 + a[i];
}
else{
N2++;
SUM2 = SUM2 + a[i];
}

}
printf("數據中的偶數個數為: %d 個,平均值為: %d\n",N1,SUM1/N1);
printf("數據中的奇數個數為: %d 個,平均值為: %d\n",N2,SUM2/N2);
printf("————————————————————————\n");
}

int main(){

int i=0,k,N,a[MAX],data;
/*k用來標記所選擇的操作,data表示輸入的數據,a數組用來存儲輸入的數據*/
printf("請輸入數據:\n");
scanf("%d",&data);
while(data!=0){
a[i]=data;
scanf("%d",&data);
N=i++;
}
printf("\n您輸入了%d個數據,如下所示:\n",N+1);
for(i=0;i<=N;i++)
printf("%d ",a[i]);

printf("\n————————————————————————");
printf("\n\n請選擇下面的一個項目:\n");
printf("1、求最值\n2、查找\n3、刪除\n4、統計及平均\n5、退出\n");
printf("————————————————————————\n");
scanf("%d",&k);
switch(k){
case 1:
countmax(a,N);
break;
case 2:
found(a,N);
break;
case 3:
deletedata(a,N);
break;
case 4:
sumdata(a,N);
break;
case 5:
break;
default:
break;
}
return 0;
}

『拾』 急求一份C語言軟體課程設計報告,關於用C實現BMP圖像顯示的。最好附有源代碼~

q

熱點內容
武漢大學學生會輔導員寄語 發布:2021-03-16 21:44:16 瀏覽:612
七年級學生作文輔導學案 發布:2021-03-16 21:42:09 瀏覽:1
不屑弟高考成績 發布:2021-03-16 21:40:59 瀏覽:754
大學畢業證會有成績單 發布:2021-03-16 21:40:07 瀏覽:756
2017信陽學院輔導員招聘名單 發布:2021-03-16 21:40:02 瀏覽:800
查詢重慶2018中考成績查詢 發布:2021-03-16 21:39:58 瀏覽:21
結業考試成績怎麼查詢 發布:2021-03-16 21:28:40 瀏覽:679
14中醫醫師資格筆試考試成績查分 發布:2021-03-16 21:28:39 瀏覽:655
名著賞析課程標准 發布:2021-03-16 21:27:57 瀏覽:881
北京大學商業領袖高端培訓課程 發布:2021-03-16 21:27:41 瀏覽:919