【程序41】 题目:static定义静态变量的用法 1.程序分析: 2.程序源代码: #include"stdio.h" varfunc() { intvar=0; staticintstatic_var=0; printf("\40:varequal%d\n",var); printf("\40:staticvarequal%d\n",static_var); printf("\n"); var++; static_var++; } voidmain() {inti; for(i=0;i<3;i++) varfunc(); } ============================================================== 【程序42】 题目:学习使用auto定义变量的用法 1.程序分析: 2.程序源代码: #include"stdio.h" main() {inti,num; num=2; for(i=0;i<3;i++) {printf("\40:Thenumequal%d\n",num); num++; { autointnum=1; printf("\40:Theinternalblocknumequal%d\n",num); num++; } } } ============================================================== 【程序43】 题目:学习使用static的另一用法。 1.程序分析: 2.程序源代码: #include"stdio.h" main() { inti,num; num=2; for(i=0;i<3;i++) { printf("\40:Thenumequal%d\n",num); num++; { staticintnum=1; printf("\40:Theinternalblocknumequal%d\n",num); num++; } } } ============================================================== 【程序44】 题目:学习使用external的用法。 1.程序分析: 2.程序源代码: #include"stdio.h" inta,b,c; voidadd() {inta; a=3; c=a+b; } voidmain() {a=b=4; add(); printf("Thevalueofcisequalto%d\n",c); } ============================================================== 【程序45】 题目:学习使用register定义变量的方法。 1.程序分析: 2.程序源代码: voidmain() { registerinti; inttmp=0; for(i=1;i<=100;i++) tmp+=i; printf("Thesumis%d\n",tmp); } ============================================================== 【程序46】 题目:宏#define命令练习(1) 1.程序分析: 2.程序源代码: #include"stdio.h" #defineTRUE1 #defineFALSE0 #defineSQ(x)(x)*(x) voidmain() { intnum; intagain=1; printf("\40:Programwillstopifinputvaluelessthan50.\n"); while(again) { printf("\40:Pleaseinputnumber==>"); scanf("%d",&num); printf("\40:Thesquareforthisnumberis%d\n",SQ(num)); if(num>=50) again=TRUE; else again=FALSE; } } ============================================================== 【程序47】 题目:宏#define命令练习(2) 1.程序分析: 2.程序源代码: #include"stdio.h" #defineexchange(a,b){\/*宏定义中允许包含两道衣裳命令的情形,此时必须在最右边加上"\"*/ intt;\ t=a;\ a=b;\ b=t;\ } voidmain(void) { intx=10; inty=20; printf("x=%d;y=%d\n",x,y); exchange(x,y); printf("x=%d;y=%d\n",x,y); } ============================================================== 【程序48】 题目:宏#define命令练习(3) 1.程序分析: 2.程序源代码: #defineLAG> #defineSMA< #defineEQ== #include"stdio.h" voidmain() {inti=10; intj=20; if(iLAGj) printf("\40:%dlargerthan%d\n",i,j); elseif(iEQj) printf("\40:%dequalto%d\n",i,j); elseif(iSMAj) printf("\40:%dsmallerthan%d\n",i,j); else printf("\40:Nosuchvalue.\n"); } ============================================================== 【程序49】 题目:#if#ifdef和#ifndef的综合应用。 1.程序分析: 2.程序源代码: #include"stdio.h" #defineMAX #defineMAXIMUM(x,y)(x>y)?x:y #defineMINIMUM(x,y)(x>y)?y:x voidmain() {inta=10,b=20; #ifdefMAX printf("\40:Thelargeroneis%d\n",MAXIMUM(a,b)); #else printf("\40:Theloweroneis%d\n",MINIMUM(a,b)); #endif #ifndefMIN printf("\40:Theloweroneis%d\n",MINIMUM(a,b)); #else printf("\40:Thelargeroneis%d\n",MAXIMUM(a,b)); #endif #undefMAX #ifdefMAX printf("\40:Thelargeroneis%d\n",MAXIMUM(a,b)); #else printf("\40:Theloweroneis%d\n",MINIMUM(a,b)); #endif #defineMIN #ifndefMIN printf("\40:Theloweroneis%d\n",MINIMUM(a,b)); #else printf("\40:Thelargeroneis%d\n",MAXIMUM(a,b)); #endif } ============================================================== 【程序50】 题目:#include的应用练习 1.程序分析: 2.程序源代码: test.h文件如下: #defineLAG> #defineSMA< #defineEQ== #include"test.h"/*一个新文件50.c,包含test.h*/ #include"stdio.h" voidmain() {inti=10; intj=20; if(iLAGj) printf("\40:%dlargerthan%d\n",i,j); elseif(iEQj) printf("\40:%dequalto%d\n",i,j); elseif(iSMAj) printf("\40:%dsmallerthan%d\n",i,j); else printf("\40:Nosuchvalue.\n"); }
|