#include<stdio.h> double min(double u,double v); int main(void) { double x,y; printf("please enter 2 number/n"); while(scanf("%lf%lf",&x,&y)==2) { printf("the min is %f/n",min(x,y)); printf("please enter 2 number/n"); } getch(); return 0; } double min(double u,double v) { return u>v?u:v; } //递归 #include<stdio.h> void up_and_down(int n); int main(void) { up_and_down(1); getch(); return 0; } void up_and_down(int n) { printf("Level %d :n location %p/n",n,&n); if(n<4) { up_and_down(n+1); } printf("Level %d :n location %p/n",n,&n); } //递归--转化为二进制 #include<stdio.h> void to_binary(unsigned long n); int main(void) { unsigned long num; printf("Please enter an integer:/n"); while(scanf("%ul",&num)==1) { printf("Binary is:"); to_binary(num); putchar('/n'); printf("Please enter an integer:/n"); } getch(); return 0; } void to_binary(unsigned long n) { int r; r=n%2; if(n>=2) to_binary(n/2); putchar(r?'1':'0'); return ; } //旅游房间收费程序 #include<stdio.h> #include"hotel.h" int main(void) { int nights; double hotel_rate; int code; while((code=menu())!=QUIT) { switch(code) { case 1:hotel_rate=HOTEL1; break; case 2:hotel_rate=HOTEL2; break; case 3:hotel_rate=HOTEL3; break; case 4:hotel_rate=HOTEL4; break; default:hotel_rate=0.0; printf("Oops!/n"); break; } nights=getnights(); showprice(hotel_rate,nights); } printf("Thank you and goodbye!"); getch(); return 0; } //hotel.c 旅游管理函数 #include<stdio.h> #include"hotel.h" int menu(void) { int code,status; printf("/n%s%s/n",STARS,STARS); printf("Enter the number of the desired hotel:/n"); printf("1)Fairfield 2)Hotel Olympic/n"); printf("3)Chertworthy Plaza 4)The Stockton/n"); printf("5)quit/n"); printf("%s%s/n",STARS,STARS); while((status=scanf("%d",&code))!=1|| (code<1||code>5)) { if(status!=1) scanf("%*s"); printf("Please an integer from 1 to 5,please./n"); } return code; } int getnights(void) { int nights; printf("How many nights are needed?/n"); while(scanf("%d",&nights)!=1) { scanf("%*s"); printf("Please enter an integer,such as 2./n"); } return nights; } void showprice(double rate,int nights) { int n; double total=0.0; double factor=1.0; for(n=1;n<=nights;n++,factor*=DISCOUNT) total+=rate*factor; printf("The total cost will be $%0.2f./n",total); } //hotal.c常量定义和函数声明 #define QUIT 5 #define HOTEL1 80.00 #define HOTEL2 125.00 #define HOTEL3 155.00 #define HOTEL4 200.00 #define DISCOUNT 0.95 #define STARS "********************************" int menu(void); int getnights(void); void showprice(double,int); //查看变量的存储地址 #include<stdio.h> void mikado(int bah); int main(void) { int pooh=2; int bah=5; printf("IN main(),pooh=%d and &pooh=%p/n",pooh,&pooh); printf("In main(),bah=%d and &bah=%hp/n" ,bah,&bah); mikado(pooh); getch(); return 0; } void mikado(int bah) { int pooh=10; printf("In mikado(),pooh=%d and &pooh=%p/n",pooh,&pooh); printf("In mikado(),bah=%d and &bah=%p/n",bah,&bah); return; } //交换函数的错误版本 #include<stdio.h> void interchange(int u,int v); int main(void) { int x=5,y=10; printf("Originally x=%d and y=%d./n",x,y); interchange(x,y); printf("Now x=%d and y=%d ./n",x,y); getch(); return 0; } void interchange(int u,int v)//interchange使用的变量独立于函数main(),因此交换u和v的值对x,y没有任何影响。 { int temp; temp=u; u=v; v=temp; return; } #include<stdio.h> void chline(char ch,int i,int j); int main(void) { char c; int x,y; printf(" char x y/n"); c=getchar(); scanf(" %d %d",&x,&y); chline(c,x,y); getch(); return 0; } void chline(char ch,int i,int j) { int u,v; for(u=0;u<i;u++) { for(v=0;v<j;v++) putchar(ch); putchar('/n'); } return; } #include<stdio.h> void chline(char ch,int i,int j); int main(void) { char c; int x,y; printf(" char x y/n"); c=getchar(); scanf(" %d %d",&x,&y); chline(c,x,y); getch(); return 0; } void chline(char ch,int i,int j) { int u=0,v=0; for(u=0;u<i;u++) putchar(' '); for(u=i;u<=j;u++) putchar(ch); putchar('/n'); return; } #include<stdio.h> double larger(double *n,double *m); int main(void) { double x,y; scanf("%lf%lf",&x,&y); printf(" the larger is %f",larger(&x,&y)); getch(); return 0; } double larger(double *n,double *m) { return *n>*m?*n:*m; }