大学一年级下学期C语言程序设计实验报告答案 完整版

}

(2)编写一个程序打印如下对称图形(行数由键盘输入1~9范围的值),例如下面是输入的数字4时的情形:

4444444 33333 222 1 222 33333 4444444

#include main() {

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 main() {

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 main() {

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 #define N 10 main()

{ }

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}; 已存入数组中的数据值已经按由小到大的顺序存

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4