上海海事大学(C语言期末)上机题库

合集下载

大学C语言期末考试试题(含答案)

大学C语言期末考试试题(含答案)

第一章C语言概述1.1 选择题*1.1一个C程序的执行是从 A 。

A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束参考答案:A参考分析:C语言总是从main函数开始,main函数结束。

但是C 语言中存在一个exit(0)函数,它可以使得程序在任何时候、任何位置结束程序的运行。

如果不考虑exit(0)等函数的特殊作用,C则总是在main函数结束。

*1.2以下叙述正确的是 C 。

A)在C程序中,main函数必须位于程序的最前面B)在C程序的每一行只能写一条语句C)C语言本身没有输入输出语句D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误参考答案:C参考分析:C程序对main函数的位置没有任何要求;其书写格式自由,一行可以写多条语句,一条语句(多关键字语句)可以写在多行;C语言忽略注释,把注释看作是一个空格,不会对注释中的内容进行语法检查。

因此,如果注释中存在错误,系统是不可能发现的。

另外,C语言的I/O操作均通过函数实现,系统本身未提供相应的语句。

1.3以下叙述不正确的是 D 。

A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main函数C)C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面参考答案:D参考分析:C语言中,注释语句的位置是任意的,当然,它不能破坏标识符的完整性。

C语言只是将一个注释看作是一个空格,因此对注释内的任何错误都不作检查。

1.4 C语言规定:在一个源程序中,main函数的位置 C 。

A)必须在最开始B)必须在系统调用的库函数的后面C)可以任意D)必须在最后参考答案:C*1.5一个C语言程序是由 B 。

A)一个主程序和若干个子程序组成B)若干函数组成C)若干过程组成D)若干子程序组成参考答案:B参考分析:通常许多语言程序由主程序和子程序构成,但是C语言是函数式语言,整个程序由众多函数组成。

c语言期末考试题库大题及详解答案

c语言期末考试题库大题及详解答案

c语言期末考试题库大题及详解答案C语言期末考试题库大题及详解答案一、简答题1. 请简述C语言的基本数据类型及其特点。

答案:C语言的基本数据类型包括整型(int)、浮点型(float和double)、字符型(char)和枚举型(enum)。

整型用于存储整数,浮点型用于存储小数,字符型用于存储单个字符,枚举型用于定义一组命名的常量。

每种数据类型都有其特定的取值范围和占用内存大小。

2. 请解释C语言中的数组和指针的区别。

答案:数组是一种数据结构,用于存储固定数量的相同类型元素,可以通过下标访问元素。

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

数组名可以作为指向数组第一个元素的指针使用,但数组本身是一个固定大小的内存块,而指针可以被赋值为不同的地址,具有动态性。

二、编程题1. 编写一个C语言程序,实现输入三个整数,找出其中的最大值并输出。

答案:```c#include <stdio.h>int main() {int num1, num2, num3, max;printf("请输入三个整数:");scanf("%d %d %d", &num1, &num2, &num3);max = (num1 > num2) ? ((num1 > num3) ? num1 : num3) : ((num2 > num3) ? num2 : num3);printf("最大值是:%d\n", max);return 0;}```2. 编写一个C语言程序,实现字符串的反转。

答案:```c#include <stdio.h>#include <string.h>int main() {char str[100];printf("请输入一个字符串:");fgets(str, sizeof(str), stdin); // 使用fgets以包含空格int len = strlen(str) - 1; // 减去换行符长度for (int i = len; i >= 0; --i) {printf("%c", str[i]);}printf("\n");return 0;}```三、综合题1. 请编写一个C语言程序,实现一个简单的计算器,能够进行加、减、乘、除四种基本运算。

海大c程上机题附答案及附加题

海大c程上机题附答案及附加题

1. 编写函数long fun(long x),它的功能是:将长整型参数x中每一名上为偶数的数依次掏出,组成一个新数返回。

高位仍在高位,低位仍在低位。

例如:下面程序运行时输入:2,程序输出:24802.#include<>long fun(long x){long i,m,sum=0;int j=0,n;for(i=x;i>0;){m=i%10;i=i/10;if(m%2==0){j++;for(n=1;n<j;n++)m=m*10;sum+=m;}}return sum;}void main(){long a,b;printf("Enter a number:");scanf("%ld",&a);b=fun(a);printf("b=%ld\n",b);}2. 编写函数void fun(int k,int *p),功能是:将参数k〔2≤k≤32767〕所有的不一样质因子升序写入p所指的一维数组中,以-1作为所有质因子的完毕标志。

例如:下面程序运行时假设输入200,输出:2 5;假设输入27720,输出:2 3 5 7 11;假设输入101,输出101。

