华中科技大学级C语言程序设计考试经典试卷复习资料

合集下载

华中科技大学计算机学院2015年C语言程序设计试卷

华中科技大学计算机学院2015年C语言程序设计试卷

计算机学院2014-2015学年第2学期C语言程序设计考试试卷A卷(或B卷): A卷闭卷(或开卷):闭卷考试时间:2015年 6 月 25 日专业: 班级: 学号: 姓名:题号一二三四五六七总分核对人题分10 10 10 10 20 20 20 100得分注意:试卷后面附有运算符的优先级和结合性表。

一、单项选择题(在下面每小题的A、B、C、D四个选项中,只有一个选项得分评卷人是正确的,请选择正确的选项并填写到括号内,选择正确得分。

本大题共10小题,每小题1分,共10分。

)1、已知8位补码位是11111110,其原值是。

【】A、-2B、254C、-1D、-1262、下列是标识符。

【】A、B、_IPHONE_6_0C、sum[i]D、sin(x)3、下列逻辑表达式中与其它3个不等价。

其中a为int型变量。

【】A、!aB、a==0C、a==1D、!(a>0||a<0)4、下列是非法常量。

【】A、0xff00B、.1415C、'\a'D、051885、设a和b为整型变量且a值为5,表达式的值不为2。

【】A、b=a/2B、b=6-(--a)C、b=(a-3)%2D、b=a?a-3:16、适用于浮点类型数的运算是。

【】A、 |B、%C、 &D、 <7、执行语句putchar('R'+'6'-'4');的输出结果是。

【】A、RB、SC、TD、 U8、在工程中引用其它文件定义的全局变量,需要使用存储类型。

【】A、autoB、externC、staticD、register9、下列是变量a的定义,sizeof(a)为9的是。

【】A、char a[]=”c:\\file\\”B、char a[]=”123456789”C、int a[9]D、float a[9]10、下列给出的程序片段,其中while循环体执行的次数是。

