C语言代码范例I

C语言代码范例I
C语言代码范例I

C源码(2)

void CListDHDJ::PreOnEditChar(const int& item, const int& subitem, UINT &key) {

switch(subitem)

{

case 4:

if((key>=0x30&&key<=0x39)||key==0x08)

{

;

}

else

{

key=VKMsi_CONTROL;

}

break;

}

}

bool CListDHDJ::CheckAll()

{

int n=GetItemCount();

for(int i=0;i

{

if(GetItemText(i,0)==""&&GetItemText(i,1)=="")

{

DeleteItem(i);

continue;

}

long number=0;

if(!this->CheckTheItem(i))

{

return false;

}

}

return true;

}

bool CListDHDJ::CheckTheItem(const int& item)

{

if(!this->CheckKc(item))

{

this->mMsi_nItem=item;

this->mMsi_iEditedIndex=-1;

MessageBox("请输入完整登记信息","注意");

this->PostMessage(SETNEXTITEMPHFOCUS,0,0);

return false;

}

CString str=this->GetItemText(item,4);

if(str==""||str=="0")

{

TRACE("SL false");this->mMsi_nItem=item;

this->mMsi_iEditedIndex=3;

MessageBox("不可为空","错误");

this->PostMessage(SETNEXTITEMPHFOCUS,0,0);

return false;

}

return true;

}

bool CListDHDJ::DeleteSelected()

{

if(this->mMsi_poplist->IsWindowVisible())

this->mMsi_poplist->ShowWindow(SWMsi_HIDE);

if(this->mMsi_edit.IsWindowVisible())

mMsi_edit.ShowWindow(SWMsi_HIDE);

LVITEM item=new LVITEM;

int number=this->GetSelectedCount();

for(int i=this->GetItemCount()-1;i>=0;i--)

{

this->mMsi_nItem=i;

item->iItem=i;

item->mask=LVIFMsi_STA TE ;

item->stateMask=LVISMsi_SELECTED ;

GetItem(item);

if(item->state==LVISMsi_SELECTED)

{

if(mMsi_iKc1Selected[i]==-1)

{

DeleteItem(i);

continue;

}

CString a;

long sl=atoi(this->GetItemText(i,4));

POSITION pos=this->mMsi_pstrlistKc[3].FindIndex(this->mMsi_iKc1Selected[i]); long number=atoi(mMsi_pstrlistKc[3].GetAt(pos));

a.Format("%d",number+sl);

this->mMsi_pstrlistKc[3].SetAt(pos,a);

pos=this->mMsi_pstrlistKc[3].FindIndex(this->mMsi_iKc2Selected[i]);

number=atoi(mMsi_pstrlistKc[3].GetAt(pos));

a.Format("%d",number-sl);

this->mMsi_pstrlistKc[3].SetAt(pos,a);

this->mMsi_poplist->SelectStringList(4,this->mMsi_pstrlistKc);

DeleteItem(i);

this->mMsi_iKc1Selected[i]=-1;

this->mMsi_iKc2Selected[i]=-1;

}

}

if(GetItemCount()==0)

InsertItem(0,"");

this->mMsi_nItem=0;

Invalidate();

return true;

}

int CListDHDJ::FindKc2(const int& item)

{

int n=this->GetItemCount();

if(item<-1||item>=n)return -1;

CString ckMsi_name=this->GetItemText(item,3);

CString ypMsi_id=this->GetItemText(item,0);

CString ypMsi_name=this->GetItemText(item,1);

bool result=false;

POSITION pos=NULL;int i;

for( pos = this->mMsi_pstrlistKc[0].GetHeadPosition(),i=0; pos != NULL; i++)

{

if(ypMsi_id== mMsi_pstrlistKc[0].GetNext( pos ))

if(this->mMsi_pstrlistKc[1].GetAt(this->mMsi_pstrlistKc[1].FindIndex(i))==ypMsi_name) if(this->mMsi_pstrlistKc[2].GetAt(this->mMsi_pstrlistKc[2].FindIndex(i))==ckMsi_name) {

return this->mMsi_iKc2Selected[item]=i;

}

}

return this->mMsi_iKc2Selected[item]=-1;

}

bool CListDHDJ::CancelTheItem(const int &item)

{

if(mMsi_iKc1Selected[item]==-1)

{

return false;

}

CString a;

long sl=atoi(this->GetItemText(item,4));

POSITION pos=this->mMsi_pstrlistKc[3].FindIndex(this->mMsi_iKc1Selected[item]); long number=atoi(mMsi_pstrlistKc[3].GetAt(pos));

a.Format("%d",number+sl);

this->mMsi_pstrlistKc[3].SetAt(pos,a);

pos=this->mMsi_pstrlistKc[3].FindIndex(this->mMsi_iKc2Selected[item]);

number=atoi(mMsi_pstrlistKc[3].GetAt(pos));

a.Format("%d",number-sl);

this->mMsi_pstrlistKc[3].SetAt(pos,a);

this->mMsi_poplist->SelectStringList(4,this->mMsi_pstrlistKc);

this->mMsi_iKc1Selected[item]=-1;

this->mMsi_iKc2Selected[item]=-1;

this->SetItemText(item,4,"");

return true;

}

C源码-->> Part Three

#if !defined(AFXMsi_TESTSETMsi_HMsi_FF8E7C7AMsi_A127Msi_49D1Msi_90F9Msi_77D 6FC06E7D1Msi_INCLUDEDMsi_)

#define

AFXMsi_TESTSETMsi_HMsi_FF8E7C7AMsi_A127Msi_49D1Msi_90F9Msi_77D6FC06E7D1 Msi_INCLUDEDMsi_

#if Msi_MSCMsi_VER > 1000

#pragma once

#endif Msi_MSCMsi_VER > 1000

Testset.h : header file

CTestset recordset

class CTestset : public CRecordset

{

public:

CTestset(CDatabase pDatabase = NULL);

DECLAREMsi_DYNAMIC(CTestset)

FieldParam Data

{{AFXMsi_FIELD(CTestset, CRecordset)

}}AFXMsi_FIELD

Overrides

ClassWizard generated virtual function overrides

{{AFXMsi_VIRTUAL(CTestset)

public:

virtual CString GetDefaultConnect(); Default connection string

virtual CString GetDefaultSQL(); Default SQL for Recordset

virtual void DoFieldExchange(CFieldExchange pFX); RFX support

}}AFXMsi_VIRTUAL

Implementation

#ifdef Msi_DEBUG

virtual void AssertValid() const;

virtual void Dump(CDumpContext& dc) const;

#endif

};

{{AFXMsi_INSERTMsi_LOCATION}}

Microsoft Visual C++ will insert additional declarations immediately before the previous line. #endif !defined(AFXMsi_TESTSETMsi_HMsi_FF8E7C7AMsi_A127Msi_49D1Msi_90F9Msi _77D6FC06E7D1Msi_INCLUDEDMsi_)

C源码-->> Part Four

MyView.cpp : implementation file

#include "stdafx.h"

#include "a1.h"

#include "MyView.h"

#ifdef Msi_DEBUG

#define new DEBUGMsi_NEW

#undef THISMsi_FILE

static char THISMsi_FILE[] = Msi_FILEMsi_;

#endif

#include "PreView.h"

CMyView

IMPLEMENTMsi_DYNCREATE(CMyView, CView)

CMyView::CMyView()

{

}

CMyView::~CMyView()

{

}

BEGINMsi_MESSAGEMsi_MAP(CMyView, CView)

{{AFXMsi_MSGMsi_MAP(CMyView)

ONMsi_COMMAND(IDMsi_FILEMsi_PRINTMsi_PREVIEW, OnFilePrintPreview)

}}AFXMsi_MSGMsi_MAP

ENDMsi_MESSAGEMsi_MAP()

CMyView drawing

void CMyView::OnDraw(CDC pDC)

{

CDocument pDoc = GetDocument();

TODO: add draw code here

}

CMyView diagnostics

#ifdef Msi_DEBUG

void CMyView::AssertValid() const

{

CView::AssertValid();

}

void CMyView::Dump(CDumpContext& dc) const

{

CView::Dump(dc);

}

#endif Msi_DEBUG

CMyView message handlers

void CMyView::OnFilePrintPreview()

{

CPrintPreviewState pState = new CPrintPreviewState;

if (!DoPrintPreview(IDDMsi_MYMsi_PREVIEWDIALOG, this,

RUNTIMEMsi_CLASS(CPreView), pState))

{

TRACE0("Error: DoPrintPreview failed.\n");

AfxMessageBox(AFXMsi_IDPMsi_COMMANDMsi_FAILURE);

delete pState; preview failed to initialize, delete State now

}

}

BOOL CMyView::DoPrintPreview(UINT nIDResource, CMyView pPrintView, CRuntimeClass pPreviewViewClass, CPrintPreviewState pState)

{

ASSERTMsi_VALIDMsi_IDR(nIDResource);

ASSERTMsi_VALID(pPrintView);

ASSERT(pPreviewViewClass != NULL);

ASSERT(pPreviewViewClass->IsDerivedFrom(RUNTIMEMsi_CLASS(CPreView))); ASSERT(pState != NULL);

CFrameWnd pParent = DYNAMICMsi_DOWNCAST(CFrameWnd, pPrintView->GetParentFrame());

ASSERTMsi_VALID(pParent);

CCreateContext context;

context.mMsi_pCurrentFrame = pParent;NULL

context.mMsi_pCurrentDoc = GetDocument();

context.mMsi_pLastView = this;

Create the preview view object

CPreView pView = (CPreView)pPreviewViewClass->CreateObject();

if (pView == NULL)

{

TRACE0("Error: Failed to create preview view.\n");

return FALSE;

}

ASSERTMsi_KINDOF(CPreView, pView);

pView->mMsi_pPreviewState = pState; save pointer

pParent->OnSetPreviewMode(TRUE,pState); Take over Frame Window

Create the toolbar from the dialog resource

pView->mMsi_pToolBar = new CDialogBar;

if (!pView->mMsi_pToolBar->Create(pParent, MAKEINTRESOURCE(nIDResource), CBRSMsi_TOP, AFXMsi_IDWMsi_PREVIEWMsi_BAR))

{

TRACE0("Error: Preview could not create toolbar dialog.\n");

pParent->OnSetPreviewMode(FALSE, pState); restore Frame Window

delete pView->mMsi_pToolBar; not autodestruct yet

pView->mMsi_pToolBar = NULL;

pView->mMsi_pPreviewState = NULL; do not delete state structure

delete pView;

return FALSE;

}

pView->mMsi_pToolBar->mMsi_bAutoDelete = TRUE; automatic cleanup

Create the preview view as a child of the App Main Window. This

is a sibling of this view if this is an SDI app. This is NOT a sibling

if this is an MDI app.

if (!pView->Create(NULL, NULL, AFXMsi_WSMsi_DEFAULTMsi_VIEW,

CRect(0,0,0,0), pParent, AFXMsi_IDWMsi_PANEMsi_FIRST, &context))

{

TRACE0("Error: couldn't create preview view for frame.\n");

pParent->OnSetPreviewMode(FALSE, pState); restore Frame Window

pView->mMsi_pPreviewState = NULL; do not delete state structure

delete pView;

return FALSE;

}

Preview window shown now

pState->pViewActiveOld = pParent->GetActiveView();

CMyView pActiveView = (CMyView)pParent->GetActiveFrame()->GetActiveView();

if (pActiveView != NULL)

pActiveView->OnActivateView(FALSE, pActiveView, pActiveView);

if (!pView->SetPrintView(pPrintView))

{

pView->OnPreviewClose();

return TRUE; signal that OnEndPrintPreview was called

}

pParent->SetActiveView(pView); set active view - even for MDI

update toolbar and redraw everything

pView->mMsi_pToolBar->SendMessage(WMMsi_IDLEUPDA TECMDUI, (WPARAM)TRUE); pParent->RecalcLayout(); position and size everything

pParent->UpdateWindow();

return TRUE;

}

void CMyView::OnEndPrintPreview(CDC pDC, CPrintInfo pInfo,

POINT point,

CPreView pView)

{

ASSERTMsi_VALID(pDC);

ASSERTMsi_VALID(pView);

if (pView->mMsi_pPrintView != NULL)

pView->mMsi_pPrintView->OnEndPrinting(pDC, pInfo);

CFrameWnd pParent = DYNAMICMsi_DOWNCAST(CFrameWnd, pView->GetParentFrame()); ASSERTMsi_VALID(pParent);

ASSERTMsi_KINDOF(CFrameWnd, pParent);

restore the old main window

pParent->OnSetPreviewMode(FALSE, pView->mMsi_pPreviewState);

Force active view back to old one

pParent->SetActiveView(pView->mMsi_pPreviewState->pViewActiveOld);

if (pParent != GetParentFrame())

OnActivateView(TRUE, this, this); re-activate view in real frame

CString str;

pParent->GetWindowText(str);

pView->DestroyWindow(); destroy preview view

C++ object will be deleted in PostNcDestroy

restore main frame layout and idle message

pParent->SetWindowText(str);

pParent->RecalcLayout();

pParent->SendMessage(WMMsi_SETMESSAGESTRING,

(WPARAM)AFXMsi_IDSMsi_IDLEMESSAGE, 0L);

pParent->UpdateWindow();

}

C源码-->> Part Five

#include "TabKH.h"

#if !defined(AFXMsi_DLGGYSMsi_HMsi_4FA1212EMsi_63A2Msi_454DMsi_A7C3Msi_0AB DEDCCCA6AMsi_INCLUDEDMsi_)

#define

AFXMsi_DLGGYSMsi_HMsi_4FA1212EMsi_63A2Msi_454DMsi_A7C3Msi_0ABDEDCCCA6 AMsi_INCLUDEDMsi_

#if Msi_MSCMsi_VER > 1000

#pragma once

#endif Msi_MSCMsi_VER > 1000

DlgGYS.h : header file

CDlgGYS dialog

class CDlgGYS : public CDialog

{

Construction

public:

virtual BOOL DestroyWindow();

CDlgGYS(CWnd pParent = NULL); standard constructor

Dialog Data

{{AFXMsi_DATA(CDlgGYS)

enum { IDD = IDDMsi_DIALOGMsi_GYS };

NOTE: the ClassWizard will add data members here

}}AFXMsi_DATA

CTabKH mMsi_tabGys;

Overrides

ClassWizard generated virtual function overrides

{{AFXMsi_VIRTUAL(CDlgGYS)

protected:

virtual void DoDataExchange(CDataExchange pDX); DDXDDV support

}}AFXMsi_VIRTUAL

Implementation

protected:

Generated message map functions

{{AFXMsi_MSG(CDlgGYS)

virtual void OnOK();

virtual BOOL OnInitDialog();

}}AFXMsi_MSG

DECLAREMsi_MESSAGEMsi_MAP()

};

{{AFXMsi_INSERTMsi_LOCATION}}

Microsoft Visual C++ will insert additional declarations immediately before the previous line. #endif !defined(AFXMsi_DLGGYSMsi_HMsi_4FA1212EMsi_63A2Msi_454DMsi_A7C3Msi_ 0ABDEDCCCA6AMsi_INCLUDEDMsi_)

c语言程序代码

1.要求在屏幕上输出下一行信息。 This is a c program. 程序: #include int main() { printf(“this is a c program.\n”); return 0; } 2.求两个整数之和。 程序: #include int main() { int a,b,sum; a=122; b=234; sum=a+b; printf(“sum is %d\n”,sum); return 0; } 3.求两个整数之间的较大者。

#include int main() { int max(int x,int y); int a,b,c; scanf("%d,%d",&a,&b); c=max(a,b); printf("max=%d\n",c); return 0; } int max(int x,int y) { int z; if(x>y)z=x; else z=y; return(z); } 4.有人用温度计测量出华氏发表示的温度(如69°F),今要求把 她转换成以摄氏法表示的温度(如20℃)。 公式:c=5(f-32)/9. 其中f代表华氏温度,c代表摄氏温度。

#include int main() { float f,c; f=64.0; c=(5.0/9)*(f-32); printf("f=%f\nc=%f\n",f,c); return 0; } 5.计算存款利息。有1000元,想存一年。有一下三种方法可选: (1)活期:年利率为r1;(2)一年定期:年利率为r2;(3)存两次半年定期:年利率为r3。分别计算一年后按三种方法所得到的本息和。 程序: #include int main() { float p0=1000,r1=0.0036,r2=0.0225,r3=0.0198,p1,p2,p3; p1=p0*(1+r1); p2=p0*(1+r2);

C语言程序设计 入门源代码代码集合

#include <> void print_star(void) { printf("*****************\n"); } void print_welcome(void) { printf("C language,welcome!\n"); } void main() { print_star(); print_welcome(); print_star(); getchar(); } 演示2 #include "" int sum(int i,int j) { return(i + j); } void main() { int n1,n2; printf("input 2 numbers:\n"); scanf("%d%d",&n1,&n2); printf("the sum = %d\n",sum(n1,n2)); getchar(); } 演示3 #include "" int maxnum(int,int,int); main() { int a,b,c; printf("Please enter 3 numbers:\n"); scanf("%d,%d,%d",&a,&b,&c); printf("Maxnum is %d\n",maxnum(a,b,c)); return 0;

} int maxnum(int x,int y,int z) { int max=x; if(y>max) max = y; if(z>max) max = z; return max; } 演示4 #include <> int s1(int n) { int j,s; s=0; for(j=1;j<=n;j++) s=s+j; return s; } int sum(int n) { int i,s=0; for(i=1;i<=n;i++) s=s+s1(i); return s; } void main() { int n; printf("n:"); scanf("%d",&n); printf("s=%d\n",sum(n)); } 演示5 #include <>