#include<>#include<>void fun(int k,int *p){int i,j,t=0;double b;for(i=2;i<=k;i++) 先判定是不是质数,在判定是不是因子。

{b=sqrt(i);for(j=2;j<=b;j++)if(i%j==0)break;if(j>b&&k%i==0){p[t]=i;t++;}p[t]=-1;}}void main(){int x,a[17]={0},i;do{ printf("Enter a number(2-32767):");scanf("%d",&x);}while(x<2);fun(x,a);for(i=0;a[i]!=-1;i++)printf("%d ",a[i]);printf("\n");}3. 编写函数void fun(int *x,int n),功能是:求出长度为n的数组x中的最大数与次最大数,并把最大数和a[0]对调,次最大数与a[1]对调,其余的数维持不变。

(完整版)大学C语言期末考试练习题(带详解答案)

(完整版)大学C语言期末考试练习题(带详解答案)

一、单项选择题1.(A)是构成C语言程序的基本单位。

A、函数B、过程C、子程序D、子例程2.C语言程序从C开始执行。

A) 程序中第一条可执行语句B) 程序中第一个函数C) 程序中的main函数D) 包含文件中的第一个函数3、以下说法中正确的是(C)。

A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main( )函数中定义C、C语言程序总是从main( )函数开始执行D、C语言程序中的main( )函数必须放在程序的开始部分4.下列关于C语言的说法错误的是(B)。

A) C程序的工作过程是编辑、编译、连接、运行B) C语言不区分大小写。

C) C程序的三种基本结构是顺序、选择、循环D) C程序从main函数开始执行5.下列正确的标识符是(C)。

A.-a1B.a[i]C.a2_iD.int t5~8题为相同类型题考点:标识符的命名规则(1)只能由字母、数字、下划线构成(2)数字不能作为标识符的开头(3)关键字不能作为标识符选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3)6.下列C语言用户标识符中合法的是(B)。

A)3ax B)x C)case D)-e2 E)union选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1);7.下列四组选项中,正确的C语言标识符是(C)。

A)%x B)a+b C)a123 D)123选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。

A、print _3d db8 aBcB、I\am one_half start$it 3paiC、str_1 Cpp pow whileD、Pxq My->book line# His.age选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键字,不满足(3)9.C语言中的简单数据类型包括(D)。

C语言上机150道题

C语言上机150道题

C语言上机150道题及参考答案1.某一门课程考试之后,需要统计考生(10人)的平均成绩,并找出其中的最高分和最低分。

2.从键盘输入两个正整数,输出这两个整数的商,要求商的小数点后保留5位。

例如输入355和113,输出3.14159。

3.用while循环结构编写程序打印ASCII码为33-127的字符。

4.用do-while,for循环结构编写程序打印ASCII码为33-127的字符。

5.用for循环结构编写程序打印ASCII码为33-127字符。

6.在1-500中,找出能同时满足用3除余2,用5除余3,用7除余4的所有整数,用循环结构。

7.输入一个整数将其倒着输出,如54321——12345。

8.计算s=1+1/3+1/5+…+1/n,截止到1/n<10-4。

9.从键盘输入一整数n,计算1*1+2*2+...+n*n的值。

10.用while 循环计算1+2+……+100的和。

11.用do while循环计算1+2+……+100的和。

12.用for 循环计算1+2+……+100的和。

13.输入一个小于等于10的整数n ,计算n!。

14.输入两个正整数m和n,计算m!+n!,m和n的值均小于10。

15.用循环语句,计算1~100之间的所有3的倍数之和。

16.用循环语句,计算100-200之间的所有7的倍数之和。

17.输出1-100之间,7的整数倍数或数字尾数为7的数字,统计出这些数字个数。

18.输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数。

19.输入一个整数,统计它有几位数。

如输入367,则该数有3位数。

20.编写程序,输出1到50中间所有能被3整除的正整数。

21.把100~200之间不能被3整除的输出。

22.编程Y=1+3+5+7+...111。

23.编程y=1*1/2*1/3*1/4*1/5*1/6*...前十项之积。

24.编程输出九九乘法表。

25.求1到100奇数和。

大一上c语言期末考试题库及详解答案

大一上c语言期末考试题库及详解答案

大一上c语言期末考试题库及详解答案在大一上学期的C语言课程中,期末考试通常涵盖了C语言的基础知识、数据类型、控制结构、函数、数组、指针以及结构体等核心概念。

以下是一份模拟的期末考试题库及详解答案,供同学们复习参考。

1. 以下哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. _variableD. variable-2答案:B, C。

在C语言中,标识符可以由字母、数字和下划线组成,但不能以数字开头。

