c语言程序设计经典100例,c语言程序设计经典例子,C语言程序设计50例(经典收藏)

c语言程序设计经典100例,c语言程序设计经典例子,C语言程序设计50例(经典收藏) 本文是对50个C语言编程小案例的详细分析和介绍,供有需要的朋友参考。 【方案一】题目:有1,2,3,4个数。你能编多少个不同的三位数?它们多少钱?1.程序分析:百位、十位、个位数能填的数字都是1、2、3、4。所有排列形成后,去掉不满足条件的排列。2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ int I,j,k;printf(' \ n ');for(I=1;i5;I) /*以下是三重循环*/for(j=1;j5;j)for(k=1;K5;k ) { if(我!=ki!=jj!=k) /*确保I,J,K互不相同*/printf ('%d,%d,% d \ n ',I,J,K);} getch();}=================================================利润(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.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ long int I;int bonus1,bonus2,bonus4,bonus6,bonus10,bonus;scanf('%ld ',I);bonus1=100000*0。1;bonus2=bonus1 100000 * 0.75bonus4=bonus2 200000 * 0.5bonus6=bonus4 200000 * 0.3bonus10=bonus6 400000 * 0.15if(i=100000)奖金=i * 0.1else if(I=200000)bonus=bonus 1(I-100000)* 0.075;else if(I=400000)bonus=bonus 2(I-200000)* 0.05;else if(I=600000)bonus=bonus 4(I-400000)* 0.03;else if(I=1000000)bonus=bonus 6(I-600000)* 0.015;else bonus=bonus 10(I-1000000)* 0.01;printf('奖金=%d ',奖金);getch();}============================================================1.方案分析:如果数字小于10万,先在数字上加100再开处方,再在数字上加268再开处方。如果开药后的结果符合以下条件,则为结果。请看具体分析:2。程序源代码:复制代码如下:# include ' math . h ' # include ' stdio . h ' # include ' conio . h ' main(){ long int I,x,y,z;for(I=1;i100000I){ x=sqrt(I 100);/*x是方根加100后的结果*/y=sqrt(I 268);/*y是根号加168后的结果*/if(x*x==i 100y*y==i 268) /*如果一个数的平方根等于那个数,说明这个数是一个完全平方数*/printf('\n%ld\n ',I);} getch();}============================================================1.方案分析:以3月5日为例,你先把前两个月加起来,再加5天,就是今年的日期。特殊情况下,闰年输入月份大于3时,要考虑多加一天。 2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ int day,month,year,sum,leapprintf(' \ n请输入年、月、日\ n ');scanf('%d,%d,%d ',年,月,日);Switch(month) /*先计算某个月之前的总天数*/{ case 1:sum=0;打破;情况二:sum=31打破;案例三:sum=59打破;情况四:sum=90打破;情况五:sum=120打破;案例6:sum=151;打破;案例7:sum=181;打破;案例8:sum=212;打破;案例9:sum=243;打破;案例10:sum=273;打破;案例11:sum=304;打破;案例12:sum=334;打破;默认值:printf('数据错误');打破;} sum=sum日;/*加上某一天的天数*/if(year @ 0==0 | |(year % 4==0 year 0!=0)) /*判断是否是闰年*/leap=1;else leap=0;If(leap==1month2) /*如果是闰年,月份大于2,总天数要加一天*/sum;printf('今天是第%dth天。',sum);getch();}============================================================1.程序分析:我们尽量把最小的数放在x上,先把x和y比较,如果是xy,就把x和y的值交换,然后把x和z比较,如果是xz,就把x和z的值交换,这样x就可以最小化。2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ int x,y,z,t;scanf('%d%d%d ',x,y,z);if(xy){ t=x;x=y;y=t;}/*交换x,y */if(xz) {t=z的值;z=x;x=t;}/*交换x和z的值*/if(yz){ t=y;y=z;z=t;}/*交换z,y */printf的值('从小到大:% d% d \ n ',x,y,z);getch();}============================================================1.程序分析:可以先把字母C写在带' * '号的纸上,然后分支输出。2.程序源代码:复制代码代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ printf(' hello c-world!\ n’);printf(' * * * * \ n ');printf(' * \ n ');printf(' * \ n ');printf(' * * * * \ n ');getch();}============================================================1.程序分析:一共256个字符。不同的角色,不同的图形。2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ char a=176,b=219printf('%c%c%c%c%c\n ',b,a,a,a,b);printf('%c%c%c%c%c\n ',a,b,a,b,a);printf('%c%c%c%c%c\n ',a,a,b,a,a);printf('%c%c%c%c%c\n ',a,b,a,b,a);printf('%c%c%c%c%c\n ',b,a,a,a,b);getch();}============================================================1.程序分析:考虑分支和列,一共9行9列,I控制行,J控制行。2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ int I,j,resultprintf(' \ n ');for(I=1;i10I){ for(j=1;j10j){ result=I * j;printf('%d*%d=%-3d ',I,j,result);/*-3d表示左对齐,占3位数*/} printf(' \ n ');/*每行后换行*/} getch();}=============================================================1.程序分析:我用j控制行和列,根据i j和的变化,控制黑方块或白方块的输出。2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ int I,j;for(I=0;i8;I){ for(j=0;j8;j ) if((i j)%2==0) printf('%c%c ',219,219);else printf(' ');printf(' \ n ');} getch();}=============================================================1.程序分析:I控制行,J控制列,J根据I的变化控制输出黑方块的个数。 2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ int I,j;printf(' \ 1 \ 1 \ n ');/*输出两个笑脸*/for(I=1;i11I){ for(j=1;j=I;j ) printf('%c%c ',219,219);printf(' \ n ');} getch();}【方案11】题目:经典问题:有一对兔子,从出生后第3个月开始,每个月都要出生。小兔子长到第3个月的时候,每个月都会再生一对兔子。如果兔子不死,每个月兔子总数是多少?1.程序分析:兔子的规律是序列1,1,2,3,5,8,13,21.2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ long f1,F2;int I;f1=F2=1;for(I=1;i=20{ printf('ld ld',f1,f2 };if(I % 2==0)printf(' \ n ');/*控制输出,每行四个*/f1=f1 F2;/*前两个月相加,赋给第三个月*/F2=f1 F2;/*前两个月相加,赋给第三个月*/} getch();}============================================================1.程序分析:判断素数的方法:用一个数除2到sqrt(这个数),如果能整除,说明这个数不是素数,否则就是素数。2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' # include ' math . h ' main(){ int m,I,k,h=0,leap=1;printf(' \ n ');for(m=101;m=200m){ k=sqrt(m ^ 1);for(I=2;I=k;I)if(m % I==0){ leap=0;打破;} if(leap) { printf('%-4d ',m);h;if(h==0)printf(' \ n ');} leap=1;} printf(' \ n总数为%d ',h);getch();}==================================================举个例子:153是一个“水仙花号”因为153=1的三次方+5的三次方+3的三次方。1.程序分析:用for循环控制100-999个数,每个数分解成10,10,100位。2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ int I,j,k,n;printf('水花'号是:');for(n=100;n1000n){ I=n/100;/*分解几百位*/j=n/10;/*分解十位数*/k=n;/*分解一点*/if(I * 100J * 10K==I * I * I J * J * J K * K * K)printf(' %-5D ',n);} getch();}====================================================例如,输入90,打印出90=2*3*3*5。程序分析:分解N的质因数,首先要找到最小的质数K,然后按照以下步骤完成:(1)如果这个质数刚好等于N,就说明分解质因数的过程结束了,可以打印出来了。(2)如果nk,但N能被K整除,你要把K的值打印出来,N除以K的商作为新的正整数,重复第一步。(3)如果n不能被k整除,用k 1作为k的值,重复第一步。2.程序源代码:复制代码如下:/*郑int分*/# include ' stdio . h ' # include ' conio . h ' main(){ int n,I;printf(' \ n请输入一个数字:\ n ');scanf('%d ',n);printf('%d=',n);for(I=2;I=n;i ) while(n!=i) { if(n%i==0) { printf('%d* ',I);n=n/I;} else破;} printf('%d ',n);getch();}=============================================================1.节目分析:(ab)?这是条件运算符的一个基本例子。2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ int score;炭化等级;printf('请输入分数\ n ');scanf('%d ',分数);'等级=分数=90?'' a ':(分数=60?'b ':' C ');printf('%d属于%c ',分数,等级);getch();}=============================================================1.程序分析:采用滚动法。 2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ int a,b,num1,num2,tempprintf('请输入两个数字:\ n ');scanf('%d,%d ',num1,num 2);If(num1num2)/*交换两个数,使大的数放在num 1 */{ temp=num 1;num1=num2num2=temp} a=num1b=num2而(b!=0)/*用滚动法直到b为0 */{ temp=a % b;a=b;b=温度;} printf('gongyueshu:%d\n ',a);printf('宫北舒:%d\n ',num 1 * num 2/a);getch();}=============================================================1.程序分析:使用while语句,前提是输入字符不是' \n'.2。程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ char c;int字母=0,空格=0,数字=0,其他=0;printf('请输入一些字符\ n ');while((c=getchar())!=' \ n '){ if(c=' A ' c=' Z ' | | c=' A ' c=' Z ')字母;else if(c==' ')空格;else if(c='0'c='9 ')数字;else其他;} printf(' all in all:char=% d space=% d digit=% d others=% d \ n ',字母、空格、数字、其他);getch();}=================================================比如2 22 222 222 2222(此时五个数相加在一起),用键盘控制几个数相加在一起。1.程序分析:关键是计算每一项的价值。2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ int a,n,count=1;long int sn=0,TN=0;printf('请输入a和n \ n ');scanf('%d,%d ',a,n);printf('a=%d,n=%d\n ',a,n);while(count=n){ TN=TNA;sn=sn tna=a * 10数数;} printf('a aa.=%ld\n ',序列号);getch();}=====================================================比如6=1+2+3。程序找出所有1000以内的完全数。1.程序分析:请参考上一页的程序-程序14.2。程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ static int k[10];int i,j,n,s;for(j=2;j1000j){ n=-1;s=j;for(I=1;ij;I){ if((j % I)==0){ n;s=s-I;k[n]=I;} } if(s==0) { printf('%d是万树',j);for(I=0;在;i ) printf('%d ',k);printf('%d\n ',k[n]);} } getch();}====================================================再问一遍,第10次着陆时过了多少米?第10次反弹有多高?1.程序分析:见下文注2。程序源代码:复制代码如下:# include ' stdio . h ' # include ' stdio . h ' main(){ floatsn=100.0,HN=sn/2;int n;for(n=2;n=10n){ sn=sn ^ 2 * HN;/*第n次落地时通过的总米数*/HN=HN/2;/*第n次反弹的高度*/} printf('道路合计为% f \ n ',sn);printf('第十个是%f米\n ',HN);getch();}【节目21】题目:猴子吃桃子的问题:第一天,猴子摘了一些桃子,马上吃了一半,但是没有上瘾。他们又吃了一个,第二天早上,他们把剩下的桃子吃了一半,又吃了一个。每天早上吃前一天剩下的一半一个。到了第10天早上,再想吃的时候,看到只剩一个桃子了。问问你第一天挑了几个?1.程序分析:采用逆向思维的方法,由后向前推断。2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ int day,x1,x2;日=9;x2=1;while(day 0){ x1=(x2 1)* 2;/*第一天的桃子数是第二天的两倍加1 */x2=x1;日-;} printf('合计为%d\n ',x1);getch();}=================================================A队由A、B、C三名队员组成,B队由x、Y、z、Y、z三名队员组成,抽签决定了比赛名单。有人向选手询问比赛名单。a说他不跟X比,C说他不跟X和z比,请编程找出三队球员的名字。 1.程序分析:判断素数的方法:用一个数除2到sqrt(这个数),如果能整除,说明这个数不是素数,否则就是素数。2.程序源代码:复制代码代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ char I,j,k;/*i是A的对手,J是B的对手,K是C的对手*/for(I=' x ';i=' zI)for(j=' x ';j=' zj ) { if(我!=j)for(k=' x ';k=' zk ) { if(我!=kj!=k) { if(i!='x'k!='x'k!='z') printf('顺序是a - %c\tb - %c\tc - %c\n ',I,j,k);} } } getch();}============================================================2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ int I,j,k;for(I=0;I=3;I){ for(j=0;j=2-I;j)printf(“”);for(k=0;k=2 * I;k)printf(' * ');printf(' \ n ');} for(I=0;I=2;I){ for(j=0;j=I;j)printf(“”);for(k=0;k=4-2 * I;k)printf(' * ');printf(' \ n ');} getch();}============================================================1.程序分析:请掌握分子分母的变化规律。2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ int n,t,number=20浮点a=2,b=1,s=0;for(n=1;n=数字;n){ s=s a/b;t=a;a=a b;b=t;/*这部分是程序的关键。请猜一下T */} printf('sum是%9.6f\n ',s)的作用;getch();}============================================================3!20!和1。程序分析:这个程序只是把累加变成了累加乘法。2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ float n,s=0,t=1;for(n=1;n=20n){ t *=n;s=t;} printf('1 2!3!20!=%e\n ',s);getch();}============================================================.1.程序分析:递归公式:fn=fn_1*4!2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ int I;int fact();for(I=0;i5;i ) printf('\40:%d!=%d\n ',I,fact(I));getch();} int fact(j)int j;{ int sumif(j==0)sum=1;else sum=j * fact(j-1);返回总和;}============================================================1.程序分析:2。程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ int I=5;虚空佩林(int n);printf(' \ 40:');佩林(我);printf(' \ n ');getch();} void Palin(n)int n;{ char nextif(n=1){ next=getchar();printf(' \ n \ 0:');putchar(下一个);} else { next=getchar();佩林(n-1);putchar(下一个);} }====================================================他说他比第四个人大2岁。问第四个人的年龄,他说比第三个人大2岁。问第三个人,说他比第二个人大两岁。问第二个人,说他比第一个人大两岁。最后我问了第一个人,他说他10岁。请问第五个人多大了?1.程序分析:使用递归的方法,递归可以分为两个阶段:后退和递归。如果你想知道第五个人的年龄,你需要知道第四个人的年龄,以此类推。推到第一个人(10岁)再推回去。2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' age(n)int n;{ int c;if(n==1)c=10;else c=年龄(n-1)2;返回(c);}main(){ printf('%d ',age(5));getch();}============================================================ 1.程序分析:学会分解每个数字,解释如下:(这里是师专002班赵鑫提供的简单算法)2。程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ long a,b,c,d,e,e. scanf('%ld ',x);a=x/10000;/*分解一万位*/b=x000/1000;/*分解千位*/c=x00/100;/*分解百位*/d=x 0/10;/*分解十位*/e=x;/*分解一点*/if (a!=0) printf('有5个,%ld %ld %ld %ld\n ',e,d,c,b,a);else if (b!=0) printf('有4个,%ld %ld %ld\n ',e,d,c,b);else if (c!=0) printf('有3个,%ld %ld %ld\n ',e,d,c);else if (d!=0) printf('有2个,%ld %ld\n ',e,d);else if (e!=0) printf('有1,%ld\n ',e);getch();}================================================也就是12321是回文,一位数等于一万位数,十位数等于一千位数。1.方案分析:同29例。2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){龙哥,石,钱,万,x;scanf('%ld ',x);wan=x/10000;qian=x000/1000;shi=x0/10;ge=x;if(ge==石湾==钱)/*位等于一万位,十位等于一千位*/printf('此数为一汇文\ n ');else printf('本号不是汇文\ n ');getch();}【程序31】题目:请输入星期几的第一个字母,判断星期几。如果第一个字母相同,继续判断第二个字母。1.程序分析:用情景陈述比较好。如果第一个字母相同,用情景陈述或if陈述判断第二个字母。 2.程序源代码:复制代码代码如下:# include ' stdio。h ' include ' conio。h ' void main(){ char letter;printf('请输入某一天的首字母\ n’);while((letter=getch())!='Y')/*当所按字母为Y时才结束*/{开关(字母){ case ' S ':printf('请输入第二个字母\ n’);if((letter=getch())==' a ')printf(' Saturday \ n ');else if((letter=getch())==' u ')printf(' Sunday \ n ');else printf('数据错误\ n’);打破;case“F”:printf(' Friday \ n ');打破;case“M”:printf(' Monday \ n ');打破;大小写“T”:printf('请输入第二个字母\ n’);if((letter=getch())==' u ')printf(' Tuesday \ n ');else if((letter=getch())==' h ')printf('星期四\ n’);else printf('数据错误\ n’);打破;大小写“W”:printf(“星期三\ n’);打破;默认值:printf('数据错误\ n’);} } getch();}==============================================================【程序32】题目:按任意键变色,要不要试试。请快点!1.程序分析:2.程序源代码:复制代码代码如下:# include ' conio。h ' # include ' stdio。h ' void main(void){ int color;for(color=0;颜色8;颜色){文本背景(颜色);/*设置文本的背景颜色*/cprintf('这是color %d\r\n ',color);cprintf('按任意键继续\ r \ n ');getch();/*输入字符看不见*/}}==============================================================【程序33】题目:学习格托克斯()与clrscr()函数1.程序分析:2.程序源代码:复制代码代码如下:# include ' conio。h ' # include ' stdio。h ' void main(void){ clr SCR();/*清屏函数*/文本背景(2);gotoxy(1,5);/*定位函数*/cprintf('第5行第一列的输出\ n’);文字背景(3);gotoxy(20,10);cprintf('第10行第20列的输出\ n’);getch();}==============================================================【程序34】题目:练习函数调用1.程序分析:2.程序源代码:复制代码代码如下:# include ' stdio。h ' include ' conio。h ' void Hello _ world(void){ printf(' Hello,world!\ n’);} void three _ hellos(void){ int counter;对于(计数器=1;计数器=3;counter)hello _ world();/*调用此函数*/} void main(void){ three _ hellos();/*调用此函数*/getch();}==============================================================【程序35】题目:文本颜色设置1.程序分析:2.程序源代码:复制代码代码如下:# include ' stdio。h ' include ' conio。h ' void main(void){ int color;for(color=1;颜色16;color ) { textcolor(颜色);/*设置文本颜色*/cprintf('这是color %d\r\n ',color);}文字颜色(128 15);cprintf('这是闪烁的\ r \ n ');getch();}==============================================================【程序36】题目:求100之内的素数1.程序分析:2.程序源代码:复制代码代码如下:# include ' stdio。h ' #包含'数学。h ' # define N 101 main(){ int I,j,line,a[N];for(I=2;在;I)a=I;for(I=2;isqrt(N);I)for(j=I ^ 1;jN;j ) { if(a!=0a[j]!=0)if(a[j]% a==0)a[j]=0;} printf(' \ n ');for(i=2,line=0;在;i ) {如果(答!=0) { printf(']',a);线;} if(line==10){ printf(' \ n ');line=0;} } getch();}==============================================================【程序37】题目:对10个数进行排序1.程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换,下次类推,即用第二个元素与后8个进行比较,并进行交换。 2.程序源代码:复制代码代码如下:# include ' stdio . h ' # include ' conio . h ' # define n10 main(){ int I,j,min,tem,a[n];/*输入数据*/printf('请输入十个数字:\ n ');for(I=0;在;i ) { printf('a[%d]=',I);scanf('%d ',a);} printf(' \ n ');for(I=0;在;i ) printf(']',a);printf(' \ n ');/* sort ten num */for(I=0;iN-1;I){ min=I;for(j=I ^ 1;jN;j)if(a[min]a[j])min=j;tem=a;a=a[min];a[min]=tem;}/*输出数据*/printf('排序后\ n ');for(I=0;在;i ) printf(']',a);getch();}=============================================================2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h '/*如果使用的是TC系列编译器,可能需要添加下面这句话*/static void dummy float(float * x){ float y;dummy float(y);}main(){ float a[3][3],求和=0;int i,j;printf('请输入矩形元素:\ n ');for(I=0;i3;I)for(j=0;J3;j ) scanf('%f ',a[j]);for(I=0;i3;I)总和=总和a;printf('对角仙他是%6.2f ',sum);getch();}=====================================================现在输入一个数,按照原来的规则插入数组。1.程序分析:先判断这个数是否大于最后一个数,再考虑插入中间数的情况。插入后,此元素后的数字依次向后移动一个位置。2.程序源代码:复制代码如下:# include ' stdio . h ' # include ' conio . h ' main(){ int a[11]={ 1,4,6,9,13,16,19,28,40,100 };int temp1,temp2,number,end,I,j;printf('原始数组为:\ n ');for(I=0;i10i ) printf(']',a);printf(' \ n ');printf('插入新号码:');scanf('%d ',编号);end=a[9];if(number end)a[10]=数字;else { for(I=0;i10I){ if(number){ temp 1=a;a=数字;for(j=I ^ 1;j11j){ temp 2=a[j];a[j]=temp 1;temp1=temp2}破;} } } for(I=0;i11i ) printf('m ',a);getch();}=============================================================1.程序分析:把第一个换成最后一个。2.程序源代码:复制代码如下:#include 'stdio.h '#include "conio.h"#define N 5main(){? int a[N]={9,6,5,4,1},i,temp;? printf("\n original array:\n");? for(i=0;i<N;i++)??? printf("%4d",a);? for(i=0;i<N/2;i++)? {??? temp=a;??? a=a[N-i-1];??? a[N-i-1]=temp;? }? printf("\n sorted array:\n");? for(i=0;i<N;i++)??? printf("%4d",a);? getch();}==============================================================【程序41】题目:学习static定义静态变量的用法   1.程序分析:2.程序源代码:复制代码 代码如下:#include "stdio.h"#include "conio.h"varfunc(){? int var=0;? static int static_var=0;? printf("\40:var equal %d \n",var);? printf("\40:static var equal %d \n",static_var);? printf("\n");? var++;? static_var++;}void main(){? int i;? for(i=0;i<3;i++)??? varfunc();? getch();}==============================================================【程序42】题目:学习使用auto定义变量的用法1.程序分析:      2.程序源代码:复制代码 代码如下:#include "stdio.h"#include "conio.h"main(){? int i,num;? num=2;? for(i=0;i<3;i++)? {??? printf("\40: The num equal %d \n",num);??? num++;??? {????? auto int num=1;????? printf("\40: The internal block num equal %d \n",num);????? num++;??? }? }? getch();}==============================================================【程序43】题目:学习使用static的另一用法。   1.程序分析:2.程序源代码:复制代码 代码如下:#include "stdio.h"#include "conio.h"main(){? int i,num;? num=2;? for(i=0;i<3;i++)? {??? printf("\40: The num equal %d \n",num);??? num++;??? {????? static int num=1;????? printf("\40:The internal block num equal %d\n",num);????? num++;??? }? }? getch();}==============================================================【程序44】题目:学习使用external的用法。1.程序分析:2.程序源代码:复制代码 代码如下:#include "stdio.h"#include "conio.h"int a,b,c;void add(){? int a;? a=3;? c=a+b;}void main(){? a=b=4;? add();? printf("The value of c is equal to %d\n",c);? getch();}==============================================================【程序45】题目:学习使用register定义变量的方法。1.程序分析:2.程序源代码:复制代码 代码如下:#include "stdio.h"#include "conio.h"void main(){? register int i;? int tmp=0;? for(i=1;i<=100;i++)? tmp+=i;? printf("The sum is %d\n",tmp);? getch();}==============================================================【程序46】题目:宏#define命令练习(1)   1.程序分析:2.程序源代码:复制代码 代码如下:#include "stdio.h"#include "conio.h"#define TRUE 1#define FALSE 0#define SQ(x) (x)*(x)void main(){? int num;? int again=1;? printf("\40: Program will stop if input value less than 50.\n");? while(again)? {??? printf("\40:Please input number==>");??? scanf("%d",&num);??? printf("\40:The square for this number is %d \n",SQ(num));??? if(num>=50)????? again=TRUE;??? else????? again=FALSE;? }? getch();}==============================================================【程序47】题目:宏#define命令练习(2)1.程序分析:            2.程序源代码:复制代码 代码如下:#include "stdio.h"#include "conio.h"/*宏定义中允许包含两道衣裳命令的情形,此时必须在最右边加上""*/#define exchange(a,b) { \??????????????????????? int t;\??????????????????????? t=a;\??????????????????????? a=b;\??????????????????????? b=t;\????????????????????? }void main(void){? int x=10;? int y=20;? printf("x=%d; y=%d\n",x,y);? exchange(x,y);? printf("x=%d; y=%d\n",x,y);? getch();}==============================================================【程序48】题目:宏#define命令练习(3)   1.程序分析:2.程序源代码:复制代码 代码如下:#define LAG >#define SMA <#define EQ ==#include "stdio.h"#include "conio.h"void main(){? int i=10;? int j=20;? if(i LAG j)??? printf("\40: %d larger than %d \n",i,j);??? else if(i EQ j)????? printf("\40: %d equal to %d \n",i,j);????? else if(i SMA j)??????? printf("\40:%d smaller than %d \n",i,j);????? else??????? printf("\40: No such value.\n");? getch();}==============================================================【程序49】题目:#if #ifdef和#ifndef的综合应用。1. 程序分析:2.程序源代码:复制代码 代码如下:#include "stdio.h"#include "conio.h"#define MAX#define MAXIMUM(x,y) (x>y)?x:y#define MINIMUM(x,y) (x>y)?y:xvoid main(){? int a=10,b=20;#ifdef MAX? printf("\40: The larger one is %d\n",MAXIMUM(a,b));#else? printf("\40: The lower one is %d\n",MINIMUM(a,b));#endif#ifndef MIN? printf("\40: The lower one is %d\n",MINIMUM(a,b));#else? printf("\40: The larger one is %d\n",MAXIMUM(a,b));#endif#undef MAX#ifdef MAX? printf("\40: The larger one is %d\n",MAXIMUM(a,b));#else? printf("\40: The lower one is %d\n",MINIMUM(a,b));#endif#define MIN#ifndef MIN? printf("\40: The lower one is %d\n",MINIMUM(a,b));#else? printf("\40: The larger one is %d\n",MAXIMUM(a,b));#endif? getch();}

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • c语言调用退出函数 c语言退出整个程序怎么写
  • c语言中怎么给函数初始化 c语言的初始化语句
  • c语言编写函数计算平均值 c语言求平均函数
  • 详解c语言中的字符串数组是什么,详解c语言中的字符串数组结构,详解C语言中的字符串数组
  • 表达式求值c++实现,c语言实现表达式求值
  • 看懂c语言基本语法,C语言详解,C语言的基本语法详解
  • 用c语言实现快速排序算法,排序算法设计与实现快速排序C语言,C语言实现快速排序算法实例
  • 深入解析c语言中函数指针的定义与使用方法,深入解析c语言中函数指针的定义与使用情况,深入解析C语言中函数指针的定义与使用
  • 描述E-R图,E-R图举例,关于C语言中E-R图的详解
  • 折半查找法C语言,折半查找算法(算法设计题)
  • 折半查找法C语言,c语言折半法查找数据,C语言实现折半查找法(二分法)
  • 扫雷小游戏c++代码设计,c语言扫雷游戏源代码,C语言实现扫雷小游戏详细代码
  • 怎样统计程序代码行数,C语言统计行数,C#程序员统计自己的代码行数
  • 基于c语言的贪吃蛇游戏程序设计,用c语言编写贪吃蛇游戏程序,C语言实现简单的贪吃蛇游戏
  • 图的两种遍历算法,图的遍历算法代码c语言,Python算法之图的遍历
  • 留言与评论(共有 条评论)
       
    验证码: