计算机语言B(C语言)春季学期复习参考题及参考标准答案

合集下载

大学c语言复习题附答案

大学c语言复习题附答案

大学c语言复习题附答案判断题1.运算器是完成算术和逻辑操作的处理部件,通常称为CPU。

×2.通常硬盘安装在主机箱内,因此它属于主存储器。

×3.指令与数据在计算机内是以ASCII码进行存储的。

×4.操作系统是合理地组织计算机工作流程、有效地管理系统资源、方便用户使用的程序集合。

√5.用计算机机器语言编写的程序可以由计算机直接执行,用高级语言编写的程序必须经过编译才能执行。

√6.计算机的所有计算都是在内存中进行的。

×7.字长是指计算机能直接处理的二进制信息的位数。

√8.计算机区别于其他计算工具的本质特点是能存储数据和程序。

√9.系统软件就是市场上买来的软件,应用软件就是自己编写的软件。

×10.常用字符的ASCII码值从小到大的排列规律是:空格、阿拉伯数字、小写英文字母、大写英文字母。

×11.多台计算机相连,就形成了一个网络系统。

×12.在Internet网上,IP地址、E-mail地址都是唯一的。

√13.不同类型的变量在内存中占用存储空间的大小都是一样的。

×14.表示数学式3<x<5的c表达式也是3<x<5。

×< bdsfid="80" p=""></x<5的c表达式也是3<x<5。

×<>15.设某字符的ASCII码十进制值为72,则其十六进制值为48。

√16.结构化程序语言的三种基本结构是顺序、选择和循环。

√17.‘\n’不是一个字符常量。

×18.与float型数据相比,double型数据的精度高,取值范围大。

√19.在C语言中,表达式(010+2)的值是10。

√20.do-while语句先执行循环体,后判断循环条件,所以循环体至少会执行一次。

√21.在C 语言中,常量和变量都有数据类型。

c语言上机春考考试试题及答案

c语言上机春考考试试题及答案

c语言上机春考考试试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. returnD. function答案:A2. 下列哪个选项是正确的C语言注释方式?A. // 这是注释B. /* 这是注释 */C. /* 这是注释D. // 这是注释答案:B3. 在C语言中,以下哪个运算符用于比较两个值是否相等?A. ==B. =C. !=D. <=答案:A4. 下列哪个选项不是C语言的基本数据类型?A. intB. floatC. charD. string答案:D5. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A6. C语言中,以下哪个关键字用于定义一个枚举类型?A. enumB. structC. unionD. typedef答案:A7. 在C语言中,以下哪个关键字用于定义一个宏?A. defineB. macroC. constD. #define答案:D8. 下列哪个选项是C语言中正确的数组声明?A. int arr[5] = {1, 2, 3, 4, 5};B. int arr[] = {1, 2, 3, 4, 5};C. int arr[5] = {1, 2};D. int arr = {1, 2, 3, 4, 5};答案:A9. 在C语言中,以下哪个函数用于计算字符串的长度?A. strlen()B. length()C. size()D. sizeof()答案:A10. C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. strcat()C. strncpy()D. strncat()答案:A二、填空题(每题3分,共15分)1. C语言中,用于定义一个整型变量的关键字是________。

答案:int2. 在C语言中,使用________运算符可以连接两个字符串。

C语言复习题(答案)

C语言复习题(答案)

1.编程计算球的体积(V=34πr3),要求半径通过键盘输入,π的值定义为符号常量PI ,输出结果保留两位小数,输入前和输出时要求给出含义明确的提示信息。

#include<stdio.h>main(){float r,v;scanf(“%f ”,&r)v=4/3*PI*r*r*r;printf(“v is %.2f ”,v);}2.输入任意一个3位数,将其各位数字反序输出(例如输入123,输出321)。

#include<stdio.h>main(){int n,s,g,b;printf(“please input n:\n ”);scanf(“%d ”,&n);g=n%10;s=n/10%10;b=n/100;printf(“%d”,100*g+10*s+b);}3.输入三角形的边长,求三角形的面积(面积=sqrt(s(s-a)(s-b)(s-c)),s=(a+b+c)/2)。

#include <stdio.h>main(){int a,s,c,b;printf(“please input a,b,c:”);scanf(“%d,%d,%d”,&a,&b,&c);while(a+b)<=c||(a+c<=b||(b+c)<=a);{printf(“please input a,b,c:”);scanf(“%d,%d,%d”,&a,&b,&c);}s=(a+b+c)/2;area=sqrt(s*(s-a)(s-b)(s-c));printf(“area is:%d\n”,area);}4. 输入3个字符,反向输出这3个字符和它们的ASCII码。

#include <stdio.h>main(){char ch1,ch2,ch3;printf("please input ch1&ch2&ch3:");scanf(“%c%c%c”,&ch1,&ch2,&ch3);printf(“%c\t%c\t%c\n”,ch3,ch2,ch1);printf(“%d\t%d\t%d\n”,ch3,ch2,ch1)}5.编程计算圆的面积(S=πr2),要求半径通过键盘输入,π的值定义为符号常量PI,输出结果保留两位小数,输入前和输出时要求给出含义明确的提示信息。

计算机系c语言考试题及答案

计算机系c语言考试题及答案

计算机系c语言考试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的关键字?A. intB. floatC. doubleD. all of the above答案:D2. C语言中,用于定义一个整型变量的关键字是?A. intB. charC. floatD. double答案:A3. 以下哪个选项不是C语言中的运算符?A. +B. -C. /D. %答案:D4. C语言中,用于定义一个字符型变量的关键字是?A. charB. intC. floatD. double答案:A5. 在C语言中,哪个函数用于计算字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A6. 下列哪个选项是C语言中的正确注释?A. /* This is a comment */B. // This is a commentC. # This is a commentD. both A and B答案:D7. C语言中,哪个关键字用于定义一个函数?A. functionB. defC. voidD. int答案:C8. 在C语言中,哪个关键字用于声明一个函数的返回类型?A. returnB. typeC. retD. void答案:D9. C语言中,哪个关键字用于定义一个浮点型变量?A. intB. floatC. doubleD. both B and C答案:D10. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. both A and BD. all of the above答案:D二、填空题(每题2分,共20分)1. 在C语言中,____关键字用于定义一个空函数,即不返回任何值的函数。

