奥鹏作业答案 发表于 2020-6-18 14:23:35

《C程序设计》20春东师离线考核

离线考核
《C程序设计》 满分100分
一、阅读程序,在横线上填空(每空2分,共20分。)1. 百马百担问题:有100匹马,驮100担货,大马驮3担,中马驮2担,两匹小马驮1担,问大、中、小马各多少匹?
main( )
{   int hb,hm,hl,n=0;//hb,hm,hl分别代表大马,中马和小马
      for(hb=0;hb<=100;hb+=3 )
      for(hm=0;hm<=100-hb;hm+= (1)      )
      {   hl=100-hb- (2)      ;
          if(hb/3+hm/2+2* (3)       ==100)
          {n++;
             printf("hb=%d,hm=%d,hl=%d\n",hb/3,hm/2,2*hl);
         }
       }
       printf("n=%d\n",n);
}
2.用“起泡法”对输入的10个字符排序后按从小到大的次序输出。
#define N 10
char str;
main()
{   int i,flag;
      scanf("%s",str);
      sort((4)      ___);
      for(i=0;i<N;i++)
      printf("%c",str);
      printf("\n");
}
sort(char str)
{   int i,j;
      char t;
      for(j=1;j<N;j++)
      for(i=0;(i<N-j)&&(str!='\0');i++)
       if(str>str)
         { t=str;
         _(5)      ____;
         _(6)_      ___;
         }
}
3.以下程序是一个函数,功能是求二阶矩阵(m行n列矩阵)的所有靠外侧的各元素值之和。(本程序中二阶矩阵用一维数组来表示。)
例如,矩阵为:
       3003
       2573
       1042
则所有靠外侧的各元素值之和为3+0+0+3+2+3+1+0+4+2=18。
add(int m,int n,int arr[])
{int i,j,sum=0;
   for(i=0;i<m;i=i+m-1)
   for(j=0;j<n;j++)
       sum=sum+ (7)         ;
   for(j=0;j<n;j=j+n-1)
   for(i=1; (8)         ;i++)
          sum=sum+arr;
   return(sum);
   }
4.用指针作函数参数,编程序求一维数组中的最大和最小的元素值。
#define N 10
main()
{   void maxmin(int arr[],int *pt1,int *pt2,int n);
      int array={10,7,19,29,4,0,7,35,-16,21},*p1,*p2,a,b;
      p1=&a;p2=&b;
      maxmin(array,p1,p2,N);
      printf("max=%d,min=%d",a,b);
}
void maxmin(int arr[],int *pt1,int *pt2,int n)
{   int i;
      *pt1=*pt2=arr;
      for(i=1;i<n;i++)
      {   if(arr>*pt1)(9)         ;
      if(arr<*pt2)    (10)          ;
       }
}二、简要回答下列问题(每小题8分,共40分。)
1.结构化程序设计中常用的三种程序结构是什么?各自用哪些语句来实现?
2.C语言对字符串操作的函数有哪些(举出2个以上)?
3.C语言的构造类型有哪几种?各自适合描述什么样的问题?
4.函数调用有几种方式?函数的实参和形参是怎么进行结合的?
5.do—while循环和while循环的区别是什么?
三、编程题(共40分)
1.一个班级有10名学生,每个学生的信息包括学号,姓名和成绩。编写一函数sort,实现按学生成绩降序排列,排序方法任选。在函数之前,定义出函数中要使用的数据类型。(15分)
2.编写程序打印下面的图形。利用scanf()函数由用户输入星号的行数。(10分)
* ** *** **** *****
3.已知定义int型数组a,数组a中的元素均为三位数。编写函数jsVal(),其功能是:统计出3位数均为偶数的数组元素的个数c。
例如:int a={123,246,345,608,420,987},则统计结果c=3.(15分)答案{q+1,6 4。7861640},附件是答案,核对题目下载
页: [1]
查看完整版本: 《C程序设计》20春东师离线考核