【】i=1,j=0; while(i+j<=10) if(i>j)j++;else i++;A、5B、9C、 10D、11二、 多项选择题(下面每小题的A 、B 、C 、D 备选项中,有两个或两个以上的选项是正确的,请选择正确的选项并填写到括号内。

华科 C++期末考试试卷答案

华科 C++期末考试试卷答案

2008-2009学年度第二学期华中科技大学《C++语言程序设计》试卷(A)(考试时间:150分钟考试方式:闭卷)所有答案必须写在答题纸上一、单项选择题 (30小题,每小题1分,共30分)1、C++程序中的语句必须以( B )结束A 冒号B 分号C 空格D 花括号2、下列选项中,( A )不是分隔符A 标识符B ;C :D ( )3、执行语句int a = 10, b ;int & pa = a , & pb =b ;后,下列正确的语句是( B)A &pb = a;B pb = pa;C &pb = &pa;D *pb = *pa;4、设I=1,J=2,则表达式 I++ +J的值为( C )A1B2C3D45、执行下列语句后,int x , y ;x = y = 1 ; ++x || ++y ;y的值是( C)A不确定B0C1D26、逗号表达式(x = 4 * 5 , x * 5 ), x + 25的值为( D )A 25B 20C 100D 457、已知int i, x, y;在下列选项中错误的是(C)A if ( x && y ) i ++;B if ( x == y) i ――;C if ( xy ) i ――;D if ( x + y ) i++;8、i=2,执行下列语句后的值为( B )switch ( i ){ case 1: i++;case 2: i――;case 3: ++i; break;case 4: ――i;default : i++;}A 1B 2C 3D 49、已知int i = 3;下面do _ while语句执行时循环次数为(B)do { i-- ; cout <<i << endl; } while ( i != 1);A1B2C3D无限10、以下为死循环的程序段是( B )A for ( int x = 0 ; x < 3 ; ) { x++ ; } ;B int k = 0;do { ++k ; } while ( k>=0 ) ;C int a=5; while ( a ) { a―― ; } ;D int i=3 ; for ( ; i ;i――) ;11、以下正确的函数原型为( D )A f (int x ; int y);B void (x , y);C void (int x , y);D void f (int , int);12、有函数原型 void fun2 (int * ), 下面选项中,正确的调用是( C )A double x = 2.17; fun2 (&x);B int a = 15; fun2 (a*3.14);C int b = 100; fun2 (& b);D fun2 (256);13、有声明int fun4 (int); int (* pf) (int) = fun4;下面选项正确的是( B )A int a = 15; int n = fun4 (&a);B int a = 15; cout<<pf (a*3.14);C cout<<(* pf) (256);D cout<<*pf (256);14、函数参数的默认值不允许为(C,D)A 全局常量B 全局变量C 局部变量D 函数调用15、下列的描述中( B )是错误的。

华科2013年C语言程序设计试卷-A卷及参考答案(正式用卷)

华科2013年C语言程序设计试卷-A卷及参考答案(正式用卷)

计算机学院2012-2013学年第2学期C语言程序设计考试试卷A卷(或B卷): A卷闭卷(或开卷):闭卷考试时间:2013年 7 月 5 日专业班级学号学生姓名题号一二三四五六七总分核对人题分10 10 10 10 20 20 20 100得分注意:试卷后面附有运算符的优先级和结合性表。

一、单项选择题(在下面每小题的A、B、C、D四个选项中,只有一个选项得分评卷人是正确的,请选择正确的选项并填写到括号内,选择正确得分。

本大题共10小题,每小题1分,共10分。

)1、以下为正确的标识符是【】A、forB、u.3C、3cD、DO2、以下为合法的整型常量是【】A、-1UB、01111001BC、ffffD、01383、下列数据中属于字符串常量的是【】A、'a'B、"a"b"c"C、'123'D、"a\"b\"c"4、表达式-a+++b中记号(token)的个数是【】A、3个B、4个C、5个D、6个5、 -3的16位补码是【】A、0xfffdB、0x1011C、0x7ffdD、0x00036、以下为正确的转义字符是【】A、'\'B、'\\'C、'\0x12'D、'\0f1'7、设有声明:enum {U,V,W=0,X,Y=0,Z} a; 则值为1的枚举常量的个数是【】A、1个B、2个C、3个D、4个8、设有声明: 【】union U{ long a; short b; char c; char s[20];} v={0x01020304},*p=&v;则下列选项正确的是A、printf("%d\n",sizeof(v))输出4B、printf("%d\n",p->s[0])输出4C、printf("%d\n",v.c)输出1D、printf("%x\n",v.b)输出1029、设有声明和语句:FILE *fp; fp=fopen("c:\\abc.dat","r+"); 【】则下列选项正确的是A、打开文件的文件名为\abc.datB、打开的是二进制文件C、打开的是文本文件D、打开的文件只能进行读操作10、设有如下代码片段:【】int a[]={1,2,3,4,5},i;char *p=(char *)a;for(i=0;i<3;i++)printf("%d ",*((p+=sizeof(int))-sizeof(int)));printf("\n");则该代码片段的输出结果是A、1 2 3 4 5B、1 2 3C、1 1 1D、2 3 4二、 多项选择题(下面每小题的A 、B 、C 、D 备选项中,有两个或两个以上的选项是正确的,请选择正确的选项并填写到括号内。

大学C语言程序设计试题含答案

大学C语言程序设计试题含答案

大学C语言程序设计试题含答案一、简答题1. 请简要解释什么是C语言程序设计。

C语言程序设计是一种计算机编程语言,由贝尔实验室的Dennis Ritchie在20世纪70年代早期开发。

它强调的是效率和可移植性,被广泛应用于操作系统、嵌入式系统和其他需要高效执行的应用程序开发。

2. C语言的基本数据类型有哪些?请列举并简要说明其特点。

C语言的基本数据类型包括:- int:用于表示整数,通常占用4个字节内存,可以表示范围较大的整数;- char:用于表示字符,占用1个字节内存,常用于存储ASCII码;- float:用于表示单精度浮点数,占用4个字节内存,可用于表示小数;- double:用于表示双精度浮点数,占用8个字节内存,可用于表示更大范围和更高精度的小数;- void:表示无类型,常用于函数返回类型。

3. 请解释C语言中的变量和常量的概念,并简要说明它们的区别。

变量是用于存储和表示数据的一种方式,可以根据需要改变其值。

在C语言中,变量声明需要指定其类型,并可以为变量命名,并通过赋值来存储数据。

常量是固定不变的值,不能改变其值。

在C语言中,常量可以是字面值常量(直接指定数值或字符)、符号常量(使用预处理器#define 指令定义的常量)或常量表达式(由常量组成的表达式)。

常量在程序执行过程中保持不变。

二、编程题1. 编写一个程序,输入一个整数,判断该数字是奇数还是偶数,并输出相应的提示信息。

```c#include <stdio.h>int main() {int num;printf("请输入一个整数: ");scanf("%d", &num);if (num % 2 == 0) {printf("%d是偶数。

\n", num);} else {printf("%d是奇数。

\n", num);}return 0;}```2. 编写一个程序,计算并输出1到100之间所有奇数的和。

华中科技大学级C语言程序设计考试经典试卷复习资料

华中科技大学级C语言程序设计考试经典试卷复习资料

华中科技大学10级《C语言程序设计》考试试卷课程性质:必修使用范围:本科考试时间:年月日考试方式:闭卷学号______________专业_______班级____姓名___________成绩____一、选择题(每小题2分,共20分)( A )(1)若x、y、j和k都是int型变量,则计算表达式x=( k=32,j=6, i=4)后,x的值为。

A)4 B)16 C)32 D)52( B )(2)C语言中标识符只能由字母、数字和下划线组成,且第一个字符。