2. C语言中,int类型变量占用的字节数是多少?A. 1B. 2C. 4D. 8答案:C。

在大多数现代计算机系统中,int类型变量占用4个字节。

3. 以下哪个选项是正确的C语言语句?A. int a = 10;B. int a = '10';C. int a = "10";D. int a = 10.0;答案:A。

在C语言中,整型变量应该使用整数值进行初始化。

4. 以下哪个选项是C语言中的选择结构?A. if-elseB. switch-caseC. whileD. for答案:A, B。

if-else和switch-case是C语言中的选择结构,用于根据不同的条件执行不同的代码块。

5. 以下哪个选项是C语言中的循环结构?A. if-elseB. switch-caseC. whileD. for答案:C, D。

while和for是C语言中的循环结构,用于重复执行一段代码直到满足某个条件。

6. 以下哪个选项是C语言中的数组声明?A. int arr[5];B. int arr[];C. int arr = 5;D. int [5]arr;答案:A, B。

在C语言中,数组可以声明为固定大小(如A选项)或者声明为动态大小(如B选项)。

7. 以下哪个选项是C语言中的指针声明?A. int *ptr;B. int ptr[];C. int ptr = 0;D. int *ptr = nullptr;答案:A, D。

大一上c语言期末考试题库及详解答案

大一上c语言期末考试题库及详解答案

大一上c语言期末考试题库及详解答案在编写大一上C语言期末考试题库及详解答案时,需要确保内容的准确性和完整性。

以下是一份模拟的C语言期末考试题库及其详解答案的正文内容:一、选择题1. C语言中,以下哪个是正确的标识符?- A. 2variable- B. variable2- C. variable-variable- D. variable$答案:B详解:在C语言中,标识符可以由字母、数字和下划线组成,但不能以数字开头,也不能包含特殊字符如$或-。

2. 以下哪个是C语言中的整型常量?- A. 3.14- B. 'A'- C. 0x1A- D. 1e2答案:C详解:选项A是浮点数,选项B是字符常量,选项D是科学计数法表示的浮点数,而选项C是十六进制表示的整型常量。

二、填空题1. 在C语言中,一个简单的if语句的语法格式为:`if (________) { __________ }`。

答案:条件表达式;语句块2. 以下代码段的输出结果是什么?```cint a = 10, b = 20;if (a < b) {printf("%d", a + b);}```答案: 30三、简答题1. 简述C语言中数组的定义和初始化方法。

答案:在C语言中,数组是一种基本的数据结构,用于存储固定数量的相同类型的元素。

数组的定义格式为:`类型名数组名[数组大小]`。

初始化可以使用花括号包围的初始化列表,如:`int arr[5] = {1, 2, 3, 4, 5};`。

2. 描述C语言中指针的概念及其用途。

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

指针的主要用途包括动态内存分配、数组操作、函数参数传递等。

指针可以用于通过地址来间接访问和修改数据,增加了程序的灵活性。

四、编程题1. 编写一个C语言程序,实现输入两个整数,输出它们的和。

```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("它们的和是:%d\n", sum);return 0;}```2. 编写一个函数,用于计算一个整数的阶乘。

上海海事大学C语言期末上机题库 13

上海海事大学C语言期末上机题库 13

if (a>c) b=a; a=c; c=b;
答案: =======(答案 1)======= 2
第 10 题 (1.0 分) 题号:532 以下 do-while 语句中循环体的执行次数是【1】.
a=10;
b=0; do { b+=2; a-=2+b; } while (a>=0);
答案: =======(答案 1)======= 3
答案: =======(答案 1)======= 9,10
第 5 题 (1.0 分) 题号:431 执行下面两个语句,输出的结果是【1】,char c1=97,c2=98;printf("%d %c",c1,c2); 答案: =======(答案 1)======= 97 b
*第 6 题 (1.0 分) 题号:293 getchar()函数只能接收一个【1】. 答案: =======(答案 1)======= 字符
第 14 题 (1.0 分) 题号:341 定义 int a[2][3];表示数组 a 中的元素个数是【1】个. 答案: =======(答案 1)======= 6
第 15 题 (1.0 分) 题号:328 C 语言中,数组元素的下标下限为【1】. 答案: =======(答案 1)======= 0
答案:
=======(答案 1)======= 28
第 2 题 (1.0 分) 题号:78 已知 i=5;写出语句 i+=012; 执行后整型变量 i 的十进制值是【1】.
答案:
=======(答案 1)======= 15
第 3 题 (1.0 分) 题号:510 若 a 是 int 型变量,则计算表达式 a=25/3%3 后 a 的值为【1】.

上海海事大学2016年C语言期末考试卷B【精选】

上海海事大学2016年C语言期末考试卷B【精选】

