}
(2)编写一个程序打印如下对称图形(行数由键盘输入1~9范围的值),例如下面是输入的数字4时的情形:
4444444 33333 222 1 222 33333 4444444
#include
int i,j,k,n;
printf(\请输入一个数字\\n\ scanf(\ i=n;
for(i=0;i<2*n-1;i++) {
k=i;
if(i>=n) k=2*n-2-i; for(j=0;j for(j=0;j<2*(n-k)-1;j++) printf(\ printf(\ } getchar(); } (3)学校有近千名学生,在操场上排队,5人一行余2人,7人一行余3人,3人一行余1人,编写一个程序求该校的学生人数。 #include int i; for(i=900;i<=1100;i++) { if(i%5==2&&i%7==3&&i%3==1) { printf(\ break; } } getchar(); } (4)学校某班A、B、C、D四位同学中的一位做了好事不留名,表扬信来了之后,班主任问这四位是谁做了好事,四位回答如下: A说:不是我。 B说:是C。 C说:是D。 D说:他胡说。 已知三个人说的是真话,一个人说的是假话。请根据这些信息,找出做了好事的人。 #include int i,j,a,b,c,d; for(i=0;i<=4;i++) { for(j=0;j<=4;j++) if(j==i) switch(j) { case 0:a=1;b=0;c=0;d=0; break; case 1:a=0;b=1;c=0;d=0; break; case 2:a=0;b=0;c=1;d=0; break; case 3:a=0;b=0;c=0;d=1; break; default:break; } if(a+b+c==1&&b+c==1&&c+d==1&&b+c+d==1) printf(\做好事的人是%c\\n\ } getchar(); } 实验四 数组程序设计 实验 ( 验证性 综合性 实验 4学时) 1、目的要求: (1)掌握一维和二维数组的使用技巧。 (2)编写实验报告。 2、实验内容(参考实验指导书): (1)从键盘输入一个长度为N(比如10)的整型数组,而后将数组中小于零的元素移动到数组的前端,大于零的元素移到数组的后端,等于零的元素留在数组中间。比如原来数组为:2 -5 -89 75 0 -89 0 93 48 0,经过处理后的数组为:-5 -89 -89 0 0 0 75 93 48 2。由于不要求数组有序,所以不允许用排序方法。 提示: 1)输入N个数据,构建数组。 2)按照要求确定数据的位置,需要注意循环条件的确定、0数据元素往中间推的实现过程以及数组处理的方向。 #include #include { } int a[N]={2,-5,-89,75,0,-89,0,93,48,0}; int i,t,j; for(i=0;i printf(\printf(\for(i=0;i for(j=i+1;j if(a[i]>0&&a[j]<0) { t=a[i]; a[i]=a[j]; a[j]=t; } else if(a[i]>0&&a[j]==0) { t=a[i]; a[i]=a[j]; a[j]=t; } else if(a[i]==0&&a[j]<0) { t=a[i]; a[i]=a[j]; a[j]=t; } } } for(i=0;i printf(\printf(\ (2)设数组a的定义如下: int a[20] = {2,4,6,8,10,12,14,16}; 已存入数组中的数据值已经按由小到大的顺序存