A)必须为字母 B)必须为字母或下划线C)必须为下划线 D)可以是字母、数字和下划线中任一种字符( D )(3)下面四个选项中,均是正确的数值常量或字符常量的选项是。

A)0.0 0f 8.9e '&' B)"a" 3.9e-2.5 1e1 '\"'C)'3' 011 0xFF00 0a D)+001 0xabcd 2e2 50( B )(4)已知各变量的类型说明如下:int i=8,k,a,b;unsigned long w=5;double x=1.42,y=5.2;则以下符合C语言语法的表达式是。

A)a=a*3=2 B)a+=a-=(b=4)*(a=3)C)x+y=-3*a D)y=float(i)( A )(5)若以下变量均是整型,且num=sum=5;则计算表达式num++,sum++,++num后num的值为。

A)7 B)8 C)9 D)10( B )(6)在C语言中,引用数组元素时,其数组下标的数据类型允许是。

A)整型常量 B)整型常量或整型表达式C)整型表达式 D)任何类型的表达式( C )(7)以下能对一维数组a进行正确初始化的语句是。

A)int a[10]={0,0,0,0,0} B)int a[10]={ };C)int a[ ]={0}; D)int a[10]={10*1};/*各元素值为1*/( B )(8)下面程序(注:每行程序前面的数字表示行号)。

华中科技大学标准C语言程序设计上机试题、答案及报告格式

华中科技大学标准C语言程序设计上机试题、答案及报告格式

《标准C语言程序设计》上机报告实验七指针及函数结构体初步程序设计专业:班级:学号:姓名:完成日期:1一、实验目的1.进一步理解指针的概念,掌握指针变量间接地址访问的本质;2.掌握利用指向数组的指针变量表示一维数组元素及元素地址的方法;3.掌握利用指向二维数组的行指针变量表示二维数组元素及其地址的方法;4.掌握字符串的指针和指向字符串的指针变量;5.掌握指针数组和二级指针;6.熟悉通过动态内存分配实现动态数组,并体会指针在其中的作用。

7.理解函数定义、原型和调用,掌握函数参数的传递(传值、传指针和传引用)二、实验内容及要求(鼓励一题多解)1.深入理解《上机实践训练教程》2.6实验六案例示范和有关概念文字描述中的知识点,给出你的理解。

定义指针时一定要给指针分配好应有的类型和内存空间,防止出现野指针,造成程序不能运行甚至系统崩溃。

数组名不能作为左值,它实际上是一个常量指针,不能通过str=“comrade”给字符数组str赋值。

2.输入每个学生的姓名和线性代数、通信原理和C语言课程成绩,统计每人的平均值,并按平均值降序排列,输出排列后的名次、姓名、课程名(成绩)和平均值。

(注:平均值相同者按姓名的字母表顺序排列)(要求用结构体数据类型实现)#include <stdio.h>#include <math.h>#include <stdlib.h>#define N 3struct student{int rank;char name[20];double score[3];double aver;};void input(struct student *p,int n);void sort(struct student *p,int n);double average (struct student *p,int n);void output(struct student *p,int n,double aver);void main(){struct student stu[N];double aver;input(stu,N);sort(stu,N);aver=average(stu,N);output(stu,N,aver);}void input(struct student *p,int n){int i,j;double a;char str[20];for(i=0;i<n;i++,p++){printf("请输入考生姓名:\n");gets(p->name);printf("请依次输入学生线性代数、通信原理、c语言分数:\n");for(a=0,j=0;j<3;j++){gets(str);p->score[j]=atof(str);a+=p->score[j];}p->aver=a/3;}return;}void sort(struct student *p,int n){struct student temp;int i,j;for(i=0;i<n-1;i++){for(j=0;j<n-1-i;j++){if(p[j].aver<p[j+1].aver){temp=p[j];p[j]=p[j+1];p[j+1]=temp;}}}}double average(struct student *p,int n){int i;double temp;for(i=0,temp=0;i<n;i++)temp=temp+p[i].aver;return temp/n;}void output(struct student *p,int n,double aver){int i;printf("姓名线性代数通信原理c语言平均分\n");printf("-----------------------------------------\n");for(i=0;i<n;i++){printf("%-10s%8.2lf%8.2lf%8.2lf%8.2lf\n",p[i].name,p[i].score[0],p[i].score[1],p[i].score[2],p[i].aver);}}运行结果:3.利用指向指针的指针方法对N个整数排序并输出。