第 1 页 共 8 页上 海 海 事 大 学 试 卷2010 — 2011 学年第2学期期末考试《 高级语言程序设计 》(B 卷)班级 学号 姓名 总分一、填空题(每空1分,共20分)1. C++将数据类型分为三类,它们分别为 、 和 。

2.布尔型(bool )占 字节的存储空间,表示 和 两个值。

3.实数(浮点数)有 和 两种表示形式。

4. C++中函数的调用过程分三步进行,即、和。

5. C++中函数的参数传递有两种方式,即 和 。

6. 表示数组内存空间的首地址。

7. 用 关键字声明结构类型。

8. 在C++中使用 来为一个已定义的合法类型名增加新名称。

9. 链表中每一个结点都是由 和 组成的。

10. 静态类型的局部变量具有 变量的作用域和 变量的生存期。

二、选择题(每空2分,共20分)1. 决定C++中函数的返回值类型的是 ()A. return 语句中的表达式类型B. 调用该函数时系统随机产生的类型C. 调用该函数时的主调函数的类型D. 在定义该函数时所指定的数据类型2. 设有定义int i;double j =5;,则10+i+j 值的数据类型是 ()题 目一二三四五得 分阅卷人--------------------------------------------------------------------------------------装 订线------------------------------------------------------------------------------------2A. intB. doubleC. floatD. 不确定3. 禁止修改指针p本身,且禁止修改p所指向的数据,这样的指针应定义为( )A. const char *p=“ABCD”;B. char *const p=“ABCD”;C. char const *p=“ABCD”;D. const char * const p=“ABCD”;4.函数调用func((exp1,exp2),(exp3,exp4,exp5))中所含实参的个数为( )A. 1B. 2C. 4D. 55. 一个函数功能不太复杂,但要求被频繁调用,则应把它定义为( )A. 内联函数B. 重载函数C. 递归函数D. 嵌套函数6. 若有int a=100,*p=&a;,则以下说法错误的是( )A. 声明变量p,其中*表示p是一个指针变量B. 变量p经初始化,获得变量a的地址C. 变量p只可以指向一个整型变量D. 变量p的值为1007. 假设int a=1,b=2;则表达式(++a/b)*b--的值为( )A. 0B. 1C. 2D. 0.58. 在下列成对的表达式中,运算结果类型相同的一对是( )第 2 页共8 页A. 7.0/2.0和7.0/2B. 5/2.0和5/2C. 7.0/2和7/2D. 8/2和6.0/2.09. 若有以下定义,则下列对数组引用正确的是( )int (*q)[3]=new int[2][3];A.q[2][3]; B. *q; C. *(*q+2); D. *(*(q+2)+3);10. 下列说明语句中正确的是( )A.int N[‘a’]; B. int N[1,2] ; C. int N[][] ; D. int *N[];三、程序填空题(每空2分,共10分)以下程序通过调用自定义函数scopy( )将字符串s1复制到字符串s2,并输出显示,请填充下面程序中的下划线。

c语言期末考试题库大题及详解答案

c语言期末考试题库大题及详解答案

c语言期末考试题库大题及详解答案1. 题目:编写一个C语言程序,实现一个简单的学生成绩管理系统,要求能够添加学生信息、查询学生信息、修改学生信息和删除学生信息。

