1、循环控制输出图案【程序 1】题目:输出 9*9 口诀。1.程序分析:分行与列考虑,共 9 行 9 列,i 控制行,j 控制列。2.程序源代码:#include “stdio.h“main()int i,j,result;printf(“n“);for (i=1;iy 则将 x 与y 的值进行交换,然后再用 x 与 z 进行比较,如果 xz 则将 x 与 z 的值进行交换,这样能使 x最小。2.程序源代码:main()int x,y,z,t;scanf(“%d%d%d“,if (xy)t=x;x=y;y=t; /*交换 x,y 的值 */if(xz)t=z;z=x;x=t;/*交换 x,z 的值
2、 */if(yz)t=y;y=z;z=t;/*交换 z,y 的值 */printf(“small to big: %d %d %dn“,x,y,z);【程序 3】 switch 多分支语句练习题目:输入某年某月某日,判断这一天是这一年的第几天?1.程序分析:以 3 月 5 日为例,应该先把前两个月的加起来,然后再加上 5 天即本年的第几天,特殊情况,闰年且输入月份大于 3 时需考虑多加一天。2.程序源代码:main()int day,month,year,sum,leap;printf(“nplease input year,month,dayn“);scanf(“%d,%d,%d“,swit
3、ch(month)/*先计算某月以前月份的总天数*/case 1:sum=0;break;case 2:sum=31;break;case 3:sum=59;break;case 4:sum=90;break;case 5:sum=120;break;case 6:sum=151;break;case 7:sum=181;break;case 8:sum=212;break;case 9:sum=243;break;case 10:sum=273;break;case 11:sum=304;break;case 12:sum=334;break;default:printf(“data err
4、or“);break;sum=sum+day; /*再加上某天的天数*/if(year%400=0|(year%4=0elseleap=0;if(leap=1printf(“It is the %dth day.“,sum);【程序 1】题目:两个乒乓球队进行比赛,各出三人。甲队为 a,b,c 三人,乙队为 x,y,z 三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a 说他不和 x 比,c 说他不和x,z 比,请编程序找出三队赛手的名单。 1.程序分析:判断素数的方法:用一个数分别去除 2 到 sqrt(这个数) ,如果能被整除,则表明此数不是素数,反之是素数。 2.程序源代码:main
5、()char i,j,k;/*i 是 a 的对手,j 是 b 的对手,k 是 c 的对手*/for(i=x;iend)a10=number;elsefor(i=0;inumber)temp1=ai;ai=number;for(j=i+1;j11;j+)temp2=aj;aj=temp1;temp1=temp2;break;for(i=0;i11;i+)printf(“%6d“,ai);【程序 3】题目:将一个数组逆序输出。1.程序分析:用第一个与最后一个交换。2.程序源代码:#define N 5main() int aN=9,6,5,4,1,i,temp;printf(“n original array:n“);for(i=0;i printf(“%4d“,ai);