c語言是函數(shù)式語言,所以函數(shù)很重要,舉個例子 #includestdio.h int abc(int a ,int b) /* abc 前的 int 表示這個函數(shù)的返回值是整數(shù),abc 是函數(shù)名稱,括號里的是定義了兩個參數(shù)它們都是整數(shù)*/ { int a=123; printf("%d",a); } 這個是我們自己寫的函數(shù),還有現(xiàn)成的c庫函數(shù),直接調(diào)用就行,限于篇幅,其實你仔細(xì)的摳書,書上都有,我就是看書學(xué)會的
我們擁有10余年網(wǎng)頁設(shè)計和網(wǎng)站建設(shè)經(jīng)驗,從網(wǎng)站策劃到網(wǎng)站制作,我們的網(wǎng)頁設(shè)計師為您提供的解決方案。為企業(yè)提供成都網(wǎng)站制作、網(wǎng)站建設(shè)、微信開發(fā)、小程序設(shè)計、成都做手機網(wǎng)站、H5場景定制、等業(yè)務(wù)。無論您有什么樣的網(wǎng)站設(shè)計或者設(shè)計方案要求,我們都將富于創(chuàng)造性的提供專業(yè)設(shè)計服務(wù)并滿足您的需求。
ABCD 在BC之間插入 那么m=2 則找到第二個節(jié)點B的指針 這個很好實現(xiàn)吧
設(shè)一個N=1
p=head;
while(p-next!=NULL) //m=1 a后插入 m=4 d后插入 然后就是之間插入
{
IF(M==N) BERAK;
P=P-NEXT;
N++;
}
然后 TEMP=B-NEXT; B-NEXT=P;P-NEXT=TEMP;即可完成插入;;;
getc():
調(diào)用方式:int getc(FILE *stream)
它返回指定輸入流stream的當(dāng)前位置的下一個字符,并增加文件的位置指示器.
getch():
調(diào)用方式:int getch(void)
getch()從控制臺讀取一個字符,但不把該字符顯示在屏幕上,也就是不回顯.
getche():
調(diào)用方式:int getche(void)
getche()從控制臺讀取一個字符,把該字符顯示在屏幕上,也就是回顯.
getchar():
調(diào)有方式:int getchar(void)
getchar()從控制臺讀取一個字符,并回顯,它和getch(),getche()的不同在于,它等到輸入一個回車才結(jié)束,就算你輸入了一個字符串,它也只取其中的第一個字符.
getchar()頭文件為string.h,即需有# includestring.h
其他的頭文件為conio.h
呃,你可以使用追問嗎~我這太不方便了,請問你用的什么編譯器?
呃,這樣子啊,對gcc我不清楚了就,也許其不支持或者文件庫不一樣,你可以針對查查,
在vc中我試了沒有問題。。。
/*主程序功能模塊—-文件名:student.c*/
#define MAX_BAR 4 /*最大菜單數(shù),可以自定*/
#include"io.h"
#include"dos.h"
#include"fcntl.h"
#include"stdio.h"
#include"stdlib.h"
#include"math.h"
#include"graphics.h"
#include"chi_asc.c" /*調(diào)用圖形模式下漢字、字符共顯功能*/
#include"public.c" /*按鍵定義功能*/
#include"mypcx.c" /*封面圖象調(diào)用功能,此處為pcx圖象*/
#include"stu_frame.c" /*框架繪制功能*/
#include"stu_sub.c" /*各子菜單功能*/
main()
{
/*old_bar、curr_bar表示上次選中的菜單、當(dāng)前選中的菜單*/
/*old_sonbar curr_sonbar表示上次選中的子菜單、當(dāng)前選中的子菜單*/
int i,key,key_son,old_bar,curr_bar,curr_sonbar,old_sonbar,size;
int save_startx,save_starty,save_endx,save_endy,sonbar_out=0;
void *buf;
int Driver,Mode;
char *pcx;
struct student_bar{
int start_x,start_y; /*起始橫坐標(biāo),起始縱坐標(biāo)*/
int length_x,length_y; /*菜單的長,菜單的寬*/
int num_son; /*包含子菜單的個數(shù)*/
char *p_father; /*菜單項名,*p_son[5]為子菜單名*/
char *p_son[5];}stu_bar[MAX_BAR]={
{10,45,120,25,4,"File Operation",{" Open file"," New file"," Save file","Exit system"}},
{130,45,120,25,3,"Data Edition",{" Add object","Delete object","Modify object"}},
{250,45,120,25,0,"File Print",{""}},
{370,45,120,25,0,"Help Message",{""}}
};/*定義各功能菜單的結(jié)構(gòu)體*/
pcx="stusys4.pcx";
Set_Video_Mode(VGA256); /*轉(zhuǎn)換屏幕到320*200*256色*/
PCX_Load_Screen(pcx,1); /*讀取封面圖象stusys4.pcx*/
Driver=DETECT,Mode=0;
initgraph(Driver,Mode,""); /*設(shè)置圖象模式*/
cleardevice();
main_frame(BLUE,LIGHTGRAY); /*繪制主框架圖,底色為藍(lán)色*/
/*繪制菜單*/
for(i=0;iMAX_BAR;i++)
{
setcolor(BLUE);
rectangle(stu_bar[i].start_x, stu_bar[i].start_y, stu_bar[i].start_x+stu_bar[i].length_x, stu_bar[i].start_y+stu_bar[i].length_y);
puthz16(stu_bar[i].start_x+8,stu_bar[i].start_y+5,-8,BLUE,stu_bar[i].p_father);
}puthz16(stu_bar[0].start_x+8,stu_bar[0].start_y+5,-8,WHITE,stu_bar[0].p_father);
old_bar=0;curr_bar=0;
/*讀取按鍵字符,如為ESC則退出*/
while((key=specialkey())!=ESC){
old_bar=curr_bar;
if(sonbar_out==1)sonbar_out=0;
if(key==LEFT){
if(curr_bar==0)curr_bar=3;
else curr_bar=curr_bar-1;
}/*LEFT finished*/
if(key==RIGHT){
if(curr_bar==3)curr_bar=0;
else curr_bar=curr_bar+1;
}/*RIGHT finished*/
/*如按鍵為ENTER,則繪制子菜單*/
if(key==ENTER){
save_startx=stu_bar[curr_bar].start_x;
save_starty=stu_bar[curr_bar].start_y+stu_bar[curr_bar].length_y+1;
save_endx=stu_bar[curr_bar].start_x+stu_bar[curr_bar].length_x;
/*保存子菜單展開后掩蓋住的圖象*/ save_endy=stu_bar[curr_bar].start_y+stu_bar[curr_bar].length_y+stu_bar[curr_bar].num_son*stu_bar[curr_bar].length_y+1;
size=imagesize(save_startx,save_starty,save_endx,save_endy);
if(size!=-1)
{
buf=malloc(size);
if(buf)getimage(save_startx,save_starty,save_endx,save_endy,buf);
else {printf("OUT MEMORY");exit(0);}
}
setviewport(save_startx,save_starty,save_endx,save_endy,1);
setcolor(WHITE);
clearviewport();
for(i=1;i=stu_bar[curr_bar].num_son;i++)
{
rectangle(0,0,stu_bar[curr_bar].length_x,i*stu_bar[curr_bar].length_y);
setfillstyle(SOLID_FILL,LIGHTGRAY);
floodfill(stu_bar[curr_bar].length_x-1,i*stu_bar[curr_bar].length_y-1,WHITE);
}
for(i=0;istu_bar[curr_bar].num_son;i++)
puthz16(8,i*stu_bar[curr_bar].length_y+5,-8,BLUE,stu_bar[curr_bar].p_son[i]);
puthz16(8,5,-8,WHITE,stu_bar[curr_bar].p_son[0]);
old_sonbar=0;curr_sonbar=0;
if(stu_bar[curr_bar].num_son)
while(((key_son=specialkey())!=ESC)sonbar_out==0){
old_sonbar=curr_sonbar;
if(key_son==UP){
if(curr_sonbar==0) curr_sonbar=stu_bar[curr_bar].num_son-1;
else curr_sonbar=curr_sonbar-1;
}
if(key_son==DOWN){
if(curr_sonbar==(stu_bar[curr_bar].num_son-1)) curr_sonbar=0;
else curr_sonbar=curr_sonbar+1;
}
puthz16(8,old_sonbar*stu_bar[curr_bar].length_y+5,-8,BLUE,stu_bar[curr_bar].p_son[old_sonbar]);
puthz16(8,curr_sonbar*stu_bar[curr_bar].length_y+5,-8,WHITE,stu_bar[curr_bar].p_son[curr_sonbar]);
if(key_son==ENTER){
setviewport(0,0,639,479,1);
putimage(save_startx,save_starty,buf,COPY_PUT);
free(buf);
sonbar_out=1;
if(curr_bar==0)
switch(curr_sonbar){
case 0:
fil_open(); /*調(diào)用stu_sub.c文件中fil_open()函數(shù),打開文件*/
break;
case 1:
fil_new(); /*調(diào)用stu_sub.c文件中fil_new()函數(shù),新建文件*/
break;
case 2:
fil_save(); /*調(diào)用stu_sub.c文件中fil_save()函數(shù),保存文件*/
break;
case 3:
sys_exit(); /*調(diào)用stu_sub.c文件中sys_exit()函數(shù),退出系統(tǒng)*/
}
if(curr_bar==1)
switch(curr_sonbar){
case 0:
dat_add(); /*調(diào)用stu_sub.c文件中dat_add()函數(shù),添加記錄*/
break;
case 1:
dat_dele(); /*調(diào)用stu_sub.c文件中dat_dele()函數(shù),刪除記錄*/
break;
case 2:
dat_mod(); /*調(diào)用stu_sub.c文件中dat_mod()函數(shù),修改記錄*/
break;
}
} /*key_son=ENTER finished*/
}/*key_son all finished*/
if(sonbar_out==0){
setviewport(0,0,639,479,1);
putimage(save_startx,save_starty,buf,COPY_PUT);
free(buf); /*還原子菜單掩蓋住的圖象,并釋放子菜單所占用的內(nèi)存*/
}
/*如果子菜單項為0*/
if(!stu_bar[curr_bar].num_son){
if(curr_bar==2)
fil_prn(); /*調(diào)用stu_sub.c文件中fil_prn()函數(shù),打印文件*/
if(curr_bar==3)
hel_mess(); /*調(diào)用stu_sub.c文件中hel_mess()函數(shù),顯示幫助信息*/
}
} /*ENTER finished*/
puthz16(stu_bar[old_bar].start_x+8,stu_bar[old_bar].start_y+5,-8,BLUE,stu_bar[old_bar].p_father);
puthz16(stu_bar[curr_bar].start_x+8,stu_bar[curr_bar].start_y+5,-8,WHITE,stu_bar[curr_bar].p_father);
}/*key all finished*/
fcloseall(); /*關(guān)閉所有文件*/
closegraph(); /*關(guān)閉圖形狀態(tài)*/
}
自己改改?。?!
希望能解決您的問題。
網(wǎng)站欄目:c語言模塊錄入函數(shù),C語言中輸出函數(shù)
網(wǎng)頁URL:http://m.rwnh.cn/article4/phgpoe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號、營銷型網(wǎng)站建設(shè)、搜索引擎優(yōu)化、微信小程序、定制開發(fā)、外貿(mào)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)