答案:```c#include <stdio.h>#include <stdlib.h>#include <string.h>typedef struct {int id;char name[50];float score;} Student;Student students[100];int studentCount = 0;void addStudent(int id, char* name, float score) {if (studentCount < 100) {students[studentCount].id = id;strcpy(students[studentCount].name, name);students[studentCount].score = score;studentCount++;} else {printf("学生信息已满。

\n");}}void queryStudent(int id) {for (int i = 0; i < studentCount; i++) {if (students[i].id == id) {printf("学生ID:%d, 姓名:%s, 成绩:%.2f\n", students[i].id, students[i].name, students[i].score);return;}}printf("未找到该学生信息。

\n");}void modifyStudent(int id, char* name, float score) {for (int i = 0; i < studentCount; i++) {if (students[i].id == id) {strcpy(students[i].name, name);students[i].score = score;printf("学生信息已更新。

大学c语言期末考试题库及答案汇总

大学c语言期末考试题库及答案汇总

大学c语言期末考试题库及答案汇总一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的关键字?A. intB. INTC. IntegerD. int_答案:A2. C语言中,以下哪个函数用于计算字符串的长度?A. strlen()B. length()C. size()D. count()答案:A3. 在C语言中,以下哪个运算符用于表示逻辑与?A. &&B. ||C. !D. &&答案:A4. 以下哪个选项不是C语言中的控制语句?A. ifB. whileC. switchD. goto答案:D5. 在C语言中,以下哪个函数用于将整数转换为字符串?A. atoi()B. itoa()C. sprintf()D. printf()答案:B6. C语言中,以下哪个选项是正确的字符常量表示?A. 'ab'B. "ab"C. 'ab'D. "ab"答案:C7. 在C语言中,以下哪个选项是正确的数组声明?A. int arr[5] = {1, 2, 3};B. int arr[] = {1, 2, 3};C. int arr[3] = {1, 2, 3, 4};D. int arr = {1, 2, 3};答案:A8. 下列哪个选项是C语言中的合法浮点数?A. 3.14159B. 3.14.159C. 3.14eD. 3.14e1答案:D9. 在C语言中,以下哪个函数用于输出格式化的字符串?A. printf()B. scanf()C. sprintf()D. fprintf()答案:A10. C语言中,以下哪个选项是正确的函数声明?A. int function();B. int function;C. int function int;D. int function(int, int);答案:D二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型变量的关键字是________。

2018—2019学年第二学期期末 C语言程序设计上机考试试题及答案

2018—2019学年第二学期期末 C语言程序设计上机考试试题及答案
#include <conio.h>
#include <stdio.h>
void main()
{ int a[10]={1,4,2,7,3,12,5,34,5,9},i,max,pos;
max = a[0];
pos = 0;
for ( i=1; i<10; i++)
/************找错误************/
2018—2019学年第二学期期末上机考试试题及答案
《C语言程序设计》
答题要求:
1、把监考教师发给的“Word答题册”文档重新命名为姓名+学号,本试卷的所有答案都写到该文档中并上交。
2、注意标清楚题号、保存文档。
3、编程题要求把源代码复制到Word文档中,把运行后的输出结果截图粘贴到代码下面。
本试题需在word文档【答题册】作答。(试题总分100分)
while(score<0||score>100);
t=score/10;
/*************找错误**************/
switch(score)
{
case 10:
case 9:printf("优秀!\n");break;
case 8:printf("良好!\n");break;
case 7:printf("中等!\n");break;
{
int x,y;
scanf("%d ",&x);
if()
y=-x;
else
y=;
printf("x=%d,y=%d\n",x,y);

c语言上机试题库及答案

c语言上机试题库及答案

c语言上机试题库及答案1. 题目一:字符串翻转要求:编写一个C语言程序,实现字符串的翻转功能。

```c#include <stdio.h>#include <string.h>void reverseString(char *str) {int len = strlen(str);char temp;for(int i = 0; i < len / 2; i++) {temp = str[i];str[i] = str[len - i - 1];str[len - i - 1] = temp;}}int main() {char str[100];printf("Enter a string: ");scanf("%s", str);reverseString(str);printf("Reversed string: %s\n", str);return 0;}```2. 题目二:计算数组中的最大值要求:编写一个C语言程序,计算并输出一个整数数组中的最大值。

```c#include <stdio.h>int findMax(int arr[], int size) {int max = arr[0];for(int i = 1; i < size; i++) {if(arr[i] > max) {max = arr[i];}}return max;}int main() {int arr[] = {10, 45, 23, 67, 89, 34};int size = sizeof(arr) / sizeof(arr[0]);int max = findMax(arr, size);printf("The maximum value in the array is: %d\n", max); return 0;}```3. 题目三:实现二分查找要求:编写一个C语言程序,实现一个二分查找算法,查找一个有序数组中是否存在目标值。

大学C语言期末考试练习题(带详解答案)

大学C语言期末考试练习题(带详解答案)



C)while的循环体至少无条件执行一次


D)while的循环控制条件比do-while的严格
D 制
结 构
7)语句while (!a);中条件等价于____.
A)a!=0 B)~a C)a==1 D)a==0
返回目录
C
● 单项选择题
第20页
D 8)以下程序的运行结果为____.
#include <stdio.h>
C)for(表达式1;表达式1;表达式3)
D)for(表达式1;表达式3;表达式3)
返回目录
C
第24页
● 程序填空题
1.下面程序的功能是计算n!。
#include <stdio.h>
main( )
{
int i, n;

long p;
言 程
printf ( "Please input a number:\n" );
main( )
语{
言 程 序 设 计
控 制 结
构}
int i=1,sum=0; while(i<=100)
sum+=i; i++; printf("1+2+3+...+99+100=%d", sum);
A)5050 B)1 C)0
D)程序陷入死循环
返回目录
C
● 单项选择题
A 9)以下程序的运行结果为____.


A)\’ B)\0 C)\n
D)\\
D 基

8) 设先有定义:int a=10;则表达式a+=a *=a的值为____.

(完整版)C语言上机练习题及答案