答案:void2. C语言中,____运算符用于比较两个值是否相等。

答案:==3. 在C语言中,____函数用于将一个字符串复制到另一个字符串。

计算机语言B(C语言)春季学年b卷及参考标准答案

计算机语言B(C语言)春季学年b卷及参考标准答案

2007 春计算机语言B(C语言)一、选择题(每小题1分,共30分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将你认为正确的选项填写在题干的括号内。

1.在C语言中,不正确的int类型的常数是【】。

A.32768 B.0 C.037 D.0Xaf2.以下说法中正确的是【】。

A. C语言程序总是从第一个函数开始执行B.在C语言程序中,要调用的函数必须在main()函数中说明C. C语言程序总是从main()函数开始执行D. C语言程序中的main()函数必须放在程序的开始部分3.设有 int x=11; 则表达式 (x++ * 1/3) 的值是【】。

A.3 B. 4 C.11 D. 124.设x、y、z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为【】。

A.4 B. 16 C.32 D. 525.表达式:3==2的值是【】。

A.true B.非零值C.0 D. 16.以下程序中循环体的执行次数是【】。

A.3 B. 2 C. 1 D. 0main(){ int i,j;for(i=0,j=1; i<=j+1; i+=2,j--)printf("%d \n",i);}7.设有数组定义: char array [ ]="China"; 则数组 array所占的空间为【】。

A.4个字节 B. 5个字节 C. 6个字节D. 7个字节8.下面程序的输出是【】。

main(){ int k=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}A.k=11,k=12,k=11 B. k=11,k=13,k=13C.k=11,k=013,k=0xb D. k=11,k=13,k=b9.以下叙述中不正确的是【】。

A.在不同的函数中可以使用同名的变量B.函数中的形式参数是局部变量C.在一个函数内定义的变量只在本函数范围内有效D.在一个函数内的复合语句中定义的变量在本函数范围内有效10.有如下程序main(){ int x=123;do{ printf("%d",x--);}while(!x);}该程序的执行结果是【】。

计算机c语言考试题及答案

计算机c语言考试题及答案

计算机c语言考试题及答案1. C语言的基础知识C语言是一种通用的、面向过程的编程语言,广泛用于软件开发和系统编程。

下面是一些计算机C语言的基础考试题:1.1 在C语言中,如何声明一个整型变量x?答案:使用关键字int,例如:int x;1.2 如何打印输出变量x的值?答案:使用printf函数,例如:printf("%d", x);1.3 如何进行C语言程序的注释?答案:使用双斜杠(//),例如:// 这是注释的内容。

2. C语言的数据类型和运算符C语言提供了多种数据类型和运算符,用于进行数据操作和计算。

以下是一些相关考试题:2.1 C语言中的基本数据类型有哪些?答案:int、float、double、char等。

2.2 请解释一下C语言中的逻辑运算符。

答案:C语言中的逻辑运算符包括与(&&)、或(||)和非(!),用于进行逻辑判断。

2.3 请写一个C语言程序,计算两个整数的和并输出结果。

答案:```c#include <stdio.h>int main() {int a = 5;int b = 3;int sum = a + b;printf("The sum is %d\n", sum);return 0;}```3. C语言的控制语句和循环结构C语言提供了多种控制语句和循环结构,用于实现程序的条件判断和循环执行。

以下是一些相关考试题:3.1 C语言中的if语句如何使用?举例说明。

答案:if语句用于进行条件判断,根据条件的真假执行相应的代码。

例如:```cint x = 3;if (x > 0) {printf("x is positive\n");} else {printf("x is non-positive\n");}```3.2 C语言中的循环结构有哪些?请写一个例子。

计算机语言B(C语言)2006春季学期B卷及参考答案

计算机语言B(C语言)2006春季学期B卷及参考答案

2006 春计算机语言B期末考试一、选择题(第1—20小题每小题1分,Array第21—30小题每小题2分,共40分)下列各题[A]、[B]、[C]、[D]四个选项中,只有一个选项是正确的,请将你认为正确的选项填写在答题纸相应位置上,答在试题上不得分。

1.若变量已正确定义并赋值,以下符合C语言语法的表达式是_____________。

[A] a:=b+2 [B] a=b=c+1 [C] int 18.5%3 [D] a=a+5=c+b2.C语言中运算对象必须是整型的运算符是_____________。

[A] %= [B] / [C] = [D] <=3.若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是_____________。

[A] 1 [B] 2 [C] 2.0[D] 2.54.有如下程序:main(){ int y=3,x=3,z=1;printf("%d,%d\n",(++x,y++),z+2);}运行该程序的输出结果是_____________。

[A] 3,4 [B] 4,2 [C] 4,3 [D] 3,35.能正确表达逻辑关系"a≥3"或"a≤-3"的C语言表达式是_____________。

[A] a>=3 or a<=-3 [B] a>=3|a<=-3[C] a>=3&&a<=-3 [D] a>=3||a<=-36.设有说明语句 char a='\072',则变量a _____________。

[A]包含1个字符 [B]包含4个字符 [C]包含3个字符[D]说明不合法7. 有如下函数调用语句func(r1,r2+r3,(r4,r5));该函数调用语句中,含有的实参个数是_____________。

[A] 3 [B] 4 [C] 5[D]有语法错误8. C语言中,形参缺省存储类别是。

计算机系c语言考试题及答案

计算机系c语言考试题及答案

计算机系c语言考试题及答案C语言作为计算机科学与技术专业中的重要课程之一,考试是检验学生对于C语言基本知识和编程能力的重要方式之一。

下面将为大家提供一套C语言的考试题目及其答案,帮助大家更好地复习和准备考试。

题目一:简答题(20分)1. C语言中的运算符有哪些?请分别举例并说明其功能。

2. 什么是指针?请简要描述指针的概念和用途。

3. C语言中的控制结构有哪些?请简要说明各种控制结构的特点和应用场景。

(参考答案)1. C语言中常见的运算符包括算术运算符(+、-、*、/)、关系运算符(>、<、==、!=)、逻辑运算符(&&、||、!)、位运算符(&、|、^、~)、赋值运算符(=)、条件运算符(? :)等。

例如:算术运算符可以用于对变量进行加减乘除等操作,如 a + b、c - d;关系运算符用于比较两个变量的大小关系,如a > b;逻辑运算符用于进行逻辑判断,如 a > b && c < d;位运算符用于对二进制位进行位操作,如 a & b。

2. 指针是C语言中的一种特殊数据类型,用于存储变量的内存地址。

可以通过指针来间接访问或修改对应内存地址中的数据。

指针在C语言中具有重要作用,可用于动态分配内存、传递参数、实现数据结构等。

例如,int *p; 声明了一个整型指针变量p,可以用来存储整型变量的地址。

3. C语言中的控制结构包括顺序结构、分支结构(if-else语句、switch-case语句)和循环结构(for循环、while循环、do-while循环等)。

顺序结构按照代码的先后顺序依次执行;分支结构根据条件的判断结果选择执行不同的代码段;循环结构根据条件的判断结果重复执行一段代码。

这些控制结构在程序设计中用于控制程序的流程和逻辑。

题目二:编程题(30分)实现一个简单的学生成绩管理系统,要求能够输入学生信息(包括姓名、学号、各科成绩等),并能够计算并显示学生的平均成绩和总成绩。

计算机语言B(C语言)2008春季学期A卷及参考答案

计算机语言B(C语言)2008春季学期A卷及参考答案

2008 春计算机语言B(C语言)A卷一、选择题(每小题1分,共30分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将你认为正确的选项填写在题干的括号内。

1.C语言源程序文件的扩展名是【】。

A..exe B..C C..obj D..cpp2.以下叙述中,正确的是【】。

A.C程序中注释只能出现在程序的开始位置和语句的后面B.C程序书写格式严格,要求一行内只能写一个语句C.C程序书写格式自由,一个语句可以写在多行上D.用C语言编写的程序只能放在一个源程序文件中3.以下选项中可用作用户标示符的一组是【】。

A._2008,_main B.Date y-m-dC.txt D.case _0014.以下不符合C语言语法的字符常量是【】。

A.′C′ B.′\xDD′ C.′\012′ D.″p″5.若以下选项中的变量已正确定义,则正确的赋值表达式是【】。

A.x=y==5; B.x=n%2.5; C.x+n=i; D.x=5=4+1; 6.以下叙述中,错误的是【】。

A.改变函数形参的值,不会改变对应实参的值B.函数可以返回地址值C.可以给指针变量赋一个整数作为地址值D.当在程序的开头包含头文件stdio.h时,可以给指针变量赋NULL7.若在定义语句:int a,b,c,*p=&c;之后,接着执行以下选项中的语句,则能正确执行的语句是【】。

A.scanf(″%d″,a,b,c); B.scanf(″%d%d%d″,a,b,c); C.scanf(″%d″,p); D.scanf(″%d″,&p);8.有以下程序段int j; float y; char name[50];scanf(″%2d%f%s″,&j,&y,name);当执行时,从键盘输入55566 777abc后,y的值为:A.55566.0 B.566.0 C.7777.0 D.566777.09. 若变量已正确定义,有以下程序段i=0;doprintf(″%d,″,i); while(i++);printf(″%d\n″,i);其输出结果是【】A.0,0 B.0,1 C.1,1 D.程序进入无限循环10.有以下程序:main(){ int x=17;do{--x;printf("%d",x);}while(!x);}程序运行后的输出结果是【】。

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

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

c语言期末考试题库及详解答案C语言作为计算机编程的基础语言,其期末考试通常包含对基础语法、数据结构、算法设计等方面的考察。

以下是一份C语言期末考试题库及详解答案,供学生复习参考。

1. 编写一个C程序,实现两个整数的加法运算,并输出结果。

```c#include <stdio.h>int main() {int a, b, sum;printf("请输入两个整数:");scanf("%d %d", &a, &b);sum = a + b;printf("两个整数相加的结果是:%d\n", sum);return 0;}```2. 编写一个C程序,实现字符串的反转输出。

```c#include <stdio.h>#include <string.h>void reverseString(char str[]) {int length = strlen(str);for (int i = 0; i < length / 2; i++) {char temp = str[i];str[i] = str[length - i - 1];str[length - i - 1] = temp;}}int main() {char str[100];printf("请输入一个字符串:");scanf("%s", str);reverseString(str);printf("反转后的字符串是:%s\n", str);return 0;}```3. 编写一个C程序,实现查找数组中的最大值,并输出其索引。

```c#include <stdio.h>int main() {int arr[] = {5, 10, 15, 20, 25};int maxIndex = 0;for (int i = 1; i < 5; i++) {if (arr[i] > arr[maxIndex]) {maxIndex = i;}}printf("数组中的最大值是:%d,其索引为:%d\n",arr[maxIndex], maxIndex);return 0;}```4. 编写一个C程序,实现冒泡排序算法。

计算机系c语言考试题及答案

计算机系c语言考试题及答案

计算机系c语言考试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的保留字?A. intB. floatC. mainD. print答案:A2. C语言中,哪个函数用于计算并返回两个整数的和?A. add()B. sum()C. plus()D. calculate()答案:B3. 在C语言中,以下哪个是正确的字符串定义方式?A. char str = "hello";B. string str = "hello";C. char str[] = "hello";D. str char = "hello";答案:C4. C语言中,以下哪个选项表示逻辑“与”操作?A. &&B. ||C. !D. =答案:A5. 下列哪个选项是正确的C语言函数定义?A. int function(int x) { return x; }B. int function(int x); { return x; }C. int function(int x) { return x; }D. function int(int x) { return x; }答案:C6. C语言中,以下哪个选项是正确的数组声明?A. int array[5] = {1, 2, 3, 4, 5};B. int array[] = {1, 2, 3, 4, 5};C. int array[5] = {1, 2, 3};D. int array = {1, 2, 3, 4, 5};答案:B7. 在C语言中,哪个关键字用于声明一个指针?A. pointerB. ptrC. *D. ref答案:C8. 下列哪个选项是C语言中的输入函数?A. input()B. read()C. scanf()D. get()答案:C9. C语言中,以下哪个选项是正确的结构体声明?A. struct Student { int age; char name[20]; };B. struct { int age; char name[20]; };C. Student struct { int age; char name[20]; };D. struct Student { int age; string name; };答案:A10. 在C语言中,哪个函数用于输出格式化的字符串?A. printf()B. cout()C. print()D. display()答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型变量的关键字是________。

春考c语言技能测试题及答案

春考c语言技能测试题及答案

春考c语言技能测试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述,错误的是:A. C语言是一种高级编程语言B. C语言可以直接被计算机执行C. C语言支持结构化编程D. C语言具有丰富的数据类型答案:B2. 在C语言中,用于定义一个整型数组的语句是:A. int a[10];B. int a=10;C. int a[];D. int [10]a;答案:A3. 下列哪个关键字用于定义一个函数?A. ifB. forC. whileD. void答案:D4. 在C语言中,用于输入数据的函数是:A. printf()B. scanf()C. fprintf()D. sprintf()5. 下列哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A6. 在C语言中,用于定义一个字符型变量的关键字是:A. intB. charC. floatD. double答案:B7. 下列哪个选项是正确的注释方式?A. // 这是一个注释B. /* 这是一个注释 */C. //* 这是一个注释D. /* 这是一个注释答案:B8. 在C语言中,用于输出数据的函数是:A. scanf()B. printf()C. fprintf()D. sprintf()答案:B9. 下列哪个选项是C语言中的逻辑与运算符?B. ||C. =D. +=答案:A10. 在C语言中,用于定义一个浮点型变量的关键字是:A. intB. floatC. charD. double答案:B二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量的正确语句是:int _______ ; 答案:变量名2. 用于定义一个字符串常量的符号是:_______ ;答案:"字符串"3. 在C语言中,表示逻辑或的运算符是:_______ ;答案:||4. 用于定义一个浮点型数组的语句是:float _______ [10];答案:数组名5. 在C语言中,表示逻辑非的运算符是:_______ ;答案:!6. 用于定义一个字符型数组的语句是:char _______ [10];答案:数组名7. 在C语言中,用于计算两个数的差的运算符是:_______ ; 答案:-8. 用于定义一个整型指针的语句是:int *_______ ;答案:指针名9. 在C语言中,用于计算两个数的乘积的运算符是:_______ ; 答案:*10. 用于定义一个浮点型指针的语句是:float *_______ ;答案:指针名三、编程题(每题10分,共20分)1. 编写一个C语言程序,计算并输出两个整数的和。

C语言考试题库及答案

C语言考试题库及答案

3、在考生文件夹下,要求程序PROG.C的功能是:统计字符串中元音字母’a’、’e’、’i’、’o’、’u’的个数并输出。

例如,当字符串为"This Is a c Program"输出:Result is: 4#include <string.h>#include <stdio.h>int fun(char str[]){/************end************/}void main(){void NONO( );//函数声明char str1[80];int n;printf("Enter str1 :\n");gets(str1);n=fun(str1);printf("Result is: %d\n",n);NONO( );}void NONO( ){ FILE *fr,*fw;int i;char s[80];fr=fopen("PROGIN.DA T","r");fw=fopen("PROGOUT.DAT","w");for(i=1;i<=5;i++){ fgets(s,80,fr);fprintf(fw,"TheResult is:%d\n",fun(s));}fclose(fr);fclose(fw);}4、在考生文件夹下,要求程序PROG .C 的功能是: 统计字符串中英文字母的个数并输出。

例如,当字符串为"This Is a c Program" 输出:Result is:15#include <string.h> #include <stdio.h> fun(char str1[]) {/************end************/ }void main() {void NONO( );//函数声明 char str1[80];int n;printf("Enter str1:\n"); gets(str1); n=fun(str1);printf("Result is: %d\n",n); NONO( ); }void NONO( ) { FILE *fr,*fw; int i;char s[80];fr=fopen("PROGIN.DAT","r"); fw=fopen("PROGOUT.DA T","w"); for(i=1;i<=5;i++) { fgets(s,80,fr);fprintf(fw,"TheResultis:%d\n",fun(s)); }fclose(fr); fclose(fw); }5、在考生文件夹下,给定程序PROG.C 的功能是: 求N*N 矩阵的第2行(以下标为行数)元素的和并输出。

大学计算机c语言考试试题及答案

大学计算机c语言考试试题及答案

大学计算机c语言考试试题及答案一、选择题1. 下列哪个是C语言中的合法标识符?A. 123ABCB. _abc_defC. floatD. void答案:B. _abc_def2. 下列关于函数的说法中,错误的是:A. 函数可以有多个返回值B. 函数可以被其他函数调用C. 函数可以递归调用自身D. 函数可以返回任何类型的值答案:A. 函数可以有多个返回值(函数只能返回一个值,可以通过指针或引用来返回多个值)3. 下面哪种循环结构不属于C语言中的循环结构?A. for循环B. while循环C. do-while循环D. if-else语句答案:D. if-else语句4. 在C语言中,以下哪个运算符优先级最高?A. +(加法)B. =(赋值)C. &&(逻辑与)D. *(乘法)答案:B. =(赋值)5. 下面代码的输出结果是什么?```c#include <stdio.h>int main() {int x = 5;int y = x++;printf("%d", y);return 0;}```A. 4B. 5C. 6D. 未定义答案:B. 5二、填空题1. 完成下列代码,使其输出结果为10。

```c#include <stdio.h>int main() {int x = 0;while (x < 10) {x++;if (x == 5) {__________;}}printf("%d", x);return 0;}```答案:continue;2. 在C语言中,用于定义常量的关键字是__________。

答案:const三、编程题编写一个C程序,实现输入一个整数n(1 <= n <= 100),然后输出从1到n的所有奇数。

```c#include <stdio.h>void printOddNumbers(int n) {for (int i = 1; i <= n; i++) {if (i % 2 != 0) {printf("%d ", i);}}}int main() {int n;printf("请输入一个整数n:");scanf("%d", &n);printOddNumbers(n);return 0;}```以上就是大学计算机C语言考试试题及答案,希望对你有帮助。

C语言.程序设计参考题答案与复习试题

C语言.程序设计参考题答案与复习试题

目录一、C 语言程序设计习题参考答案 (1)二、C语言程序设计复习题⒈单项选择题 (41)⒉填空题 (45)⒊写输出结果题 (46)⒋程序填空题 (53)⒌编程题 (61)三、C语言程序设计复习题答案⒈单项选择题 (62)⒉填空题 (63)⒊写输出结果题 (63)⒋程序填空题 (64)⒌编程题(参考) (65)四、C语言程序设计模拟试卷、参考答案⒈试卷一 (74)⒉试卷二 (77)浙江工业大学计算中心编印可编辑版C程序设计习题参考答案习题一1. 填空题⑴计算机程序设计语言按其发展可分为三类,即机器语言、汇编语言和高级语言。

⑵ C程序是由函数构成的,一个C程序中至少包含 1个main函数。

因此,函数是C程序的基本单位。

⑶ C程序注释是由 /* 和 */ 所界定的文字信息组成的。

⑷函数体一般包括函数首行和函数体。

⑸在任何C程序中都必须且只能有一个主函数, 主函数名必须为 main 。

2. 判断下列各个叙述的正确与否⑴ C程序的执行总是从该程序的main函数开始,在main函数最后结束【√】⑵ C程序的注释部分可以出现在程序中任何位置,它对程序的编译和运行不起任何作用,但可以增加程序的可读性【√】⑶由“/*”与“*/”界定的注释必须在同一行【╳】⑷通过了编译、连接的程序就是正确的程序【╳】⑸有计算结果输出的程序一定是正确的程序【╳】⑹编译错误是语法错误,运行结果错误是逻辑错误【√】⑺编译时在信息窗口出现包含“error”的信息,说明程序存在警告性错误【╳】⑻源程序每次修改后,都必须重新编译、连接【√】3. 简答题⑴算法的含义、特点是什么?解答:算法是解题方法的精确描述。

有穷性、确定性、有多或零个输入、有1或多个输出、有效性。

⑵写出一个C程序的基本结构。

由编译预处理命令、注释、1个main和若干个自定义函数构成,函数格式如下:函数类型函数名(类型标识符形参,类型标识符形参,...){ 类型声明语句; 执行语句部分; }⑶写出在你使用的计算机系统上,进入C环境以及运行、调试程序的简要步骤。

春考历年c语言考试题及答案

春考历年c语言考试题及答案

春考历年c语言考试题及答案1. 以下哪个选项是C语言中的关键字?A. intB. IntegerC. INTD. integer答案:A2. 在C语言中,以下哪个数据类型用于存储字符?A. intB. charC. floatD. double答案:B3. 以下哪个函数用于计算两个整数的和?A. sum(int a, int b)B. add(int a, int b)C. plus(int a, int b)D. calculate(int a, int b)答案:B4. 若有以下代码段:```cint a = 5, b = 10;printf("%d", a + b);```输出结果是什么?A. 15B. 5C. 10D. 错误信息答案:A5. 在C语言中,以下哪个语句用于结束一个循环?A. breakB. continueC. exitD. return答案:A6. 以下哪个选项是C语言中的逻辑运算符?A. &&B. ||C. !D. 以上都是答案:D7. 若有以下代码段:```cint x = 3;printf("%d", x++);```输出结果是什么?A. 3B. 4C. 0D. 错误信息答案:A8. 在C语言中,以下哪个函数用于输出浮点数?A. printfB. scanfC. fprintfD. sprintf答案:A9. 若有以下代码段:```cfloat a = 3.14;printf("%.2f", a);```输出结果是什么?A. 3.14B. 3.1C. 3.13D. 3.10答案:B10. 在C语言中,以下哪个选项用于定义一个数组?A. int array[5];B. int array[];C. int array[5] = {1, 2, 3, 4, 5};D. 以上都是答案:D。

C语言-习题集参考答案全部

C语言-习题集参考答案全部

目录- 1 -目录第一章C语言基础知识参考答案 ................................................................................ - 2 - 第二章顺序结构参考答案.......................................................................................... - 5 - 第三章选择结构参考答案.............................................................................................. - 7 - 第四章循环结构参考答案............................................................................................ - 11 - 第五章函数参考答案................................................................................................ - 15 - 第六章指针参考答案.................................................................................................... - 18 - 第七章一维数组参考答案............................................................................................ - 21 - 第八章二维数组参考答案.......................................................................................... - 28 - 第九章字符串参考答案.......................................................................................... - 31 - 第十章对C语言的深入讨论参考答案 ....................................................................... - 33 - 第十一章结构体与共用体参考答案............................................................................ - 34 - 第十二章文件参考答案........................................................................................ - 35 -全国计算机等级考试二级教程C 语言习题集参考答案- 2 - 第一章C语言基础知识参考答案一,选择题1 C2 D3 A4 C5 A6 D7 C 分析:C答案以数字开头了8 D 分析:int 是关键字9 C 10 D 11 B12 D 分析:Visual C++6.0中int类型的变量占的字节数为4。

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

计算机语言B(C语言)春季学期复习参考题及参考标准答案————————————————————————————————作者:————————————————————————————————日期:题目1:以下程序的输出结果是main( ){ int a=12,b=12;printf("%d %d\n",--a,++b); }A. 10 10B. 12 12C. 11 10答案 D. 11 13题目2:下列程序的输出结果是main(){ double d=3.2;int x,y; x=1.2;y=(x+3.8)/5.0;printf("%d \n", d*y); }A. 3B. 3.2答案 C. 0D. 3.07题目3:在下列选项中,不正确的赋值语句是A. ++t;B. n1=(n2=(n3=0));C. k=i==j;答案 D. a=b+c=1;题目4:设有如下定义:int arr[]={6,7,8,9,10};int *ptr;则下列程序段的输出结果为ptr=arr;*(ptr+2)+=2;printf ("%d,%d\n",*ptr,*(ptr2));A. 8,10B. 6,8C. 7,9答案 D. 6,10题目5:设有数组定义: char array [ ]="China"; 则数组 array所占的空间为A. 4个字节B. 5个字节答案 C. 6个字节D. 7个字节题目6:语句:printf("%d \n",12 &012);的输出结果是A. 12答案 B. 8C. 6D. 012题目7:以下程序运行后,输出结果是#include#define PT 5.5#define S(x) PT*x*xmain( ){ int a=1,b=2;printf("%4.1f\n",S(a+b));} A. 49.5答案 B. 9.5C. 22.0D. 45.0题目8:下列变量定义中合法的是答案 A. short _a=1-.le-1;B. double b=1+5e2.5;C. long do=0xfdaL;D. float 2_and=1-e-3;题目9:下列程序的输出结果是main( ){ int a[5]={2,4,6,8,10},*P,* *k; p=a; k=&p;printf("%d",*(p++));printf("%d\n",* *k); }A. 4 4B. 2 2答案 C. 2 4D. 4 6题目10:当执行以下程序段时x=-1;do{ x=x*x;} while(!X);答案 A. 循环体将执行一次B. 循环体将执行两次C. 循环体将执行无限次D. 系统将提示有语法错误题目11:下面程序的输出是main(){int k=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}A. k=11,k=12,k=11B. k=11,k=13,k=13C. k=11,k=013,k=0xb答案 D. k=11,k=13,k=b题目12:设x和y均为int型变量,则以下语句:x+=y;y=x-y;x-=y;的功能是A. 把x和y按从大到小排列B. 把x和y按从小到大排列C. 无确定结果答案 D. 交换x和y中的值题目13:若x和y都是int型变量,x=100,y=200,且有下面的程序片段: printf("%d",(x,y)); 上面程序片段的输出结果是答案 A. 200B. 100C. 100 200D. 输出格式符不够,输出不确定的值题目14:若有以下的说明和语句:main(){int t[3][2], *pt[3],k;fpr(k=o; k<3;k++)pt[k]=t[k]; } 则以一选项中能正确表示t数组元素地址的表达式是A. &t[3][2]B. *pt[0]答案 C. *(pt+1)D. &pt[2]题目15:请选出以下程序段的输出结果#include#define MIN(x,y) (x)<(y)? (x):(y) main(){ int I,j,k;I=10; j=15; k=10*MIN(I,j);printf("%d\n",k); }答案 A. 15B. 100C. 10D. 150题目16:能正确表示a≥10或a≤0的关系表达式是A. a>=10 or a<=0B. a>=10|a<=0C. a>=10&&a<=0答案 D. a>=10||a<=0题目17:请读程序:#includefunc( int a, int b){ int c; c=a+b; return c; } main(){ int x=6, y=7, z=8, r;r=func( x--,y==,x+y),z--); printf("%d\n",r); }上面程序的输出结果是A. 11B. 20答案 C. 21D. 31题目18:下面程序的输出是main(){ enum team{my,your=4,his,her=his+10};printf("%d %d %d %d\n",my,your,his,her);}A. 0 1 2 3B. 0 4 0 10答案 C. 0 4 5 15D. 1 4 5 15题目19:以下程序的输出结果是main( ){ int I,x[3][3]={9,8,7,6,5,4,3,2,1},*p=&x[1][1];for(I=0;I<4;I+=2)printf("%d ",p[I]); }A. 5 2B. 5 1答案 C. 5 3D. 9 7题目20:以下说法中正确的是A. C语言程序总是从第一个的函数开始执行B. 在C语言程序中,要调用的函数必须在main()函数中定义答案 C. C语言程序总是从main()函数开始执行D. C语言程序中的main()函数必须放在程序的开始部分题目21:下面程序的输出是#include#includemain(){ char *p1="abc",*p2="ABC",str[50]="xyz"; strcpy(str+2,strcat(p1,p2));printf("%s\n", str);}A. xyzabcABCB. zabcABCC. yzabcABC答案 D. xyabcABC题目22:请读程序片段(字符串内没有空格): printf("%d\n",strlen("ATS\n012\1\\")); 上面程序片段的输出结果是A. 11B. 10答案 C. 9D. 8题目23:以下程序的输出结果是main( ){ int n=4; while(n--)printf("%d ",--n); }答案 A. 2 0B. 3 1C. 3 2 1D. 2 1 0题目24:若已定义:int a[9],*p=a;并在以后的语句中未改变p的值,不能表示a[1] 地址的表达式是A. p+1B. a+1答案 C. a++D. ++p题目25:下面程序的运行结果是main(){ char ch[7]={"65ab21"};int I,s =0;for(I=0;ch[I]>='0'&&ch[I]<'9';I+=2) s=10*s+ch[I]-'0'; printf("%d\n",s); }A. 12ba56B. 6521 答案C. 6D. 62题目26:执行下面的程序后,a的值是#define SQR(X) X*Xmain( ){ int a=10,k=2,m=1;a/=SQR(k+m)/SQR(k+m); printf("%d\n",a); }A. 10答案 B. 1C. 9D. 0题目27:以下程序的输出结果是main( ){ int a=12,b=12;printf("%d %d\n",--a,++b); }A. 10 10B. 12 12C. 11 10答案 D. 11 13题目28:请读程序片段: int i=65536; printf("%d\n",i); 上面程序片段的输出结果是A. 65536答案 B. 0C. 有语法错误,无输出结果D. -1题目29:设有如下定义: int a=1,b=2,c=3,d=4,m=2,n=2; 则执行表达式:(m=a>b)&&(n=c>d)后,n的值为A. 1答案 B. 2C. 3D. 0题目30:下面程序的输出是main(){ int x=100, a=10, b=20, ok1=5, ok2=0; if(a<B)if(b!=15)if(! Ok1) x=1;else if(ok2)x=10; x=-1;printf("%d\n",x);}答案 A. -1B. 0C. 1D. 不确定的值题目31:设 int b=2;表达式(b>>2)/(b>>1)的值是A. 0B. 2C. 4答案 D. 8题目32:下列程序执行后的输出结果是#define MA(x) x*(x-1) main(){ int a=1,b=2;printf("%d \n",MA(1+a+b));} A. 6答案 B. 8C. 10D. 12题目33:设有 static char str[ ]="Beijing"; 则执行 printf("%d\n", strlen(strcpy(str,"China"))); 后的输出结果为答案 A. 5B. 7C. 12D. 14题目34:(25) sizeof(double)是A. 一种函数调用B. 一个双精度型表达式答案 C. 一个整型表达式D. 一个不合法的表达式题目35:若有说明:long *p,a;则不能通过scanf语句正确给输入项读入数据的程序段是答案 A. *p=&a; scanf("%ld",p);B. p=(long *)malloc(8); scanf("%ld",p);C. scanf("%ld",p=&a);D. scanf("%ld",&a);题目36:当a=1,b=3,c=5,d=4时,执行下面一段程序后,x的值为if(a<B)if(c<D)x=1;else if(a<C)if(belse x=3;else x=6;else x=7;A. 1答案 B. 2C. 3D. 6题目37:若已定义: int a[ ]={0,1,2,3,4,5,6,7,8,9], *p=a,i; 其中 0≤i≤9, 则对a数组元素不正确的引用上A. a[p-a]B. *(&a[i])C. p[i]答案 D. a[10]题目38:有以下程序main(){ char a[]="programming",b[]="language";char *p1,*p2;int I;p1=a;p2=b;for(I=0;I<7;I++)if(*(p1+I)==*(p2+I)) printf("%c",*(p1+I)); } 输出结果是A. gmB. rgC. or答案 D. ga题目39:下列描述中不正确的是A. 字符型数组中可以存放字符串B. 可以对字符型数组进行整体输入、输出答案 C. 可以对整型数组进行整体输入、输出D. 不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值题目40:请读程序:#includef(char *s){ char *p=s;while( *p!='\0') p++;return(p-s); }main(){ printf("%d\n",f("ABCDEF"));} 上面程序的输出结果是A. 3答案 B. 6C. 8D. 0题目41:定义如下变题和数组:int I;int x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是for(I=0;I<3;I++) printf("%d",x[I][2-1]);A. 1 2 3B. 1 4 7答案 C. 3 5 7D. 3 6 9题目42:设有如下函数定义:int f(char *s){ char *p=s;while(*p!='\0') p++;return(p-s); }如果在主程序中用下面的语句调用上述函数,则输出结果为printf("%d\n",f("goodbey!"));A. 3B. 6答案 C. 8D. 0题目43:以下程序的输出结果是main( ){ int a=-1,b=4,k;k=(+ +a〈0)&&!(b - -〈=0); printf("%d%d%d\n",k,ab); }A. 104B. 103C. 003答案 D. 004题目44:若有说明,double *p,a;则能通过scanf语句正确给输入项读入数据的程序段是A. *p=&a; scanf("%lf",p);B. p=(double *)malloc(8);scanf("%f",p);C. p=&a;scanf("%lf",a); 答案D. p=&a; scanf("%le",p);题目45:以下程序运行后,输出结果是main( ){ int y=18,I=0,j,a[8];do{ a[I]=y%2;I++; y=y\2; } while(y>1=1); for(j=I-1;j>=0;j--) printf("%d",a[j]); printf("\n"); }A. 10000答案 B. 10010C. 00110D. 10100题目46:下面程序的输出是void prtv(int *x) {printf("%d\n", ++*x);} main(){ int a=25; prtv(&a);}A. 23B. 24C. 25答案 D. 26题目47:设有以下定义:int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12}; int (*prt)[3]=a,*p=a[0];则下列能够正确表示数组元素a[1][2]的表达式是A. *((*prt+1)[2])B. *(*(p+5))C. (*prt+1)+2答案 D. *(*(a+1)+2)题目48:下面的程序main(){ int x=3;do{ printf("%d\n",X-=2); }while(!(--x));} A. 输出的是1答案 B. 输出的是1和-2C. 输出的是3和0D. 是死循环题目49:C语言中形参的缺省存储类别是答案 A. 自动(auto)B. 静态(static)C. 寄存器(register)D. 外部(extern)题目50:以下程序的输出结果是main( ){ int x=10,y=10,I;for(I=0;x>8;y=++I) printf("%d,%d ",x--,y); }A. 10 1 9 2B. 9 8 7 6C. 10 9 9 0答案 D. 10 10 9 1题目51:语句printf("a\bre\'hi\'y\\\bou\n");的输出结果是A. a\bre\'hi\'y\\\bouB. a\bre\'hi\'y\bou答案 C. re'hi'youD. abre'hi'y\bou (说明:'\b'是退格符)题目52:若有说明和语句: int a=5; a++; 此处表达式a++的值是A. 7B. 6答案 C. 5D. 4题目53:若要用下面的程序片段使指针变量p指向一个存储整型变量的动态存储单元: int *p; p=__________ malloc( sizeof(int)); 则应填入A. intB. inst *C. (*int)答案 D. (int *)题目54:当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是A. c=b=a;B. (a=c) ‖(b=c) ;答案 C. (a= &&(b=;D. a=c=b;题目55:下面函数的功能是sss(s, t)char *s, *t;{ while((*s)&&(*t)&&(*t++== *s++));return(*s-*t); }A. 求字符串的长度答案 B. 比较两个字符串的大小C. 将字符串s复制到字符串t中D. 将字符串s接续到字符串t中题目56:在C语言中,要求运算数必须是整型的运算符是A. %B. /答案 C. <D. !题目57:下列程序执行后的输出结果是main(){ int x='f';printf("%c \n",'A'+(x-'a'+1)); }答案 A. GB. HC. ID. J题目58:若有以下的说明和语句,则在执行for语句后,*(*(pt+l)+2)表示的数组元素是int t[3][3], *pt([3], k;for (k=0;k<3;k++) pt[k]=&t[k][0];A. t[2][0]B. t[2][2]答案 C. t[l][2]D. t[2][l]题目59:语句:printf("%d \n",12 &012);的输出结果是A. 12答案 B. 8C. 6D. 012题目60:设 a=5, b=6, c=7, d=8, m=2, n=2, 执行 (m=a>b)&&(n=c>d) 后n的值为A. 1答案 B. 2C. 3D. 4题目61:假定有以下变量定义: int k=7,x=12; 则能使值为3 的表达式是A. x%=(k%=5)B. x%=(k-k%5)C. x%=k-k%5答案 D. (x%=k)-(k%=5)题目62:若有以下说明: int w[3][4]o={{0,1},{2,4},{5,8}}; int(*p)[4]=w; 则数值为4的表达式是A. *w[1]+1B. p++,*(p+1)C. w[2][2]答案 D. p[1][1]题目63:在下列选项中,没有构成死循环的程序段是A. int i=100;while (1){ i=i%100+1;if(i>100) break; }B. for(;;);答案 C. int k=1000; do{++k} while (k>=1000)D. int s=36 While(s);--s;题目64:以下的for循环 for(x=0,y=0; (y!=123)&&(x<4); x + + );A. 是无限循环B. 循环次数不定答案 C. 执行4次D. 执行3次题目65:执行以下程序后,y的值是main ( ){ int a[]={2,4,6,8,10};int y=1,x,*p;p=&a[1];for(x=0;x<3;x++) y + = * (p + x); printf("%d\n",y); }A. 17B. 18答案 C. 19D. 20题目66:假定a和b为int型变量,则执行:a=1;b=10;do{b-=a;a++;} while(b--<0);语句后b的值为A. 9B. -2C. -1答案 D. 8题目67:若x是整型变量,pb是基类型为整型的指针变量,则正确的赋值表达式是答案 A. pb=&xB. pb=x;C. *pb=&x;D. *pb=*x题目68:若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,b)));在此函数调用语句中实参的个数是答案 A. 3B. 4C. 5D. 6题目69:下面程序的输出是main(){ int a=-1, b=4,k;k=(a++<=0)&&(!(b--<=0)); printf("%d %d %d\n",k,a,b);}A. 0 0 3B. 0 1 2答案 C. 1 0 3D. 1 1 2题目70:以下程序的输出结果是main( ){ int x=10,y=10,I;for(I=0;x>8;y=++I) printf("%d,%d ",x--,y); }A. 10 1 9 2B. 9 8 7 6C. 10 9 9 0答案 D. 10 10 9 1题目71:下面函数的功能是int funl(char * x) { char * y=x; while(*y++); return(y-x-1);}答案 A. 求字符串的长度B. 比较两个字符串的大小C. 将字符串x复制到字符串yD. 将字符串x连接到字符串y后面题目72:能正确表示a和b同时为正或同时为负的逻辑表达式是A. (a>=0‖b>=0)&&(a<0‖b<0)B. (a>=0&&b>=0)&&(a<0&&b<0)C. (a+b>0)&&(a+b<=0)答案 D. a*b>0题目73:若有以下说明int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则数值为6的表达式是A. *p+6B. *(p+6)答案 C. *p+=5D. p+5题目74:能正确表示a和b同时为正或同时为负的逻辑表达式是A. (a>=0‖b>=0)&&(a<0‖b<0)B. (a>=0&&b>=0)&&(a<0&&b<0)C. (a+b>0)&&(a+b<=0)答案 D. a*b>0题目75:若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为A. a<>0B. !aC. a=0答案 D. a!=0题目76:已知字母A的ASCII码为十进制的65,下面程序的输出是main(){ char ch1,ch2;ch1='A'+'5'-'3'; ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}答案 A. 67,DB. B,CC. C,DD. 不确定的值题目77:设ch是char型变量,其值为A,且有下面的表达式: ch=(ch>='A'&&ch<='Z')?(ch+32):ch 上面表达式的值是A. A答案 B. aC. ZD. z题目78:请读程序:#includeint a[]={2,4,6,8};main(){ int I;int *p=a;for(I=0;I<4;I++) a[I]=*p++; printf("%d\n",a[2]); }上面程序的输出结果是答案 A. 6B. 8C. 4D. 2题目79:以下说法中正确的是A. #define和printf都是C语句B. #define是C语句,而printf不是C. printf是C语句,但#define不是答案D. #define和printf都不是C语句题目80:以下循环体的执行次数是main(){ int I,j;for(I=0,j=1; I<=j+1; I+=2, j--)printf("%d \n",I); }A. 3B. 2答案 C. 1D. 0题目81:下面各语句行中,能正确进行赋字符串操作的语句行是A. char st[4][5]={"ABCDE"};B. char s[5]={'A','B','C','D','E'};答案 C. char *s; s="ABCDE";D. char *s; scanf("%s",s);题目82:若执行下面的程序时从键盘上输入3和4,则输出是main(){ int a,b,s;scanf("%d %d",&a,&b);s=a;if(a printf("%d\n",s);}A. 14答案 B. 16C. 18D. 20题目83:以下程序的输出结果是main( ){ int k=17;printf("%d,%o,%x \n",k,k,k); }A. 17,021,0x11B. 17,17,17C. 17,0x11,021答案 D. 17,21,11题目84:若有下面的程序片段:int a[12]={0}, *p[3], **pp, I;for(I=0; I<3; I++) p[I]=&a[I*4]; pp=p; 则对数组元素的错误引用是A. pp[0][1]B. a[10]答案 C. p[3][1]D. *(*(p+2)+2)题目85:下面的程序main(){ int x=3,y=0,z=0;if(x=y+z)printf("* * * *");else printf("# # # #");}A. 有语法错误不能通过编译B. 输出* * * *。

相关文档
最新文档