本文目錄一覽:
花在陽光下長得好還是暗處長得好?
1、大部分木本開花植物,如月季、玫瑰、桂花、梔子花、茉莉、梅花、龍船花、貼梗海棠、垂絲海棠、雞蛋花、三角梅、紫薇、玉蘭、白蘭、桃金娘、櫻花、夾竹桃等,喜歡并且需要陽光,在全日照、半日照條件下,均生長良好。但在不見光的陰暗處就無法正常生長。
也有例外:如牡丹需要陽光,但忌諱午后的西曬陽光,溫度要求冷涼,8-20度生長最好;山茶則適應散射陽光,就像在野外,是生長在大樹蔭之下一樣,需要遮陰棚或遮陰網。
2、一年生、宿根草本花卉,大部分喜歡充足陽光,如雞冠花、鳳仙花、醉蝶花、各類菊花、向日葵、紫羅蘭、一串紅,各類海棠、鳳梨、口紅花、鯨魚花、半枝蓮(太陽花)、蔦蘿、忍冬、炮竹花、紫茉莉、鶴望蘭(天堂鳥)、康乃馨、蝎尾蕉、美人蕉、旅人蕉、鳶尾、芍藥等。
同樣有例外:如春、墨、建、蕙等國蘭,野生境況,就是生長在叢林、山巖下的潮濕地,需要較隱蔽環境;而卡特蘭、文心蘭、蝴蝶蘭、萬帶蘭、石斛蘭等,野生時附生或著生在樹干、枝椏之間,需要有遮陰網或遮陰棚的散射陽光環境。
3、大部分觀葉植物,如彩葉芋類、蔓綠絨類、龍血樹類、黃金葛類、龜背竹類、發財樹類、合果芋類、竹蕉、朱蕉、龍舌蘭、黛粉葉類、網紋草類等,在向陽、稍隱蔽處,均可生長良好,因此,在戶外、室內,均適合種植。
4、大部分水生植物,如荷花、睡蓮、王蓮、水葫蘆、浮萍等,均需要充足陽光。
5、絕大部分多肉植物,如各種仙人球、掌,景天、沙漠玫瑰、麒麟掌、虎刺梅等,喜歡強日光直射環境,這樣才能正常開花、結子。
不過,大多數多肉植物在室內明亮處亦可種植,只是生長緩慢,無法開花、結子。
6、蕨類植物,如腎厥、波士頓厥、鐵線蕨、巢厥、兔腳厥、鹿角厥、桫欏等,屬于蔭生植物,只能在隱蔽、潮濕處生長。
7、另外,像芒果、龍眼、蓮霧、荔枝、雞蛋花、椰子、大部分棕櫚等,屬于熱帶、亞熱帶植物,必須有強日照、高溫條件。
總之,我覺得樓主可以結合各種植物的原生態環境,去了解、認識它們的生長習性。每一個科、屬、種的植物,均會存在喜陽、喜蔭的品種,這是由植物的進化特性所決定的。
本篇屬本人結合植物學資料的原創,無任何復制內容,請其他回答的朋友不要抄襲。至于對樓主有無參考價值,請樓主自行定奪。
樓主:
雖然我一補充內容,答案就會跑到最后,不過,針對你的“問題補充”,我還是給你補充一下吧。
在上面提到的各種植物中,可以適應全日照、充足陽光、強日照的,是可以經受陽光暴曬的,除此之外,其他的植物,就算需要陽光,但也不能暴曬。
這些答復,是有充分資料及我的長期種植花卉經驗作為依據的,你可以信任!
vc++的一道題 清高高高手幫個忙
停車場系統
#includeiostream.h
#includestring.h
#includeiomanip.h
#define StackSize 8
typedef struct
{char Car_number[StackSize][10];
int top;
}SqStack;//定義棧的結構
void InitStack(SqStack S)//初始棧的棧頂
{S.top=-1;
}
int StackEmpty(SqStack S)//判斷棧是否為空
{if(S.top==-1)
return 1;
else
return 0;
}
int StackFull(SqStack S)//判斷棧是否為滿
{if(S.top==StackSize-1)
return 1;
else
return 0;
}
void StackPush(SqStack S,char e[])//壓棧
{S.top++;
strcpy(S.Car_number[S.top],e);
}
void StackDisplay(SqStack S)//顯示棧的元素
{cout"停車場的車:"endl;
int i;
for(i=S.top+1;iStackSize;i++)
cout"|"setiosflags(ios::left)setw(10)"""|"endl;
for(i=S.top;i=0;i--)
cout"|"setiosflags(ios::left)setw(10)S.Car_number"|"endl;
cout"------------"endl;
}
void StackPop(SqStack S,char e[])//將特定值元素彈出
{int flag=0;int k;
if(StackEmpty(S))
coute"號碼的車找不到!"endl;
else
{for(int i=0;i=S.top!flag;i++)
if(!strcmp(S.Car_number,e))
{ k=i;flag=1;}
if(!flag)
coute"號碼的車找不到!"endl;
else
{for(i=k;iS.top;i++)
strcpy(S.Car_number,S.Car_number[i+1]);
S.top--;
}
}
}
#define QueueSize 9
typedef struct
{char Car_number[QueueSize][10];
int front ,rear;
}SQueue;//定義隊列的結構
void InitQueue(SQueue SQ)//初始隊列
{SQ.front=SQ.rear=0;
}
int QueueEmpty(SQueue SQ)//判斷隊列是否為空
{if(SQ.front==SQ.rear)
return 1;
else
return 0;
}
int QueueFull(SQueue SQ)//判斷隊列是否為滿
{if((SQ.rear+1)%QueueSize==SQ.front)
return 1;
else
return 0;
}
void EnQueue(SQueue SQ,char e[])//元素進隊尾
{SQ.rear=(SQ.rear+1)%QueueSize;
strcpy(SQ.Car_number[SQ.rear],e);
}
void OutQueue(SQueue SQ,char e[])//隊首出隊列
{ SQ.front=(SQ.front+1)%QueueSize;
strcpy(e,SQ.Car_number[SQ.front]);
}
void QueueDisplay(SQueue SQ)//顯示隊列中的元素
{cout"便道上的車:\n";
for(int i=(SQ.front+1)%QueueSize;i!=(SQ.rear+1)%QueueSize;i=(i+1)%QueueSize)
coutSQ.Car_number"---";
coutendl;
}
void Special_OutQueue(SQueue SQ,char e[])//特定元素出隊列
{int k,flag=0,j;
if(QueueEmpty(SQ))
coute"號碼的車找不到!"endl;
else
{for(k=(SQ.front+1)%QueueSize;k!=(SQ.rear+1)%QueueSize!flag;k=(k+1)%QueueSize)
if(!strcmp(SQ.Car_number[k],e))
{ flag=1; }
if(!flag)
coute"號碼的車找不到!"endl;
else
{k--;
for(j=k;j!=SQ.rear;j=(j+1)%QueueSize)
strcpy(SQ.Car_number[j],SQ.Car_number[(j+1)%QueueSize]);
SQ.rear=(SQ.rear-1)%QueueSize;
}
}
}
void Car_In(SqStack S,SQueue SQ)//模擬進車
{char e[10];
cout"please input the number of the car which is coming!\n";
cine;
if(!StackFull(S)QueueEmpty(SQ))
StackPush(S, e);
else if(StackFull(S)!QueueFull(SQ))
EnQueue(SQ,e);
else if(StackFull(S)QueueFull(SQ))
cout"The stack and the queue are full,please come later!\n ";
}
void Car_Reset(SqStack S,SQueue SQ)//自動調整
{ char e[10];
while(!StackFull(S)!QueueEmpty(SQ))
{OutQueue(SQ, e);
StackPush(S,e);
}
}
void Car_Out(SqStack S,SQueue SQ)//模擬出車
{int choice;char number[10];
cout"1:停車場的有車要離開\n2:便道上有車要離開\n";
cinchoice;
switch(choice)
{case 1:
cout"input the car number which is leaving!\n";
cinnumber;
StackPop(S,number);
break;
case 2:
cout"input the car number which is leaving!\n ";
cinnumber;
Special_OutQueue(SQ,number);
break;
default:
cout"error ";break;
}
Car_Reset(S,SQ);
}
void re_start(SqStack S,SQueue SQ)//使停車場和便道車為空
{S.top=-1;
SQ.front=SQ.rear=0;
}
void display_all(SqStack S,SQueue SQ)//顯示停車場和便道車的情況
{QueueDisplay(SQ);
StackDisplay(S);
}
void di()
{cout"\t\t********************************************\n";
cout"\t\t1:模擬進車 3:顯示停車場和便道車的情況 \n";
cout"\t\t2:模擬出車 4:重新開始(停車場和便道車為空) \n";
cout"\t\t5:退出\n";
cout"\t\t********************************************\n";
}
void main()
{int m;
SqStack S;
InitStack(S);
SQueue SQ;
InitQueue(SQ);
cout"\t\t********************************************\n";
cout"\t\t\t\t停車場模擬系統\n";
cout"\t\t\t\t開發者: 胡小勇\n";
cout"\t\t\t\t\t時間:2004/5/21\n" ;
cout"\t\t********************************************\n";
di();
cinm;
while(m!=5)
{switch(m)
{case 1:Car_In(S,SQ);break;
case 2:Car_Out(S,SQ);break;
case 3: display_all(S,SQ);break;
case 4:re_start(S,SQ);break;
default:
cout"why do you input the wrong number!\n";
}
di();
cinm;
}
}
運動會系統
#includestdio.h
#includemalloc.h
#includeiostream.h
#includestring.h
#define len sizeof(struct school)
#define len1 sizeof(struct statitcs)
struct school
{int num;
int project_num;
char name[20];
int score;
//int no;
struct school *next;
};
struct school *insert(void)
{ cout"********************************\n";
cout"特別提示:\n";
cout"如果想退出,請在學校編號輸入0\n";
cout"********************************\n";
struct school *head,*rear,*p;
head=NULL;rear=NULL;
p=(struct school *)malloc(len);
cout"請輸入學校編號\n";cinp-num;
cout"請輸入項目\n";cinp-project_num;
cout"請輸入姓名\n";cinp-name;
cout"請輸入成績\n";cinp-score;
if(p-num==0)
return NULL;
while(p-num!=0)
{if(head==NULL)
{head=p;rear=p;}
else
{rear-next=p;
rear=p;
}
p=(struct school *)malloc(len);
cout"請輸入學校編號\n";cinp-num;
cout"請輸入項目\n";cinp-project_num;
cout"請輸入姓名\n";cinp-name;
cout"請輸入成績\n";cinp-score;
}
rear-next=NULL;
return head;
}
struct school *add(struct school *t)
{
struct school *s,*p;
p=(struct school *)malloc(len);
cout"請輸入學校編號\n";cinp-num;
cout"請輸入項目\n";cinp-project_num;
cout"請輸入姓名\n";cinp-name;
cout"請輸入成績\n";cinp-score;
s=t;
if(s==NULL)
{ p-next=s;
s=p;
return s;}
else
{while(s-next!=NULL)
{s=s-next;}
s-next=p;
p-next=NULL;
return t;}
}
void print(struct school *t)
{struct school *p;
p=t;
cout"學校編號\t項目\t姓名\t成績\n";
while(p!=NULL)
{coutp-num"\t\t"p-project_num"\t"p-name"\t"p-scoreendl;
p=p-next;
}
}
void display(struct school *t,int n)
{struct school *p;
p=t;
while(p!=NULL)
{if(p-num==n)
coutp-project_num"\t"p-name"\t"p-scoreendl;
p=p-next;
}
}
struct school *deletes(struct school *t)
{struct school *p,*k,*k_head;int flag=0;
p=(struct school *)malloc(len);
cout"請輸入要刪除的信息\n";
cout"請輸入學校編號\n";cinp-num;
cout"請輸入項目\n";cinp-project_num;
cout"請輸入姓名\n";cinp-name;
cout"請輸入成績\n";cinp-score;
k=t;
while(k!=NULL)
{if((p-num==k-num)(k-project_num==p-project_num)!strcmp(p-name,k-name)(p-score==k-score))
{flag=1;
if(k==t)
{t=t-next;}
else
k_head-next=k-next;
}
else
k_head=k;
k=k-next;
}
if(k==NULLflag==0)
cout"無法找到你要刪除的信息\n";
return t;
}
void find(struct school *t)
{struct school *p;
p=t;
cout"學校編號\t項目\t姓名\t成績\n";
while(p!=NULL)
{coutp-num"\t\t"p-project_num"\t"p-name"\t"p-scoreendl;
p=p-next;
}
}
void find1(struct school *t)
{struct school *k;int flag=0;int num;
cout"請輸入要查找的信息\n";
cout"請輸入學校編號\n";cinnum;
cout"學校編號\t項目\t姓名\t成績\n";
k=t;
while(k!=NULL)
{if(num==k-num)
{flag=1;coutk-num"\t\t"k-project_num"\t"k-name"\t"k-scoreendl;}
k=k-next;
}
if(k==NULLflag==0)
cout"無法找到你要的信息\n";
}
void find2(struct school *t)
{struct school *k;int flag=0;int num;
cout"請輸入要查找的信息\n";
cout"請輸入項目號\n";cinnum;
cout"學校編號\t項目\t姓名\t成績\n";
k=t;
while(k!=NULL)
{if(num==k-project_num)
{flag=1;coutk-num"\t\t"k-project_num"\t"k-name"\t"k-scoreendl;}
k=k-next;
}
if(k==NULLflag==0)
cout"無法找到你要的信息\n";
}
void find3(struct school *t)
{struct school *k;int flag=0;char name[20];
cout"請輸入要查找的信息\n";
cout"請輸入姓名\n";cinname;
cout"學校編號\t項目\t姓名\t成績\n";
k=t;
while(k!=NULL)
{if(!strcmp(name,k-name))
{flag=1;coutk-num"\t\t"k-project_num"\t"k-name"\t"k-scoreendl;}
k=k-next;
}
if(k==NULLflag==0)
cout"無法找到你要的信息\n";
}
struct school *deletes1(struct school *t)
{struct school *k,*k_head;int flag=0;int num;
cout"請輸入要刪除的信息\n";
cout"請輸入學校編號\n";cinnum;
k=t;
while(k!=NULL)
{if(k-num==num)
{flag=1;
if(k==t)
{t=t-next;}
else
k_head-next=k-next;
}
else
k_head=k;
k=k-next;
}
if(k==NULLflag==0)
cout"無法找到你要刪除的信息\n";
return t;
}
struct school *deletes2(struct school *t)
{struct school *k,*k_head;int flag=0;int num;
cout"請輸入要刪除的信息\n";
cout"請輸入項目號\n";cinnum;
k=t;
while(k!=NULL)
{if(k-project_num==num)
{flag=1;
if(k==t)
{t=t-next;}
else
k_head-next=k-next;
}
else
k_head=k;
k=k-next;
}
if(k==NULLflag==0)
cout"無法找到你要刪除的信息\n";
return t;
}
struct school *deletes3(struct school *t)
{struct school *k,*k_head;int flag=0;char name[20];
cout"請輸入要刪除的信息\n";
cout"請輸入姓名\n";cinname;
k=t;
while(k!=NULL)
{if(!strcmp(k-name,name))
{flag=1;
if(k==t)
{t=t-next;}
else
k_head-next=k-next;
}
else
k_head=k;
k=k-next;
}
if(k==NULLflag==0)
cout"無法找到你要刪除的信息\n";
return t;
}
struct statitcs
{
int flag;
int total;
int no;
struct statitcs *next;
};
int total1(struct school *t,int n)
{struct school *p;
p=t;
int sum=0;
while(p!=NULL)
{if(p-num==n)
sum+=p-score;
p=p-next;
}
return sum;
}
void swap(struct statitcs *t1,struct statitcs *t2)
{struct statitcs *t;
t=(struct statitcs *)malloc(len1);
t-flag=t1-flag;t1-flag=t2-flag;t2-flag=t-flag;
t-total=t1-total;t1-total=t2-total;t2-total=t-total;
}
struct statitcs *set_place(struct statitcs *t)
{int i=1;
struct statitcs *p,*q;
p=t;
if(p==NULL)return t;
else
{p-no=1;
while(p-next!=NULL)
{q=p-next;
a:if((q-total==p-total))
{q-no=p-no;q=q-next;
if(q==NULL) return t;
goto a;}
if(q==NULL) return t;
else{p=q;i++;p-no=i;}
}
}
return t;
}
struct statitcs * sort( struct statitcs *t)
{struct statitcs *p1,*p2;
p1=t;
while(p1!=NULL)
{ p2=p1-next;
while(p2!=NULL)
{if((p1-total)(p2-total))
swap(p1,p2);
p2=p2-next;
}
p1=p1-next;
}
return t;
}
void show(struct statitcs *t,struct school *t1)
{struct statitcs *p;
p=t;
while(p!=NULL)
{
cout"\n學校編號"p-flagendl;
cout"項目\t""姓名\t""成績"endl;
display(t1,p-flag);
cout"\t總成績"p-total"\t總名次:"p-noendl;
p=p-next;
}
}
struct statitcs *creat(struct school *t)
{int a[100];int i=0;int flag1;
struct statitcs *head,*rear,*p;
struct school *k;k=t;
head=NULL;if(k==NULL)return NULL;
p=(struct statitcs *)malloc(len1);
p-flag=k-num;
p-total=total1(t,p-flag);
if(head==NULL)
head=p;rear=p;
k=k-next;
a=p-flag;
while(k!=NULL)
{flag1=1;
for(int m=0;m=i;m++)
if(a[m]==k-num)
flag1=0;
if(flag1)
{p=(struct statitcs *)malloc(len1);
p-flag=k-num; i++;a=p-flag;
p-total=total1(t,p-flag);
rear-next=p;rear=p;}
k=k-next;
}
rear-next=NULL;
return head;
}
void swap1(struct school *t1, struct school *t2)
{struct school *t;
t=(struct school *)malloc(len);
t-num=t1-num;t1-num=t2-num;t2-num=t-num;
t-score=t1-score;t1-score=t2-score;t2-score=t-score;
strcmp(t-name,t1-name);strcmp(t1-name,t2-name);strcmp(t2-name,t-name);
}
struct school * sort1( struct school *t,int n)
{struct school *p1,*p2;
p1=t;
while(p1!=NULL)
{ p2=p1-next;
while(p2!=NULLp1-project_num==np2-project_num==n)
{if((p1-score)(p2-score))
swap1(p1,p2);
p2=p2-next;
}
p1=p1-next;
}
return t;
}
/*struct school *setplace1(struct school *t,int n)
{int i=1;
struct school *p,*q;
p=t;
if(p==NULL)return t;
else
{if(p-project_num==n)
p-no=1;
while(p-next!=NULL)
{q=p-next;
a:if((q-score==p-score)p-project_num==nq-project_num==n)
{q-no=p-no;q=q-next;
if(q==NULL) return t;
goto a;}
if(q==NULL) return t;
else{p=q;
if((q-score==p-score)p-project_num==nq-project_num==n)
{i++;p-no=i;}}
}
}
return t;
}
*/
void show1(struct school *t,int n)
{struct school *p;
p=t;
cout"項目:"n"\n學校編號\t""姓名\t""成績\t"endl;
while(p!=NULL)
{if(p-project_num==n)
coutp-num"\t\t"p-name"\t"p-score"\t"endl;
p=p-next;
}
}
void sort_display(struct school *t)
{int a[100];int i=0;int flag1;
struct school *k;k=t;
if(k==NULL)cout "NULL\n";
a=k-project_num;
k=k-next;
while(k!=NULL)
{flag1=1;
for(int m=0;m=i;m++)
if(a[m]==k-project_num)
flag1=0;
if(flag1)
{i++;a=k-project_num;}
k=k-next;
}
for(int m=0;m=i;m++)
{t=sort1(t,a[m]);
//setplace1(t,a[m]);
show1(t,a[m]);
}
}
void main()
{struct school *t;struct statitcs *s;char a;int flag=1,flag1=1,flag2=1;
t=NULL;
cout"\t\t***************************************************\n";
cout" \t\t *請勿盜版*\t *請勿盜版*\t *請勿盜版*\n ";
cout"\t\t\t\t產品信息:\n\t\t\t\t學號:020410107\n\t\t\t\t姓名:胡小勇\n\t\t\t\t電子郵件:huxiaoyong1983@163.com\n\t\t\t\t電話:0631-5696421\n";
cout" \t\t\t\t使用有問題 請與我聯系\n\t\t *請勿盜版*\t *請勿盜版*\t *請勿盜版*\n ";
cout"\t\t***************************************************\n";
cout"\t\t***************************************************\n";
cout"\t\t\t 運動會信息管理系統\n\t\t\t\t1:創建信息\n\t\t\t\t2:添加信息\n\t\t\t\t3:刪除信息\n\t\t\t\t4:查找信息\n\t\t\t\t5:排序并顯示\n\t\t\t\t6:退出\n";
cout"\t\t***************************************************\n";
cina;
while(a!='6')
{switch(a)
{case'1':flag=0;flag1=0;flag2=0;
t=insert();
cout"你輸入的所有信息\n";
print(t);break;
case'2':cout"*****************\n1:添加一條信息\n2:退出\n*****************\n";
cina;
while(a!='2')
{switch(a)
{case'1':t=add(t);break;
default:cout"\n請正確輸入\n";break;
}
cout"*****************\n1:添加一條信息\n2:退出\n*****************\n";
cina;
}
print(t);
break;
case'3':if(flag==1)
{cout"\t\t請先輸入數據\n";break;}
cout"\t\t***************************************************\n";
cout"\t\t\t1:刪除某一學校某一項目某一姓名某一成績的信息\n\t\t\t2:刪除某一學校的信息\n\t\t\t3:刪除某一項目的信息\n\t\t\t4:刪除某一姓名的信息\n\t\t\t5:退出\n";
cout"\t\t***************************************************\n";
cina;
while(a!='5')
{switch(a)
{case'1':t=deletes(t); cout"刪除后的信息\n";print(t);break;
case'2':t=deletes1(t);cout"刪除后的信息\n"; print(t);break;
case'3':t=deletes2(t); cout"刪除后的信息\n"; print(t);break;
case'4':t=deletes3(t); cout"刪除后的信息\n";print(t);break;
default:cout"請正確輸入\n";break;
}
cout"\t\t***************************************************\n";
cout"\t\t\t1:刪除某一學校某一項目某一姓名某一成績的信息\n\t\t\t2:刪除某一學校的信息\n\t\t\t3:刪除某一項目的信息\n\t\t\t4:刪除某一姓名的信息\n\t\t\t5:退出\n";
cout"\t\t***************************************************\n";
cina;
}
break;
case'4':if(flag2==1)
{cout"\t\t請先輸入數據\n";break;}
cout"\t\t***************************************************\n";
cout"\t\t\t1:查找所有信息\n\t\t\t2:查找某一學校的信息\n\t\t\t3:查找某一項目的信息\n\t\t\t4:查找某一姓名的信息\n\t\t\t5:退出\n";
cout"\t\t***************************************************\n";
cina;
while(a!='5')
{switch(a)
{case'1':find(t);break;
case'2':find1(t);break;
case'3':find2(t);break;
case'4':find3(t);break;
default:cout"請正確輸入\n";break;
}
cout"\t\t***************************************************\n";
cout"\t\t\t1:查找所有信息\n\t\t\t2:查找某一學校的信息\n\t\t\t3:查找某一項目的信息\n\t\t\t4:查找某一姓名的信息\n\t\t\t5:退出\n";
cout"\t\t***************************************************\n";
cina;
}
break;
case'5':if(flag1==1)
{cout"\t\t請先輸入數據\n";break;}
cout"\t\t*************************************\n";
cout"\t\t1:按學校總成績排序\n\t\t2:按每個項目的成績高低排序\n\t\t3:退出\n";
cout"\t\t*************************************\n";
cina;
while(a!='3')
{switch(a)
{case'1':s=creat(t);s=sort(s);s=set_place(s);show(s,t);break;
case'2':sort_display(t);break;
default:cout"請正確輸入\n";break;
}
cout"\t\t*************************************\n";
cout"\t\t1:按學校總成績排序\n\t\t2:按每個項目的成績高低排序\n\t\t3:退出\n";
cout"\t\t*************************************\n";
cina;
}
break;
default:cout"請正確輸入\n";
}
cout"\t\t***************************************************\n";
cout"\t\t\t 運動會成績信息系統\n\t\t\t\t1:創建信息\n\t\t\t\t2:添加信息\n\t\t\t\t3:刪除信息\n\t\t\t\t4:查找信息\n\t\t\t\t5:排序并顯示\n\t\t\t\t6:退出\n";
cout"\t\t***************************************************\n";
cina;
}
cout"謝謝使用\n";
}
#includestdio.h //標準輸入、輸出頭文件
#includestring.h //包含字符串函數處理頭文件
#includestdlib.h //包含動態存儲與釋放函數頭文件
#define N 10000
struct air //定義結構體數組
{
int num;
char start[20];
char over[20];
char time[10];
int count;
}s[N];
int i;
int m=0;
#define PRINT "%-d%12s%12s%10s%12d\n",s[i].num,s[i].start,s[i].over,s[i].time,s[i].count //定義輸出格式
void input(); //輸入航班信息
void print(); //輸出航班信息
void save(); //保存航班信息
void read(); //讀取航班信息
void search(); //查找航班信息
void shanchu(); //刪除航班信息
void dingpiao(); //訂票信息
void tuipiao(); //退票信息
void xiugai(); //修改信息
void main()
{
int j;
printf(" ★---您好,歡迎進入中國民航管理系統!---★\n");
printf("================================================================================\n");
do
{
printf(" -------- ☆ 1.輸入航班信息 ☆-------- \n\n"
" -------- ☆ 2.瀏覽航班信息 ☆-------- \n\n"
" -------- ☆ 3.修改航班信息 ☆-------- \n\n"
" -------- ☆ 4.查找航班信息 ☆-------- \n\n"
" -------- ☆ 5.刪除航班信息 ☆-------- \n\n"
" -------- ☆ 6.訂票信息 ☆-------- \n\n"
" -------- ☆ 7.退票信息 ☆-------- \n\n"
" -------- ☆ 0.退出 ☆-------- \n\n");
printf("================================================================================\n");
printf("請在0-7中選擇以回車鍵結束:\n\n");
scanf("%d",j);
switch(j)
{
case 1: input();//調用輸入模塊
break;
case 2:print();//調用打印模塊
break;
case 3:xiugai();//調用修改模塊
break;
case 4:search();//調用查找模塊
break;
case 5:shanchu(); //調用刪除模塊
break;
case 6:dingpiao();//調用訂票模塊
break;
case 7:tuipiao();//調用退票模塊
break;
case 0:;
break;
}
}while(j!=0); //判斷結束
printf("謝謝使用,再見!\n");
}//主函數結束
void input()//打印模塊程序
{
char f[]="2008china"; //設置密碼
int y;
printf("請輸入密碼并以回車鍵結束:\n\n");
scanf("%s",f); //讀取密碼
if(strcmp(f,"2008china")==0)
{
printf("請依次輸入航班信息(機票數位0結束輸入):\n\n"
"完成輸入信息請鍵入w以回車鍵結束\n\n"); //打印提示信息
printf("--------------------------------------------------------------------------\n");
for(i=0;iN;i++)
{
printf("請輸入航班號:\n");
scanf("%d",s[i].num); //讀取航班號
printf("請輸入起始站:\n");
scanf("%s",s[i].start);//讀取起始站
printf("請輸入終點站:\n");
scanf("%s",s[i].over);//讀取終點站
printf("請輸入時間:\n");
scanf("%s",s[i].time);//讀取時間
printf("請輸入機票數(機票數為0結束輸入):\n",m);
scanf("%d",s[i].count);//讀取機票數
m++;
printf("第%d個信息已經輸完是否繼續?按任意鍵繼續,按 0結束",m);
scanf("%d",y);
if(y==0)
cad如何轉換成pdf格式
在添加打印機里添加一個虛擬Adobe PDF打印,添加好后你的cad圖就選擇Adobe PDF進行打印,然后直接就叫你保存pdf文件了
求PASCAL初賽級的題目
noip初賽模擬題一套
一、選擇題(共20題,每題1.5分,共計30分。每題有5個備選答案,前10個題為單選題,即
每題有且只有一個正確答案,選對得分;后10題為不定項選擇題,即每題有1至5個正確答案,只
有全部選對才得分)。
1.微型計算機的性能主要取決于( )。
A)內存 B)主板 C)中央處理器 D)硬盤 E)顯示器
2. 128KB的存儲器用十六進制表示,它的最大的地址碼是( )
A)10000 B)EFFF C)1FFFF D)FFFFF E)FFFF
3.能將高級語言程序轉換為目標程序的是( ).
A)調試程序 B)解釋程序 C)編輯程序 D)編譯程序 E)連接程序
4.A=11001010B,B=00001111B,C=01011100B,則A∨B∧C=( )B
A)01011110 B)00001111 C)01011100 D)11001110 E)11001010
5.計算機病毒傳染的必要條件是( ) 。
A)在內存中運行病毒程序
B)對磁盤進行讀寫操作
C)在內存中運行含有病毒的可執行程序
D)復制文件
E)刪除文件
6. TCP/IP協議共有( )層協議
A)3 B)4 C)5 D)6 E)7
7.192.168.0.1是屬于( ).
A)A類地址 B)B類地址 B)C類地址 D)D類地址 E)E類地址
8.對給定的整數序列(54,73,21,35,67,78,63,24,89)進行從小到大的排序時,采用快速排序的第
一趟掃描的結果是( ).
A)(24,21,35,54,67, 78,63,73,89)
B)(24,35,21,54,67, 78,63,73,89)
C)(24,21,35,54,67, 63,73,78,89)
D)(21,24,35,54,63, 67,73,78,89)
E)(24,21,35,54,67, 63,73,78,89)
9.一棵n個結點的完全二叉樹,則二叉樹的高度h為( ).
A)n/2 B)log2n C)(log2n)/2 D) [log2n]+1 E)2n-1
10.下圖對該圖進行廣度優先拓樸排序得到的頂點序列正確的是( ).
A)1,2,3,4,5,6
B)1,3,2,4,5,6
C)1,3,2,4,6,5
D)1,2,3,4,6,5,
E)1,3,2,4,5,6
11.下列屬于馮.諾依曼計算機模型的核心思想是( ).
A)采用二進制表示數據和指令;
B)采用”存儲程序”工作方式
C)計算機硬件有五大部件(運算器、控制器、存儲器、輸入和輸出設備)
D)結構化程序設計方法
E)計算機軟件只有系統軟件
12.下列屬于輸入設備的是( ).
A)打印機 B)掃描儀 C)光筆 D)鼠標 E)顯示器
13.算式(1000)10-(100)16-(10)8的結果是( ).
A)(890)10 B)(986)8 C)(1011100000)2 D)(2E0)16 E)(736)10
14.下面關于算法的正確的說法是( )
A)算法必須有輸出
B)算法必須在計算機上用某種語言實現
C)算法不一定有輸入
D)算法必須在有限步執行后能結束
E)算法的每一步驟必須有確切的定義
15.下列關于十進制數100的正確說法是( ).
A)原碼為01100100B
B)反碼為64H
C)反碼為9BH
D)補碼為64H
E)補碼為9BH
16.關于windows系統中的窗口和對話框的說法正確的是( ).
A)對話框能移動和改變大小
B)窗口能移動和改變大小
C)對話框只能移動和但不能改變大小
D)對話框不能移動但能改變大小
E)窗口能移動和但不能改變大小
17.下列邏輯運算正確的是( )。
A) A·(A + B )= A
B) A +(A·B)= A
C) A·(B + C )= A·B + A·C
D) A +(B·C)=(A + B)·(A + C)
E) A+1=A
18.下列關于排序說法正確的是( ).
A)插入排序、冒泡排序是穩定的
B)選擇排序的時間復雜性為O(n2)
C)選擇排序、希爾排序、快速排序、堆排序是不穩定的
D)希爾排序、快速排序、堆排序的時間復雜性為O(nlog2n)
E)快速排序是速度最快的排序
19.對于一個大小為3的棧,若輸入隊列為123456,則下列輸出隊列有可能的是( )。
A)123456 B)654321 C)432165 D)431256 E)321654
20. 設有一個含有13個元素的Hash表(0~12),Hash函數是:H(key)=key % 13,其中% 是求余數
運算。用二次探查法解決沖突,則對于序列(8、31、20、33、18、53、27),則下列說法正確
作者: maold 2007-5-22 20:57 回復此發言
--------------------------------------------------------------------------------
2 回復:noip初賽模擬題一套
的是( ) 。
A)27在1號格子中
B)33在6號格子中
C)31在5號格子中
D)20在7號格子中
E)18在4號格子中
二.問題求解(5分*2=10分)
1.一個商場有m種顏色的小球,每種小球足夠多,在這m種小球中挑選n個小球的選法有多少種?
如 m=2,n=3 時有4種選法分別是:兩種小球的個數分別為03,12,21,30.問:當m=4,n=4時
選法數=__________。
2.如果一棵m度樹中有n1個度為1的結點,n2個度為2的結點,…….有
nm個度為m的結點,則該樹中葉結點的的個數=______________.
三.閱讀程序寫出正確的程序運行結果(4分*8=32分)
1.program t1;
var n:integer;
function count(n:integer):integer;
begin
if n=1 then count:=0 else
if n mod 2=0 then count:=count(n div 2)+1 else
count:=count(n*3+1)+1;
end;
begin
readln(n);
writeln(count(n));
end.
輸入:99 輸出:
2.program t2;
var hi,lo:integer;
procedure pl(m,n:integer;var hi,lo:integer);
var I:integer;
begin
I:=n;hi:=0;lo:=0;
Repeat
I:=I-1;lo:=lo+m;
If lo=10000 then
begin
Lo:=lo-10000;
Hi:=hi+1;
End;
Until I=0;
Write(hi:4,’, ‘,lo:4);
End;
Begin
P1(200,343,hi,lo);
End.
輸出:
3.program t3;
Var d1,d2,X,Min : real;
begin
Min:=10000; X:=3;
while X 15 do
begin
d1:=sqrt(9+(X-3)*(X-3));
d2:=sqrt(4+(15-X)*(15-X));
if (d1+d2) Min then Min:=d1+d2;
X:=x+0.001;
end;
writeln(Min:10:2);
end.
輸出:
4.program t4;
var i,k,n:integer;
x,w:array[1..500] of integer;
begin
readln(n);
for i:=1 to n do
begin
x[i]:=0;w[i]:=1;
end;
for i:=2 to trunc(sqrt(n))+1 do
if x[i]=0 then
begin
k:=i*i;
while K=n do
begin
x[k]:=i;
k:=k+i;
end;
end;
for i:=n downto 1 do
if x[i]0 then
begin
w[x[i]]:=w[x[i]]+w[i];
w[i div x[i]]:=w[i div x[i]]+w[i];
w[i]:=0;
end;
writeln(w[2],w[3]:5,w[5]:5);
end.
輸入:20 輸出:
四.完善程序題(4分*7=28分)
1. 降序組合.給定兩個自然數n,r(nr),輸出從數1 到n中按降序順序取r個自然數的所有
組合.例如,n=5,r=3時,有如下組合:
5 4 3
5 4 2
5 4 1
5 3 2
5 3 1
5 2 1
4 3 2
4 3 1
4 2 1
3 2 1
程序如下:
program tk1;
var n,r,i,j:integer;
a:array[1..20] of integer;
begin
write('n,r=');
repeat
readln(n,r);
until nr;
i:=1;a[1]:=n;writeln('result:');
repeat
if ir then
if a[i]r-i then
begin
___(1)___;i:=i+1;
end
else begin
___(2)___;
a[I]:=a[I]-1 end
else
begin
for j:=1 to r do write(a[j]:3);
writeln;
if a[r]=1 then
begin
i:=i-1; a[i]:=a[i]-1;
end else ___(3)___
end;
until a[1]=r-1;
end.
2. 現在政府計劃在某個區域內的的城市間架設高速公路,以使任意兩個城市間能夠直接或
間接到達,怎樣修路,費用最小。
輸入文件:第一行一個整數 n(n=100)表示城市數目。
第二行至第n+1行每行兩個數xi,yi(0=xi,yi=100)表示第i個城市的坐標(單位:千米);
輸出最小費用(每千米一個單位價格)。
程序如下:
program t6;
const maxn=100;
type tcity=record
x,y:real
end;
var c:array[1..maxn] of tcity;
d:array[1..maxn,1..maxn] of real;
p:array[1..maxn] of integer;
n,i,j,k:integer;
a,min:real;
begin
readln(n);
for i:=1 to n do readln(c[i].x,c[i].y);
for i:=1 to n do
for j:=1 to n do
d[i,j]:=sqrt(sqr(c[i].x-c[j].x)+sqr(c[i].y-c[j].y));
p[1]:=0;
for i:=2 to n do ___(4)___
for i:=1 to n-1 do
begin
min:=1e10;
for j:=1 to n do
if ___(5)___ then
begin
min:=d[p[j],j];
___(6)___
end;
a:=a+d[p[k],k];
p[k]:=0;
for j:=1 to n do
if ___(7)___ then p[j]:=k;
end;
writeln(a:0:2);
end.
初賽模擬測試題答案:
一
1-10:CCDDB BCBDC
11-15:ABC;BCD;CDE;ACDE;ABD;
16-20:BC;ABCD;ACD;AE;BCDE
二
1: 35
2: n2+2n3+…+(m-1)nm+1
三
. 1: 25
2: 6.8600
3: 13.00
4: 18 8 4
四
. 1.a[i+1]:=a[i]-1
2. i:=i-1;
3. a[i]:=a[i]-1或a[r]:=a[r]-1;
4. p[i]:=1;
5. (p[j]0) and (d[p[j],j]) min)
6. k:=j;
7. (p[j]0) and (d[p[j],j]d[k,j])