(完整版)C语言上机练习题及答案

(完整版)C语言上机练习题及答案1输入三个整数x,y,z,把这三个数由小到大输出。

# includevoid main(){int x,y,z,a;scanf ("%d,%d,%d",&x,&y,&z);if(x>y) {a=x; x=y;y=a;}if(x>z) { a=x; x=z; z=a;}if(y>z) {a=y; y=z; z=a;}printf("%d,%d,%d\n",x,y,z);}2输入圆的半径,输出圆的周长和面积。

# include# define PI 3.1415926# define S ==PI*r*r# define V (4.0/3)*PI*r*r*rvoid main(){double r;printf("please input r:");scanf("%lf",&r);printf("area is %.4lf\n",S);printf("volume is %.4lf\n",V);}输入正方形的边长,输出正方形的周长和面积。

# includevoid main(){float c,zc,mj;printf("输入你的正方形");scanf("%f\n",&c);zc=4*c;mj=c*c;printf("周长%f,面积%f,边长%f",zc,mj,c);}3用格式输入函数输入3个字符,并用输出函数反向输出3个字符和他们的ASCII 码。

# includeint main(){char-ch1,ch2,ch3;printf("please input three characters:\n");scanf("%C%C%c",&ch1,&ch2,&ch3);printf("%c\n%d\n",ch3,ch3);printf("%c\n%d\n",ch2,ch2);printf("%c\n%d\n",ch1,ch1);}输入一个摄氏温度,要求输出华氏温度。

上机考试题库c语言

上机考试题库c语言

上机考试题库c语言一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于声明一个函数?A. intB. floatC. voidD. function2. 若有定义int a=5;,则以下哪个表达式的值不为5?A. a++B. a--C. ++aD. --a3. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. variable-2D. variable$24. 在C语言中,以下哪个选项表示逻辑“与”操作?A. &&B. ||C. !D. &5. 以下哪个选项是C语言中的整型数据类型?A. intB. floatC. doubleD. char6. 在C语言中,以下哪个选项用于声明一个指针?A. *B. &C. %D. #7. 若有定义int a[5]={1,2,3,4,5};,则以下哪个表达式的值不为3?A. a[2]B. *(a+2)C. a+2D. *a8. 在C语言中,以下哪个选项表示逻辑“或”操作?A. &&B. ||C. !D. |9. 在C语言中,以下哪个选项用于声明一个字符数组?A. char a[5]B. int a[5]C. float a[5]D. double a[5]10. 若有定义char str[10]="Hello";,则以下哪个表达式的值不为'o'?A. str[4]B. *(str+4)C. str+4D. *(str+5)二、填空题(每题2分,共20分)1. 在C语言中,用于声明一个整型变量的关键字是______。

2. 若有定义int a=10;,则表达式a++的值是______。

3. C语言中,用于声明一个浮点型变量的关键字是______。

4. 在C语言中,用于声明一个字符型变量的关键字是______。

5. 若有定义int a[5]={1,2,3,4,5};,则表达式*(a+2)的值是______。

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