c语言程序设计考试题库及答案

c语言程序设计考试题库及答案

c语言程序设计考试题库及答案1. 选择题1.1 下列关于C语言的描述,错误的是:A. C语言是一种过程式编程语言B. C语言支持面向对象编程C. C语言支持结构化编程D. C语言具有丰富的库函数答案:B1.2 在C语言中,以下哪个关键字用于定义一个函数?A. structB. intC. voidD. function答案:C1.3 下列选项中,哪个不是C语言中的合法变量名?A. _myVarB. myVar2C. 2ndVarD. var$答案:D2. 填空题2.1 在C语言中,用于定义一个整型变量的关键字是______。

答案:int2.2 C语言中,用于输入数据的库函数是______。

答案:scanf2.3 C语言中,用于输出数据的库函数是______。

答案:printf3. 简答题3.1 简述C语言中数组的定义方式。

答案:在C语言中,数组可以通过指定数据类型和数组大小来定义。

例如,定义一个整型数组可以写作:int arrayName[arraySize];。

3.2 解释C语言中的指针是什么,并给出一个指针的定义示例。

答案:指针是一种变量,它存储的是另一个变量的内存地址。

定义指针的示例:int *ptr; 这里ptr是一个整型指针。

4. 编程题4.1 编写一个C语言程序,计算并输出100以内所有偶数的和。

答案:```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}}printf("Sum of even numbers from 1 to 100 is: %d\n", sum);return 0;}```4.2 编写一个C语言函数,实现字符串反转的功能。

答案:```cvoid reverseString(char *str) {int length = 0;while (str[length] != '\0') {length++;}for (int i = 0; i < length / 2; i++) {char temp = str[i];str[i] = str[length - i - 1];str[length - i - 1] = temp;}}```。

华科 C++期末考试试卷答案

华科 C++期末考试试卷答案

2008-2009学年度第二学期华中科技大学《C++语言程序设计》试卷(A)(考试时间:150分钟考试方式:闭卷)所有答案必须写在答题纸上一、单项选择题 (30小题,每小题1分,共30分)1、C++程序中的语句必须以( B )结束A 冒号B 分号C 空格D 花括号2、下列选项中,( A )不是分隔符A 标识符B ;C :D ( )3、执行语句int a = 10, b ;int & pa = a , & pb =b ;后,下列正确的语句是( B)A &pb = a;B pb = pa;C &pb = &pa;D *pb = *pa;4、设I=1,J=2,则表达式 I++ +J的值为( C )A1B2C3D45、执行下列语句后,int x , y ;x = y = 1 ; ++x || ++y ;y的值是( C)A不确定B0C1D26、逗号表达式(x = 4 * 5 , x * 5 ), x + 25的值为( D )A 25B 20C 100D 457、已知int i, x, y;在下列选项中错误的是(C)A if ( x && y ) i ++;B if ( x == y) i ――;C if ( xy ) i ――;D if ( x + y ) i++;8、i=2,执行下列语句后的值为( B )switch ( i ){ case 1: i++;case 2: i――;case 3: ++i; break;case 4: ――i;default : i++;}A 1B 2C 3D 49、已知int i = 3;下面do _ while语句执行时循环次数为(B)do { i-- ; cout <<i << endl; } while ( i != 1);A1B2C3D无限10、以下为死循环的程序段是( B )A for ( int x = 0 ; x < 3 ; ) { x++ ; } ;B int k = 0;do { ++k ; } while ( k>=0 ) ;C int a=5; while ( a ) { a―― ; } ;D int i=3 ; for ( ; i ;i――) ;11、以下正确的函数原型为( D )A f (int x ; int y);B void (x , y);C void (int x , y);D void f (int , int);12、有函数原型 void fun2 (int * ), 下面选项中,正确的调用是( C )A double x = 2.17; fun2 (&x);B int a = 15; fun2 (a*3.14);C int b = 100; fun2 (& b);D fun2 (256);13、有声明int fun4 (int); int (* pf) (int) = fun4;下面选项正确的是( B )A int a = 15; int n = fun4 (&a);B int a = 15; cout<<pf (a*3.14);C cout<<(* pf) (256);D cout<<*pf (256);14、函数参数的默认值不允许为(C,D)A 全局常量B 全局变量C 局部变量D 函数调用15、下列的描述中( B )是错误的。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