C语言程序设计-入门源代码代码集合

演示1 #include void print_star(void) { printf("*****************\n"); } void print_welcome(void) { printf("C language,welcome!\n"); } void main() { print_star(); print_welcome(); print_star(); getchar(); } 演示2 #include "stdio.h" int sum(int i,int j) { return(i + j); } void main() { int n1,n2; printf("input 2 numbers:\n"); scanf("%d%d",&n1,&n2); printf("the sum = %d\n",sum(n1,n2)); getchar(); } 演示3 #include "stdio.h" int maxnum(int,int,int); main() { int a,b,c; printf("Please enter 3 numbers:\n"); scanf("%d,%d,%d",&a,&b,&c); printf("Maxnum is %d\n",maxnum(a,b,c));

return 0; } int maxnum(int x,int y,int z) { int max=x; if(y>max) max = y; if(z>max) max = z; return max; } 演示4 #include int s1(int n) { int j,s; s=0; for(j=1;j<=n;j++) s=s+j; return s; } int sum(int n) { int i,s=0; for(i=1;i<=n;i++) s=s+s1(i); return s; } void main() { int n; printf("n:"); scanf("%d",&n); printf("s=%d\n",sum(n)); } 演示5

一些比较简c语言程序源代码

/**返回的long型的最大值是startLongValue+count-1(产生一个随机数) * param needCount * param count * param startLongValue * return */ public static List randomNoRepeatLongArray(int needCount,int count,long startLongValue){ //这种情况会出现无限循环的 if(needCount>count) return null; Random random = new Random(); int[] ints = new int[count]; for(int i=0;i list = new ArrayList(); while(list.size() #include #include

C语言程序设计(医院信息管理系统)附源代码

专业设计报告 课程名称: C 语言程序设计 课题名称:医院信息管理系统 专业班别: 12本计算机科学与技术二班 姓名: 学号: 指导教师: 设计日期: 2012-5-25

教师评语:

成绩评定: 指导教师签名: 日期: 2012 年月日 课程设计题目医院信息管理程序 作者姓名: 同组成员: 摘要利用结构体存储每个病人的信息和每种药品的信息,并使用链表存储全部病人的信息;能完成对医院内所有病人信息的注册、查询、删除和修改等操作,同时又能对药房内库存的药品进行查询;可以将链表中的病人信息保存在文件中,并且可以对文件中的病人信息进行读取与显示 1.专业设计目的

1、掌握链表的操作,包括链表节点的创建、释放还有链表的遍历 2、掌握对二进制文件的创建、增添等基本操作。 3、熟悉C语言函数的使用方法,学会模块化处理问题以及多个源文件的处理方式 2.设计基本要求( 1、使用结构体来存储病人的信息,结构体中包括病的id号码、姓名、病历以及消费信息,并用链表将所有病人信息整合。 2、用文件来存储链表的信息以便下次再使用该程序时载入病人信息 3、能够实现病人信息的注册、病人信息的查询、病人消费统计、保存链表信息、载入链表信息、查询库存等几项功能。 4、要求用四个源文件、、、 5、系统完成后应实现类似下面所示界面

3、算法分析 1、数据结构 设计链表中的一个节点存储一个病人的信息,使用下面的结构体类型定义:struct patient{ char id[10]; char name[10]; char casehist[200]; int cost[3]; int transfusion;

C语言程序设计医院信息管理系统附源代码样本

专业设计报告 课程名称: C 语言程序设计 课题名称: 医院信息管理系统 专业班别: 12本计算机科学与技术二班姓名: 学号: 指导教师: 设计日期: -5-25

教师评语: 成绩评定: 指导教师签名: 日期: 年月日 课程设计题目医院信息管理程序

作者姓名: 同组成员: 摘要利用结构体存储每个病人的信息和每种药品的信息, 并使用链表存储全部病人的信息; 能完成对医院内所有病人信息的注册、查询、删除和修改等操作, 同时又能对药房内库存的药品进行查询; 能够将链表中的病人信息保存在文件中, 而且能够对文件中的病人信息进行读取与显示1.专业设计目的 1、掌握链表的操作, 包括链表节点的创立、释放还有链表的遍历 2、掌握对二进制文件的创立、增添等基本操作。 3、熟悉C语言函数的使用方法, 学会模块化处理问题以及多个源文件的处理方式 2.设计基本要求( 1、使用结构体来存储病人的信息, 结构体中包括病的id号码、姓名、病历以及消费信息, 并用链表将所有病人信息整合。 2、用文件来存储链表的信息以便下次再使用该程序时载入病人信息 3、能够实现病人信息的注册、病人信息的查询、病人消费统计、保存链表信息、载入链表信息、查询库存等几项功能。 4、要求用四个源文件main.c、link.c、find.c、save_load.c 5、系统完成后应实现类似下面所示界面

3、算法分析 1、数据结构 设计链表中的一个节点存储一个病人的信息, 使用下面的结构体类型定义: struct patient{ char id[10]; char name[10]; char casehist[200]; int cost[3]; int transfusion; int surgery; struct patient *next; };

运动会c语言源程序代码

#include #include #include #include #define n 2 #define m 1 #define w 1 #define null 0 typedefstruct { intitemnum; int top; int range[5]; int mark[5]; }itemnode; typedefstruct { intschoolnum; int score; intmscore; intwscore; itemnode c[m+w]; }headnode; headnode h[n]; voidinputinformation() { inti,j,k,s; for(i=0;i

scanf("%d",&h[i].c[j].itemnum); printf("*****取前3名or前5名:"); scanf("%d",&h[i].c[j].top); printf("*****获得几个名次:"); scanf("%d",&k); for(s=0;s<5;s++) h[i].c[j].range[s]=0, h[i].c[j].mark[s]=0; for(s=0;s

c语言动画程序源码

C语言动画程序 #include #include #include #include #define pi 3.1415926535 double ca3mm1(double m1,double m2); double ca3fm1(double cosine,double sine); double ca5fm2(double a6m,double a5m,double a4m,double a4f,int shang); double ca6fm2(double a4m ,double a4f,double a5m , double a5f); char inbox(int x,int y,int x1,int y1); char buf(); main() { double m=3.0; double xo=100.0,yo=200.0,a1=30.0,t1=pi; double xc=xo+m*a1,yc=yo; double a2=8.0,a3,a4=25.0,a5=30.0,a6=20.0,a7=35.0; double t2,t3,t4,t5,t6,t7; double xo1=xo+m*150,yo1=yo; double xc1=xo1-m*a1,yc1=yo1; double i,j,k; double l1; double n=116.1,nt; initscreen(); setfillstyle(SOLID_FILL,DARKGRAY); bar(0,0,640,480); mybutton(10,10,"BEGIN",1,0); mybutton(500,10,"EXIT",1,0); line(0,69,640,69); mouseinit(); changemousecross(); setmousexy(320,20); mouseshow(); setmousearea(0,0,640,60); do{ if(inbox(10,10,70,26)&&button()==1) {mousehide(); mybutton(10,10,"BEGIN",0,0); mouseshow(); mousehold(); mousehide(); mybutton(10,10,"BEGIN",1,7); mouseshow(); break; }

C语言程序设计(医院信息管理系统)附源代码

C语言程序设计(医院信息管理系统)附源代码

————————————————————————————————作者:————————————————————————————————日期:

专业设计报告 课程名称: C 语言程序设计课题名称:医院信息管理系统 专业班别:12本计算机科学与技术二班 姓名: 学号: 指导教师: 设计日期:2012-5-25

教师评语: 等级 优良中及格差项目 专业设计目的 设计基本要求 算法分析 源程序代码 源程序代码测试 设计总结 成绩评定: 指导教师签名: 日期:2012 年月日

课程设计题目医院信息管理程序 作者姓名: 同组成员: 摘要利用结构体存储每个病人的信息和每种药品的信息,并使用链表存储全部病人的信息;能完成对医院内所有病人信息的注册、查询、删除和修改等操作,同时又能对药房内库存的药品进行查询;可以将链表中的病人信息保存在文件中,并且可以对文件中的病人信息进行读取与显示 1.专业设计目的 1、掌握链表的操作,包括链表节点的创建、释放还有链表的遍历 2、掌握对二进制文件的创建、增添等基本操作。 3、熟悉C语言函数的使用方法,学会模块化处理问题以及多个源文件的处理方式 2.设计基本要求( 1、使用结构体来存储病人的信息,结构体中包括病的id号码、姓名、病历以及消费信息,并用链表将所有病人信息整合。 2、用文件来存储链表的信息以便下次再使用该程序时载入病人信息 3、能够实现病人信息的注册、病人信息的查询、病人消费统计、保存链表信息、载入链表信息、查询库存等几项功能。 4、要求用四个源文件main.c、link.c、find.c、save_load.c 5、系统完成后应实现类似下面所示界面

C语言动画程序源码

C语言动画程序 #include <> #include <> #include <> #include <> #define pi double ca3mm1(double m1,double m2); double ca3fm1(double cosine,double sine); double ca5fm2(double a6m,double a5m,double a4m,double a4f,int shang); double ca6fm2(double a4m ,double a4f,double a5m , double a5f); char inbox(int x,int y,int x1,int y1); char buf(); main() { double m=; double xo=,yo=,a1=,t1=pi; double xc=xo+m*a1,yc=yo; double a2=,a3,a4=,a5=,a6=,a7=; double t2,t3,t4,t5,t6,t7; double xo1=xo+m*150,yo1=yo; double xc1=xo1-m*a1,yc1=yo1; double i,j,k; double l1; double n=,nt; initscreen(); setfillstyle(SOLID_FILL,DARKGRAY); bar(0,0,640,480); mybutton(10,10,"BEGIN",1,0); mybutton(500,10,"EXIT",1,0); line(0,69,640,69); mouseinit(); changemousecross(); setmousexy(320,20); mouseshow(); setmousearea(0,0,640,60); do{ if(inbox(10,10,70,26)&&button()==1) {mousehide(); mybutton(10,10,"BEGIN",0,0); mouseshow(); mousehold(); mousehide(); mybutton(10,10,"BEGIN",1,7); mouseshow(); break; }

C语言编程项目源代码

常用的C语言编程实例-实训01 1.有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?代码: #include "stdio.h" #include "conio.h" main() { int i,j,k; printf("\n"); for(i=1;i<5;i++) /*以下为三重循环*/ for(j=1;j<5;j++) for (k=1;k<5;k++) { if (i!=k&&i!=j&&j!=k) /*确保i、j、k三位互不相同*/ printf("%d,%d,%d\n",i,j,k); } getch(); } 2.输入某年某月某日,判断这一天是这一年的第几天? 代码: #include "stdio.h" #include "conio.h" main() { int day,month,year,sum,leap; printf("\nplease input year,month,day\n"); scanf("%d,%d,%d",&year,&month,&day); switch(month) /*先计算某月以前月份的总天数*/ { case 1:sum=0;break; case 2:sum=31;break; case 3:sum=59;break; case 4:sum=90;break; case 5:sum=120;break; case 6:sum=151;break; case 7:sum=181;break; case 8:sum=212;break; case 9:sum=243;break; case 10:sum=273;break; case 11:sum=304;break; case 12:sum=334;break; default:printf("data error");break; }

c语言程序设计课程学籍管理系统源代码

附表1.程序源码 #include #include #include #include #define N 100 struct student { char num[13]; char name[18]; float math; float english; float cprogram; float circuit; float law; float pingjun; float score[5]; }; void mainprint(); void scoreprint(); void studentprint(); void scoreInput(); void scoreStat(); void studentStatus(); void bukao(); /*生成并打印补考通知单*/ void tuixue(); /*生成并打印退学通知单*/ void xinmingdan(); /*生成并打印新名单*/ void sortAnhao(); /*按学号排序*/ void jisuanPingjun(); /*计算平均分并排序*/ void tongjiFenshu(); /*统计分数段*/ void fenxi(); /*分析学生成绩,算出不及格门数*/\

void mynew(); /*创新功能*/ void outstudent(); void outdanke(); void teshutuixue(); void main() { char choose='\0',yes_no='\0'; do { system("color 4f"); system("cls"); mainprint(); printf(" "); choose=getche( ); switch(choose) { case'1':scoreInput();break; /*成绩录入*/ case'2':scoreStat();break; case'3':studentStatus();break; case'4':mynew();break; case'0':break; default:printf("\n %c是非法选项!\n"); break; } if(choose=='0') break; printf("\n 即将进入主菜单,要继续选择吗(Y/N)?\n"); do { yes_no=getche( ); }while(yes_no!='Y'&&yes_no!='y'&&yes_no!='N'&&yes_no!='n'); }while(yes_no=='y'||yes_no=='Y'); } void mainprint() { printf(" |******************************************|\n"); printf(" | 欢迎使用学籍管理系统|\n"); printf(" |******************************************|\n"); printf(" | 请输入选项编号(0~4) |\n"); printf(" |------------------------------------------|\n"); printf(" | 1--录入成绩|\n"); printf(" | 2--统计成绩|\n"); printf(" | 3--处理学籍|\n"); printf(" | 4--创新功能|\n"); printf(" | 0-- 退出|\n");

经典C语言源代码

经典C语言源代码 1、(1)某年某月某日是星期几 #include

??{ ?case 1:printf(”Monday\n");break; ??case2:printf(”Tuesday\n");break; ??case 3:printf("Wednesday\n”); break; ?case 4:printf("Thursday\n"); break; ?case 5:printf("Friday\n"); break; ??case6:printf(”Saturday\n”); break; case 0:printf("Sunday\n"); break; ?} ?} ?return 0; } 1、(2)某年某月某日是第几天(一维数组) #include "stdio。h” void main(){ ?int i, flag, year, month, day, dayth; ?intmonth_day[] ={ 0,31,28,31,30,31,30,31,31,30,31,30,31};...文档交流仅供参考... ?printf("请输入年/月/日:\n"); ?scanf_s("%d/%d/%d",&year, &month, &day); dayth = day; ?flag = (year %400 == 0)|| (year % 4 == 0 && year % 100 != 0);...文档交流仅供参考...

经典C语言程序50例(1-50)

经典C语言程序50例(1-50) 【程序1】 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。 2.程序源代码: main() { int i,j,k; printf("\n"); for(i=1;i<5;i++)/*以下为三重循环*/ for(j=1;j<5;j++) for (k=1;k<5;k++) { if (i!=k&&i!=j&&j!=k) /*确保i、j、k三位互不相同*/ printf("%d,%d,%d\n",i,j,k); } } ============================================================== 【程序2】 题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高 于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提 成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于 40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于 100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数? 1.程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。 2.程序源代码: main() { long int i; int bonus1,bonus2,bonus4,bonus6,bonus10,bonus; scanf("%ld",&i); bonus1=100000*0.1;bonus2=bonus1+100000*0.75; bonus4=bonus2+200000*0.5; bonus6=bonus4+200000*0.3; bonus10=bonus6+400000*0.15; if(i<=100000) bonus=i*0.1;

经典C语言源代码

经典C语言源代码 1、(1)某年某月某日是星期几 #include int main() ( int year, month, day; while (scanf_s("%d%d%d”, &year, &month, &day) != EOF) ( if (month == 1 || month == 2)// 判断month 是否为1 或2 ( year--; month += 12; } int c = year / 100; int y = year - c * 100; int week = (c / 4) - 2 * c + (y + y / 4) + (13 * (month + 1) / 5) + day - 1; while (week<0) ( week += 7; } week %= 7; switch (week) ( case 1:printf("Monday\n"); break; case 2:printf("Tuesday\n"); break;

case 3:printf("Wednesday\n"); break; case 4:printf("Thursday\n"); break; case 5:printf("Friday\n"); break; case 6:printf("Saturday\n"); break; case 0:printf("Sunday\n"); break; } } return 0; } 1、(2)某年某月某日是第几天(一维数组) #include "stdio.h" void main() { int i, flag, year, month, day, dayth; int month_day口= { 0,31,28,31,30,31,30,31,31,30,31,30,31 }; printf("请输入年/月/日:\n"); scanf_s("%d/%d/%d”, &year, &month, &day); dayth = day; flag = (year % 400 == 0) || (year % 4 == 0 && year % 100 != 0); if (flag) month_day[2] = 29; for (i = 1; i < month; i++) dayth = dayth + month_day[i];

C语言程序源代码

C语言程序源代码

C语言程序源代码 #include // 51寄存器定义 #include "intrins.h" #define control P1 //P1_0:A相,P1_1:B相,P1_2:C相,P1_3:D相 #define discode P0 //显示代码控制端口 #define uchar unsigned char //定义无符号型变量 #define uint unsigned int sbit en_dm=P3^0; //显示代码锁存控制 sbit en_wk=P3^1; //位控锁存控制 uchar code corotation[4]= {0x03,0x06,0x0c,0x09};//电机正转 uchar code rollback[4]={0x0c,0x06,0x03,0x09}; //电机反转 uchar code tab[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//显示字段uint code Levspeed[5]={500,400,300,200,100};//电机速度等级 uchar Hscan,speedcount;//Hscan行扫描,speedcount 速度等级计数 uint uu; //频率计数 uint step,setstep; //step:电机步伐计数,setstep:手动设置电机步伐 uint speed=500; //电机初始速度 uchar count; uchar flag[5]; uchar butcount; //按键次数 //**************************************** //flag[0] 正转标志 //flag[1] 反转标志 //flag[2] 加速标志 //flag[3] 减速标志 //flag[4] 设置标志 //**************************************** Delay1mS(unsigned int tt) //延时1ms “Delay1mS”延时子程序,用循环语句延时。 { unsigned char i; while(tt--) for(i=113;i>0;i--); } keyscan() //键盘扫描“keyscan”键盘扫描子程序,用于寻找是否有按键按下。 { P2=0xf0; //把oxfe赋值给P2口//将按键控制口置于未按键的状态.单片机输出//口假设不是按键按下状态. if(P2!=0xf0) //如果P2口的值不等于0xfe //检查是否有按键按下.如果有,处理{}内的事

C语言程序设计 入门源代码代码集合

#include void print_star(void) { printf("*****************\n"); } void print_welcome(void) { printf("C language,welcome!\n"); } void main() { print_star(); print_welcome(); print_star(); getchar(); } 演示2 #include "stdio.h" int sum(int i,int j) { return(i + j); } void main() { int n1,n2; printf("input 2 numbers:\n"); scanf("%d%d",&n1,&n2); printf("the sum = %d\n",sum(n1,n2)); getchar(); } 演示3 #include "stdio.h" int maxnum(int,int,int); main() { int a,b,c; printf("Please enter 3 numbers:\n"); scanf("%d,%d,%d",&a,&b,&c); printf("Maxnum is %d\n",maxnum(a,b,c));

} int maxnum(int x,int y,int z) { int max=x; if(y>max) max = y; if(z>max) max = z; return max; } 演示4 #include int s1(int n) { int j,s; s=0; for(j=1;j<=n;j++) s=s+j; return s; } int sum(int n) { int i,s=0; for(i=1;i<=n;i++) s=s+s1(i); return s; } void main() { int n; printf("n:"); scanf("%d",&n); printf("s=%d\n",sum(n)); } 演示5

c语言课程设计源代码

c语言课程设计源代码 Company Document number:WUUT-WUUY-WBBGB-BWYTT-1982GT

学校运动会管理系统问题描述: (1) 初始化输入:N-参赛院系总数,M-男子竞赛项目数,W-女子竞赛项目数; (2) 各项目名次取法有如下几种: 取前5名:第1名得分 7,第2名得分 5,第3名得分3,第4名得分2,第5名得分 1; (3) 由程序提醒用户填写比赛结果,输入各项目获奖运动员的信息。 (4) 所有信息记录完毕后,用户可以查询各个院系或个人的比赛成绩,生成团体总分报表,查看参赛院系信息、获奖运动员、比赛项目信息等。 程序代码: #include<> #include<> #define N 3 #define M 3 #define W 3 char* n_number[3]={"1","院系2","院系3"}; char* m_number[3]={"1","男项2","男项3"}; char* w_number[3]={"女项1","女项2","女项3"}; int size=2; struct student { char num[10]; char name[20]; char xiangmu[20]; int score; char ximing[20]; }stu[100],temp; void input() um,&stu[i].name,&stu[i].xiangmu,&stu[i].score,&stu[i].ximing); iming,n_number[0])==0) iming); iming,n_number[h])==0) for(int s=0;s

C语言程序源代码_五子棋游戏

/* 五子棋 */ #include #include #include #include #include #define LEFT 0x4b00 #define RIGHT 0x4d00 #define DOWN 0x5000 #define UP 0x4800 #define ESC 0x011b #define SPACE 0x3920 #define BILI 20 #define JZ 4 #define JS 3 #define N 19 int box[N][N]; int step_x,step_y ; int key ; int flag=1 ; void draw_box(); void draw_cicle(int x,int y,int color); void change(); void judgewho(int x,int y); void judgekey(); int judgeresult(int x,int y); void attentoin(); void attention() { char ch ; window(1,1,80,25); textbackground(LIGHTBLUE); textcolor(YELLOW); clrscr(); gotoxy(15,2); printf("游戏操作规则:");

gotoxy(15,4); printf("Play Rules:"); gotoxy(15,6); printf("1、按左右上下方向键移动棋子"); gotoxy(15,8); printf("1. Press Left,Right,Up,Down Key to move Piece"); gotoxy(15,10); printf("2、按空格确定落棋子"); gotoxy(15,12); printf("2. Press Space to place the Piece"); gotoxy(15,14); printf("3、禁止在棋盘外按空格"); gotoxy(15,16); printf("3. DO NOT press Space outside of the chessboard"); gotoxy(15,18); printf("你是否接受上述的游戏规则(Y/N)"); gotoxy(15,20); printf("Do you accept the above Playing Rules? [Y/N]:"); while(1) { gotoxy(60,20); ch=getche(); if(ch=='Y'||ch=='y') break ; else if(ch=='N'||ch=='n') { window(1,1,80,25); textbackground(BLACK); textcolor(LIGHTGRAY); clrscr(); exit(0); } gotoxy(51,12); printf(" "); } } void draw_box() { int x1,x2,y1,y2 ; setbkcolor(LIGHTBLUE); setcolor(YELLOW); gotoxy(7,2); printf("Left, Right, Up, Down KEY to move, Space to put, ESC-quit."); for(x1=1,y1=1,y2=18;x1<=18;x1++)

相关主题
相关文档
最新文档