试卷编号:9688所属语言:C语言试卷方案:期中考试试卷总分:100分共有题型:5种一、填空共15题(共计15分)第1题(1.0分)题号:528设a、b、c为整型数, 且a=2、b=3、c=4, 则执行完以下语句:a*=16+(b++)-(++c);后,a的值是【1】.答案:=======(答案1)=======28第2题(1.0分)题号:78已知 i=5;写出语句 i+=012; 执行后整型变量 i 的十进制值是【1】.答案:=======(答案1)=======15第3题(1.0分)题号:510若a是int型变量,则计算表达式 a=25/3%3 后a的值为【1】.答案:=======(答案1)=======2第4题(1.0分)题号:437以下程序的输出结果为【1】,#include "stdio.h" main(){int a=010,j=10;printf("%d,%d\n",++a,j--);}答案:=======(答案1)=======9,10第5题(1.0分)题号:431执行下面两个语句,输出的结果是【1】,char c1=97,c2=98;printf("%d %c",c1,c2); 答案:=======(答案1)=======97 b*第6题(1.0分)题号:293getchar()函数只能接收一个【1】.答案:=======(答案1)=======字符第7题(1.0分)题号:440设a=3,b=4,c=5,则表达式!(a+b)+c-1&&b+c/2的值为【1】.答案:=======(答案1)=======1第8题(1.0分)题号:95已知a=13,b=6, a&&b的十进制数值为【1】.答案:=======(答案1)=======1第9题(1.0分)题号:306当a=1,b=2,c=3时,执行以下程序段后b=【1】.if (a>c) b=a;a=c;c=b;答案:=======(答案1)=======2第10题(1.0分)题号:532以下do-while语句中循环体的执行次数是【1】.a=10;b=0;do { b+=2; a-=2+b; } while (a>=0);答案:=======(答案1)=======3第11题(1.0分)题号:398程序段int k=10; while(k=0) k=k-1循环体语句执行【1】次. 答案:=======(答案1)=======第12题(1.0分)题号:438以下程序的输出结果为【1】,#include "stdio.h" main(){int a;for(a=0;a<10;a++);printf("%d",a);} 答案:=======(答案1)=======10*第13题(1.0分)题号:336若有以下数组a,数组元素:a[0]~a[9],其值为9 4 12 8 2 10 7 5 1 3该数组的元素中,数值最大的元素的下标值是【1】.答案:=======(答案1)=======2第14题(1.0分)题号:341定义int a[2][3];表示数组a中的元素个数是【1】个.答案:=======(答案1)=======6第15题(1.0分)题号:328C语言中,数组元素的下标下限为【1】.答案:=======(答案1)=======二、判断共15题(共计15分)第1题(1.0分)题号:940int a[9]; 则a数组的下标范围是1-9答案:N第2题(1.0分)题号:935在C程序中,%是只能用于整数运算的运算符答案:Y第3题(1.0分)题号:929在C语言中,5种基本数据类型的存储空间长度的排列顺序为:char<int<long int<=float<double答案:Y第4题(1.0分)题号:194若有定义和语句:int a;char c;float f;scanf("%d,%c,%f",&a,&c,&f);若通过键盘输入:10,A,12.5,则a=10,c='A',f=12.5.答案:Y第5题(1.0分)题号:961C语言本身并不提供输入输出语句.但可以通过输入输出函数来实现数据的输入输出. 答案:Y第6题(1.0分)题号:721语句scanf("%7.2f",&a);是一个合法的scanf函数.答案:N第7题(1.0分)题号:951在执行switch语句时,default和各个case的出现次序不影响执行结果.答案:Y第8题(1.0分)题号:869若有int i=10, j=0;则执行完语句if (j=0)i++; else i--; i的值为11.答案:N第9题(1.0分)题号:930关于if语句中,条件表达式只能是关系表达式或逻辑表达式答案:N第10题(1.0分)题号:952do-while循环是先判断循环条件表达式,后执行循环体;while循环是先执行循环体,后判断循环条件表达式.答案:N第11题(1.0分)题号:953C语言中的for语句可以用于循环次数已经确定的情况,但是不能用于循环次数不确定而只给出循环结束条件的情况.答案:N第12题(1.0分)题号:954continue语句只结束本次循环,而不是终止整个循环的执行.break语句则是结束整个循环过程,不再判断执行循环的条件是否成立.答案:Y第13题(1.0分)题号:941在定义二维数组时,可以将该数组的两个维数全部省略答案:N第14题(1.0分)题号:735如果想使一个数组中全部元素的值为0,可以写成int a[10]={0*10};答案:N第15题(1.0分)题号:736int a[3][4]={{1},{5},{9}}; 它的作用是将数组各行第一列的元素赋初值,其余元素值为0.答案:Y三、单项选择共20题(共计40分)第1题(2.0分)题号:2056以下程序的输出结果是().main(){float x=3.6;int i;i=(int)x;printf("x=%f,i=%d\n",x,i);}A:x=3.600000,i=4B:x=3,i=3C:x=3.600000,i=3D:x=3 i=3.600000答案:C第2题(2.0分)题号:2214在C语言中,char型数据在内存中的存储形式是().A:补码B:反码C:原码D:ASCII码答案:D第3题(2.0分)题号:2174C语言程序中必须有的函数是().A:#include "stdio.h"B:mainC:printfD:scanf答案:B第4题(2.0分)题号:2040若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97), 则以下程序段的执行结果是().ch='a'; k=12; printf("%x,%o,",ch,ch); printf("k=%%%d\n",k);A:因变量类型与格式描述符的类型不匹配,输出无定值B:输出项与格式描述符个数不符,输出为零值或不定值C:61,141,k=%12D:61,141,k=%d答案:C第5题(2.0分)题号:2049以下程序的输出结果为().main(){int i=010,j=10;printf("%d,%d\n",++i,j--);}A:11,10B:9,10C:010,9D:10,9答案:B第6题(2.0分)题号:2189从键盘上输入某字符串时,不可使用的函数是().A:getchar()B:gets()C:scanf()D:fread()答案:A第7题(2.0分)题号:2045若给定条件表达式(M)?(a++):(a--),则其中表达式M(). A:和(M==0)等价B:和(M==1)等价C:和(M!=0)等价D:和(M!=1)等价答案:C第8题(2.0分)题号:2144int a=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;则a的值为().A:1B:2C:3D:不一定答案:A第9题(2.0分)题号:2122下列程序的输出结果是().main(){ int x=1,y=0,a=0,b=0;switch(x){case 1:switch(y){case 0:a++;break; case 1:b++;break; }case 2:a++;b++;break;case 3:a++;b++;break;}printf("a=%d,b=%d\n",a,b);}A:a=1,b=0B:a=2,b=1C:a=1,b=1D:a=2,b=2答案:B*第10题(2.0分)题号:2050C 语言中以下几种运算符的优先次序()的排列是正确的.A:由高到低为:!,&&,||,算术运算符,赋值运算符B:由高到低为:!,算术运算符,关系运算符,&&,||,赋值运算符C:由高到低为:算术运算符,关系运算符,赋值运算符,!,&&,|| D:由高到低为:算术运算符,关系运算符,!,&&,||,赋值运算符答案:B第11题(2.0分)题号:2263以下不正确的if语句形式是().A:if(x>y&&x!=y);B:if(x==y) x+=y;C:if(x!=y) scanf("%d",&x) else scanf("%d",&y);D:if(x<y) {x++;y++;}答案:C第12题(2.0分)题号:2059以下程序的运行结果是().main(){ int n;for(n=1;n<=10;n++){if(n%3==0) continue;printf("%d",n);}}A:12457810B:369C:12D:1234567890答案:A第13题(2.0分)题号:2061在以下给出的表达式中,与 do--while(E)语句中的(E)不等价的表达式是().A:(!E==0)B:(E>0||E<0)C:(E==0)D:(E!=0)答案:C第14题(2.0分)题号:2058以下程序的运行结果是().main(){int i=1,sum=0;while(i<10) sum=sum+1;i++;printf("i=%d,sum=%d",i,sum);}A:i=10,sum=9B:i=9,sum=9C:i=2,sum=1D:运行出现错误答案:D*第15题(2.0分)题号:2068设j和k都是int类型,则for循环语句for(j=0,k=-1;k=1;j++,k++) printf("****\n");(). A:循环结束的条件不合法B:是无限循环C:循环体一次也不执行D:循环体只执行一次答案:B第16题(2.0分)题号:2251以下不是无限循环的语句为().A:for(y=0,x=1;x>++y;x=i++) i=x;B:for(;;x++=i);C:while(1){x++;}D:for(i=10;;i--) sum+=i;答案:A第17题(2.0分)题号:2278以下能对一维数组a进行正确初始化的语句是().A:int a[10]=(0,0,0,0,0)B:int a[10]={};C:int a[]={0};D:int a[10]={10*1};答案:C第18题(2.0分)题号:2284若有说明: int a[3][4]={0};则下面正确的叙述是().A:只有元素a[0][0]可得到初值0B:此说明语句不正确C:数组a中各元素都可得到初值,但其值不一定为0D:数组a中每个元素均可得到初值0答案:D第19题(2.0分)题号:2256printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列,如果字符串长度大于5,则输出按方式().A:从左起输出该字符串,右补空格B:按原字符长从左向右全部输出C:右对齐输出该字串,左补空格D:输出错误信息答案:B第20题(2.0分)题号:2275以下对二维数组a的正确说明是().A:int a[3][]B:float a(3,4)C:double a[1][4]D:float a(3)(4)答案:C四、程序填空共4题(共计24分)第1题(6.0分)题号:427/*------------------------------------------------------- 【程序填空】---------------------------------------------------------题目:百鸡问题:100元买100只鸡,公鸡一只5元钱,母鸡一只3 元钱,小鸡一元钱三只,求100元钱能买公鸡、母鸡、小鸡各多少只?-------------------------------------------------------*/ #include <stdio.h>main(){int cocks,hens,chicks;cocks=0;while(cocks<=19)/***********SPACE***********/{【?】=0;/***********SPACE***********/while(hens<=【?】){chicks=100.0-cocks-hens;if(5.0*cocks+3.0*hens+chicks/3.0==100.0)printf("%d,%d,%d\n",cocks,hens,chicks);/***********SPACE***********/【?】;}/***********SPACE***********/【?】;};}答案:=======(答案1)=======hens=======(答案2)=======33=======(答案3)=======hens++=========或=========++hens=========或=========hens=hens+1=======(答案4)=======cocks++=========或=========++cocks=========或=========cocks=cocks+1=========或=========cocks= cocks + 1第2题(6.0分)题号:459/*-------------------------------------------------------【程序填空】---------------------------------------------------------题目:在歌星大奖赛中,有10个评委为参赛的选手打分,分数为1~100分。

相关文档
最新文档