华中科技大学10级《C语言程序设计》考试试卷课程性质:必修使用范围:本科考试时间:年月日考试方式:闭卷学号______________专业_______班级____姓名___________成绩____一、选择题(每小题2分,共20分)(A)(1)若x、y、j和k都是int型变量,则计算表达式x=( k=32,j=6, i=4)后,x的值为。

A)4 B)16 C)32 D)52( B )(2)C语言中标识符只能由字母、数字和下划线组成,且第一个字符。

A)必须为字母 B)必须为字母或下划线C)必须为下划线 D)可以是字母、数字和下划线中任一种字符(D)(3)下面四个选项中,均是正确的数值常量或字符常量的选项是。

A)0.0 0f 8.9e '&' B)"a" 3.9e-2.5 1e1 '\"'C)'3' 011 0xFF00 0a D)+001 0xabcd 2e2 50( B)(4)已知各变量的类型说明如下:int i=8,k,a,b;unsigned long w=5;double x=1.42,y=5.2;则以下符合C语言语法的表达式是。

A)a=a*3=2 B)a+=a-=(b=4)*(a=3)C)x+y=-3*a D)y=float(i)(A)(5)若以下变量均是整型,且num=sum=5;则计算表达式num++,sum++,++num后num的值为。

A)7 B)8 C)9 D)10( B)(6)在C语言中,引用数组元素时,其数组下标的数据类型允许是。

A)整型常量 B)整型常量或整型表达式C)整型表达式 D)任何类型的表达式( C)(7)以下能对一维数组a进行正确初始化的语句是。

A)int a[10]={0,0,0,0,0} B)int a[10]={ };C)int a[ ]={0}; D)int a[10]={10*1};/*各元素值为1*/ (B)(8)下面程序(注:每行程序前面的数字表示行号)。

1 main( )2 { static int a[3]={0};3 int i;4 for(i=0;i<3;i++) scanf("%d",a[i]);5 for(i=0;i<3;i++) printf("%d\n",a[i]); }A)第3行有错误 B)第4行有错误C)第5行有错误 D)没有错误( C )(9)定义如下变量和数组 int k;int a[3][3]={1,2,3,4,5,6,7,8,9};for(k=0;k<3;k++) printf("%d ",a[k][k]); 则上面语句输出的结果是。

A )3 5 7B )3 6 9C )1 5 9D )1 4 7 ( D )(10)下面是对字符型数组s 的初始化,其中不正确的是。

A )char s[5]={"abc"};B )char s[5]={'a','b','c'};C )char s[5]=" ";D )char s[5]="abcdef";二、阅读程序写出运行后的输出结果(每小题3分,共15分,专科生每小题4分,共20分) (1) main( ) 结果: { int i,j; float x,y; y=5.000000 i=4; j=8; x=4.0; y=1.0+i/j+x; printf("y=%f",y);}(2)main() 结果: { int x,y,z; 1,2,3 x=1;y=2;z=3;printf("%d,%d,%d\n",x,y,z);}(3)main() 结果: { int i=5,k=0; 0 while(i--) k=k+k; printf("k=%d\n",k);}三、把下列数学表达式写成C 语言表达式(每小题2分,共10分) ⑴))()((c s b s a s s --- 表达式:sqrt(s*(s-a)*(s-b)*(s-c)) ⑵ P(1+r)n表达式:p*pow(1+r,n)⑶ 212r m m g表达式:g*m1*m2/(r*r)⑷ 2πr+πr 2 +cos(b) 表达式:2*3.14*r+3.14*r*r+cos(b)⑸ 5ln )45(sin 224⨯e ο 表达式:2*pow(sin(45*3.14/180),4)/(exp(2)*log(5))(4)main() 结果:9 { int a,b=0;static int c[5]={1,2,3,4,5}; for(a=0;a<5;++a) if((a%2)==0)b+=c[a]; printf("%d",b); } (5) main() 结果:3 { int a,b,c; 2 a=1; b=2; c=3;printf("%d\n",b>c?b++:c++); printf("%d\n",b>c?c++:b++); }四、编程题(每小题10分,共40分)(1)从键盘输入一个学生某门课程的考试成绩,若低于60分,输出no pass,反之输出pass。

#include<stdio.h>void main(){float x;printf("input a nuber:");scanf("%f",&x);if(x<=100&&x>=0)if(x<60)printf("no pass\n");elseprintf("pass\n");elseprintf("input error:\n");}(2)一个班有30学生,要求找出某门课程考试成绩的最高分和最低分。

(不用数组结构)#include<stdio.h>void main(){ int i,max,min,a;scanf("%d",&a);max=min=a;for(i=1;i<30;i++){ scanf("%d",&a);if(max<a) max=a;if(min>a) min=a;}printf("Max=%d,Min=%d\n",max,min);}(3)用选择法编写一个程序,使存储在整型数组a[10]中的各元素值按升序排列存放(要求:程序中至多允许使用一个缓存单元)。

#include<stdio.h>void main(){static int a[10];int i,j,temp;printf("Input 10 numbers:");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<9;i++)for(j=i+1;j<10;j++)if(a[i]>a[j]){temp=a[j];a[j]=a[i];a[i]=temp;}for(i=0;i<10;i++)printf("%d ",a[i]);printf("\n");}(4)编写已知半径求面积的函数,供主函数调用。

要求在主函数中输入10个半径值,对于给定的半径值,判别其否大于0,若大于,则输出对应的面积。

#include<stdio.h>float ss(int r){float s;s=3.14*r*r;return s;}void main(){ int r[10],i;flaot s;printf("Input 10 r:");for(i=0;i<10;i++){ scanf("%d",&r[i]);if(r>0) s=ss(r[i]);printf(”%-4d%f\n”,i,s)}}五、应用题(每小题5分,共15分,此题专科生不做)输入10个学生的3门课的成绩,分别用函数求:(1)每个学生的平均分。

(2)按学生平均分降序排列输出学生信息。

(3)编写一菜单主函数,菜单内容包括以上部分。

#include <stdio.h>#include <conio.h>#define N 3void aver_stu(int a[N][4]);void sort(int a[N][4]);void main(void){ int sc[N][4]; //sc[i][0]存放学生的序号int i,j;char ch,answer;for(i=0;i<N;i++){ sc[i][0]=i+1;printf("请输入第%d个学生的3门成绩:\n",i+1);for(j=1;j<=3;j++){ printf("第%d门课程:",j);scanf("%d",&sc[i][j]);}}do{fflush(stdin);//清空缓冲区printf("\n*********************************************\n");printf("\t1---求每个学生的平均成绩\n");printf("\t2---按学生平均分降序排列\n");printf("*********************************************\n");printf("\n请输入(1~2):");ch=getchar();getchar();switch(ch){case '1':aver_stu(sc);break;case '2':sort(sc);;break;default:printf("选择错误,请重新选择!\n");}printf("\n输入N或n退出,其它键继续!\n");answer=getch(); //从键盘接收一个字符,但不回显}while(answer!='N'&&answer!='n');}void aver_stu(int a[N][4]){ int i,sum=0;printf("\n学生序号---平均成绩\n");for(i=0;i<N;i++)printf("\t%d\t%.2f\n",a[i][0],(float)(a[i][1]+a[i][2]+a[i][3])/3); }void sort(int a[N][4]){ float aver[N][2],t,k;int i,j;for(i=0;i<N;i++){ aver[i][0]=a[i][0];aver[i][1]=(float)(a[i][1]+a[i][2]+a[i][3])/3;}for(j=0;j<N-1;j++)for(i=0;i<N-1-j;i++)if(aver[i][1]<aver[i+1][1]){ t=aver[i][1];aver[i][1]=aver[i+1][1];aver[i+1][1]=t;k=aver[i][0];aver[i][0]=aver[i+1][0];aver[i+1][0]=k;}printf("\n学生序号---平均成绩\n");for(i=0;i<N;i++)printf("\t%.0f\t%.2f\n",aver[i][0],aver[i][1]);}六、判断题(每小题1分,共10分,此题仅专科生做)1. 在命名标识符时,大小写字母是不加区分的。

相关文档
最新文档