C语言习题及解答-2-1

合集下载

c程序设计语言(第2版新版)习题解答

c程序设计语言(第2版新版)习题解答

c程序设计语言(第2版新版)习题解答C程序设计语言(第2版新版)是计算机编程领域的经典教材,由Brian W. Kernighan和Dennis M. Ritchie共同编写,后者也是C语言的共同发明者。

这本书不仅介绍了C语言的基本语法和编程技巧,还包括了丰富的习题,帮助读者更好地理解和掌握C语言。

以下是对书中部分习题的解答。

第1章引言习题1-1:编写一个C程序,打印出“Hello, World!”。

```c#include <stdio.h>int main() {printf("Hello, World!\n");return 0;}```习题1-2:修改上述程序,使其打印出不同的字符串。

```c#include <stdio.h>int main() {printf("Welcome to C Programming!\n");return 0;}```第2章数据类型及其运算习题2-1:编写一个程序,计算两个整数的和,并打印结果。

```c#include <stdio.h>int main() {int a, b, sum;a = 5;b = 10;sum = a + b;printf("The sum of %d and %d is %d\n", a, b, sum);return 0;}```习题2-2:编写一个程序,计算两个浮点数的乘积。

```c#include <stdio.h>int main() {float x, y, product;x = 3.14159;y = 2.718;product = x * y;printf("The product of %.5f and %.5f is %.5f\n", x, y,product);return 0;}```第3章控制语句习题3-1:编写一个程序,打印从1到10的整数。

计算机二级c语言试题及答案解析

计算机二级c语言试题及答案解析

计算机二级c语言试题及答案解析一、选择题1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A解析:关键字`struct`用于定义一个结构体,它允许将多个不同类型的数据项组合成一个单一的数据结构。

2. 下列哪个选项不是C语言中的运算符?A. %B. &&C. ::D. ||答案:C解析:`%`是取模运算符,`&&`是逻辑与运算符,`||`是逻辑或运算符,而`::`不是C语言中的运算符。

二、填空题1. 在C语言中,`________`关键字用于声明一个函数。

答案:int解析:在C语言中,`int`是用于声明一个函数的返回类型,表示该函数返回一个整数值。

2. 以下代码片段中,`________`用于定义一个名为`data`的数组,包含10个整数。

```cint data[10];```答案:int data[10];解析:`int data[10];`定义了一个名为`data`的数组,它包含10个整数。

三、编程题1. 编写一个C语言函数,计算并返回两个整数的和。

```cint add(int a, int b) {return a + b;}```答案:```cint add(int a, int b) {return a + b;}```解析:该函数接受两个整数参数`a`和`b`,计算它们的和,并返回结果。

2. 编写一个C语言程序,实现将一个字符串反转。

```c#include <stdio.h>#include <string.h>void reverse(char *str) {int len = strlen(str);for (int i = 0; i < len / 2; i++) { char temp = str[i];str[i] = str[len - i - 1];str[len - i - 1] = temp;}}int main() {char str[] = "Hello, World!";reverse(str);printf("Reversed string: %s\n", str); return 0;}```答案:```c#include <stdio.h>#include <string.h>void reverse(char *str) {int len = strlen(str);for (int i = 0; i < len / 2; i++) { char temp = str[i];str[i] = str[len - i - 1];str[len - i - 1] = temp;}}int main() {char str[] = "Hello, World!";reverse(str);printf("Reversed string: %s\n", str);return 0;}```解析:该程序定义了一个`reverse`函数,它接受一个字符串作为参数,并通过交换字符的方式将字符串反转。

《C语言》练习题及答案解析

《C语言》练习题及答案解析

《C语言》练习题及答案解析一.选择题1.下列字符序列中,不可用作C语言标识符的是(B)。

A.abc123 B.no.1 C._123_ D._ok2.一个C语言源程序是由(B)。

A.一个主程序和若干子程序组成B.一个或多个函数组成C.若干过程组成D.若干子程序组成3. 正确的C语言标识符是(A )。

A._buy_2 B.2_buy C.?_buy D.buy?4.已知字母A的ASCII码为十进制数65,且S为字符型,则执行语句S=’A’+’6’-’3’;后,S中的值为(A)。

A.’D’B.68 C.不确定的值D.’C’5.下列说法中,错误的是(A)。

A.每个语句必须独占一行,语句的最后可以是一个分号,也可以是一个回车换行符号B.每个函数都有一个函数头和一个函数体,主函数也不例外C.主函数只能调用用户函数或系统函数,用户函数可以相互调用D.程序是由若干个函数组成的,但是必须有且仅有一个主函数6.有如下程序段,从键盘输入数据的正确形式应是(B)。

(注:└┘代表空格)float x,y,z;scanf(“x=%d,y=%d,z=%d”,&a,&y,&z);A.123 B.x=1,y=2,z=3C.1,2,3 D.x=1└┘ y=2└┘ z=37.在C语言中,char型数据在内存中的存储形式是(D)。

A.补码B.反码C.原码D.ASCII码8. 下列符号中,不属于转义字符的是(B )。

A.\\ B.\0xAA C.\t D.\09. 不属于C语言关键字的是(D)。

A.int B.break C.while D.character10. 以下说法中正确的是(C)。

A.C语言程序总是从第一个定义的函数开始执行B.在C语言程序中,要调用的函数必须在main( )函数中定义C.C语言程序总是从main( )函数开始执行D.C语言程序中的main( )函数必须放在程序的开始部分11. C语言程序的基本单位是(C)。

c语言程序设计教程(第2版)课后题及模拟题参考答案

c语言程序设计教程(第2版)课后题及模拟题参考答案

c语言程序设计教程(第2版)课后题及模拟题参考答案习题11-1 填空题1.函数2.主函数main(),主函数main()3.主函数main()4.函数首部,函数体5.{, }6./*, */7.顺序结构,选择结构,循环结构8..c, .obj, .exe1-2 思考题1.结构化程序设计是指:为使程序具有一个合理的结构以保证程序正确性而规定的一套如何进行程序设计的原则。

其基本结构包括顺序结构、选择结构和循环结构三种。

2.算法是对具体问题求解步骤的一种描述。

计算机算法的表达工具通常采用以下几种方法:(1)用自然语言表示算(2)用流程图表示算法(3)用伪代码表示算法(4)用程序设计语言表示算法3.语言简洁、紧凑,使用方便、灵活; 支持结构化程序设计;运算符丰富;数据类型丰富;较强的编译预处理功能;C语言的可移植性好;C语言本身既有一般高级语言的优点,又有低级(汇编)语言的特点;语法限制不太严格,程序设计自由度大。

1-3 编程题1. 试参照本章例题编写计算梯形面积的C语言程序,梯形的上底、下底和高分别用a,b,h表示,并用a=10,b=20,h=5测试所编写的程序。

#include "stdio.h"main(){ float a, b, h, s;a=10; b=20;h=5; s=(a+b)*h/2;printf("s=%f\n" , s );}2. 编写程序显示如图1.11所示信息。

图1.11 显示信息#include "stdio.h"main(){ printf("******************************\n");printf("* hello world *\n");printf("******************************\n"); }习题22-1 单选题1~5 DBDCA 6~10 DCABA 11~12 CA 2-2 思考题1.2.0000002.1,0.53.9,24.65.100,d6.(1)20 (2)0 (3)607. (1)10,6,4 (2)6,9,15 (3)3,60,838. 55习题33-1 选择题1-5BDABC 6-10ADCAC 11-12BB3-2 填空题1. 32.02613.0x104. 2, 1 互换a,b的值5. 6.66.–0038.77. 5.0,4,c=3<Enter>8.i=10,j=20<Enter>9.(1) 65(2) 65,A(3) 56.123400,123.456001(4) 3.141600(5) 8765.432(6) 5.864000e+002(7) 3.141600e+000(8) 3.1416(9) 8765(10) 3.1416,8765.4310.a=2 b=5x=8.8 y=76.34c1=65 c2=973-3 编程题1. 编写程序实现从键盘输入两个十进制整型数据10和8给变量x和y,并按下列格式 输出。

C语言练习题及答案

C语言练习题及答案

运行结果为:no 2. #include main() { int a=12, b= -34, c=56, min=0; min=a; if(min>b) min=b; if(min>c) min=c; printf("min=%d", min); } 运行结果为: min=-34 3. #include main() { int x=2,y= -1,z=5; if(x<y) if(y<0) z=0; else z=z+1; printf(“%d ”,z); }
char name[ ]; float score; }stu; 则下面的叙述不正确的是: ( D ) A. struct 是结构体类型的关键字 B. struct student 是用户定义的结构体类型 C. num, score 都是结构体成员名 D. stu 是用户定义的结构体类型名 31.若有以下说明语句: struct date { int year; int month; int day; }brithday; 则下面的叙述不正确的.是_____. A) struct 是声明结构体类型时用的关键字 B) struct date 是用户定义的结构体类型名 C) brithday 是用户定义的结构体类型名 D) year,day 都是结构体成员名 32. 以下对结构变量 stul 中成员 age 的非法引用是 struct student { int age;
16. 若“int n; float f=13.8;”,则执行“n=(int)f%3”后,n 的值是(A) A.1B.4 C.4.333333D.4.6 17. 以下对一维数组 a 的正确说明是: A) char a(10); B) int a[]; C)int k=5,a[k];D)char a[3]={?a?,?b?,?c?}; 18.以下能对一维数组 a 进行初始化的语句是: ( C ) A. int a[5]=(0,1,2,3,4,) B. int a(5)={} C. int a[3]={0,1,2} D. int a{5}={10*1} 19.在 C 语言中对一维整型数组的正确定义为 。 A)int a(10); B)int n=10,a[n]; C)int n;a[n]; D)#define N 10 int a[N]; 20、已知:int a[10]; 则对 a 数组元素的正确引用是( D )。 A、a[10] B、a[3.5] C、a(5) D、a[0] 21.若有以下数组说明,则 i=10;a[a[i]]元素数值是( B )。 int a[12]={1,4,7,10,2,5,8,11,3,6,9,12}; A.10 B.9 C.6 D.5 22.若有说明:int a[][3]={{1,2,3},{4,5},{6,7}}; 则数组 a 的第一维的大小为: ( B A. 2 B. 3 C. 4D.无确定值 5 7 D) 3 6 9 23.对二维数组的正确定义是( C ) A.int a[ ] [ ]={1,2,3,4,5,6}; B.int a[2] [ ]={1,2,3,4,5,6};

计算机二级c语言经典练习题及解析答案

计算机二级c语言经典练习题及解析答案

计算机二级c语言经典练习题及解析答案计算机二级c语言经典练习题及解析答案一、单选题1. C语言中的三大基本数据类型包括( B )A.整型、实型、逻辑型B.整型、实型、字符型C.整型、逻辑型、字符型D.整型、实型、逻辑型、数组型2. 在C语言中,以下合法的字符常量是( c )A. '\048'B. 'ab'C. '\43'D. "\0"3.设x 为 int 型变量,执行下列语句: x=10; x+=x-=x-x; 则x的值为 ( B )A. 15B. 20C. 25D. 304. 定义如下变量和数组: int i, x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句for(i=0;i<3;i++) printf("%d",x[i][2-i]); 的输出结果是( C )A. 1 4 7B. 1 5 9C. 3 5 7D. 3 6 95.逗号表达式(a=3*5,a*4),a+15的值是( b )A.15B. 30D. 756. .以下程序的输出结果是( c )。

main( ){ int x=10,y=11;printf("%d,%d\n",x--,--y);}A. 11,11B. 10,11C. 10, 10D.11,107.若一个外部变量的定义形式为static int x ; 其中static的作用是( d )A.将变量存放在静态存储区,使x的值可以永久保留B.使变量x可以由系统自动初始化C.使x的值可以永久保留D.使x只能在本文件内引用8.有如下变量说明:int k=2;则下面的循环共执行多少( d )次while (k!=0) {printf("%d",k);k--;}A.无限多次 B.0次 C.1次 D. 2次9.设有变量说明:int a=7,b=8;那么语句:printf("%d,%d\n",(a+b,a),(b,a+b));的输出应该是( a )A. 7,15B. 8,15C. 15,7D.15,810.若已定义:int a[9], *p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是( b )A. p+1C. a+1D. ++p11. C语言变量名中不能使用的字符是( d )A. 数字B. 字母C. 下划线D. 关键字12.以下变量定义中合法的是( a )A.short a=2.1e-1;B. double b=1+5e0.5;C. long do=0xffe ;D. float 3_end=1-e3;13.若有说明语句char ch1=′\x79′;则ch1( c )A.包含4个字符B.包含3个字符C. 包含2个字符D.包含1个字符14.C语言中的函数( b )A. 可以嵌套定义B.嵌套调用和递归调用均可C. 不可以嵌套调用D. 可以嵌套调用但不可以递归调用15. 设整形变量a=12;则执行完语句a+=a-=a*a后a的值为( c )A. 552B. 264C. -264D. 14416.设a=1,b=2,c=3,d=4,则表达式:a>b?a:cA.1 B.2 C.3 D.417.若有说明语句:int b[][4]={ 3,1,2,5,7,6,4}; 则b数组的行数为( b )A. 3B. 2C.无确定值D. 118. 若有定义:char c[10];从键盘输入“LiFang”,则正确的函数引用是( c )A. scanf(″%c″,&c[10]);B. gets(c);C. scanf(″%s″,&c);D. gets(c[10]);19. 两个基类型相同的指针变量之间,不能进行的运算是( c )A. <B. =C. +D.-20. 下面程序段执行结果是( b )int i=5,k; k=(++i)+(++i)+(i++); printf("%d,%d",k,i);A. 24,8B. 21,8C. 21,7D. 24,721.以下选项中属于C语言的数据类型是( b )。

C语言程序设计练习题(答案)

C语言程序设计练习题(答案)

C语言程序设计练习题(答案)1.1上机实训项目实验1实验步骤1、进入VC环境从“开始”→“程序”→“Microsoft Visual Studio 6.0”→“Microsoft Visual C++ 6.0”,这时进入VC集成环境的主菜单窗口,屏幕显示如图1_1所示。

图1-1 VC集成环境的主菜单窗口2、VC环境下C程序的编辑、连接和运行(1)新建一个源程序①在VC环境中选择“文件”菜单,然后单击“新建”菜单项。

如图1-2所示图1-2 选择新建② 在弹出的新建对话框中设置好相应的内容,如图2-2所示。

要事先准备好保存文件的目录,例d:\lx 目录。

在图1-3中“文件”一栏的源程序文件的扩展名一定要输入C 语言程序的扩展名“.c ”。

设置好后,单击“OK ”,就回到了VC++的编辑界面,即将进行输入和编辑的源程序文件example.c 文件存放在D 盘的LX 目录下。

图1-3 新建对话框的设置③ 在图1-4的工作区中,输入源程序2.设置源程序的文件名,扩展名一定要为“.c ”且一定要输入扩展名1.单击该处3.设置存放目录图1-4 输入、编辑源程序④输入源程序文件后可在主菜单栏中选择“文件”(FILE),并在其下拉菜单中选择“保存”(SAVE),如图1-5所示。

图1-5 保存源程序⑤源程序的编译如图2-6所示,单击主菜单的“编译”(Build),在其下拉菜单中选择“编译example.c”(Compile example.c),或者单击工具栏上的“编译”按钮,如图1-6所示。

在单击“编译”后,屏幕上会出现一个如图1-7所示的对话框。

内容是“This build command requires an activeproject worksapce,Would you like to create a default project worksapce?”,要创建一个默认的项目工作区,单击“是(Yes)”,表示同意,将开始编译;单击“No ”,表示不同意,将取消编译。

计算机二级c语言考试真题及答案详解

计算机二级c语言考试真题及答案详解

计算机二级c语言考试真题及答案详解一、单项选择题(每题2分,共40分)1. 在C语言中,以下哪个选项是合法的整型常量?A. 0x12B. 0x12.3C. 0x12LD. 0x12.3L答案:A2. 若有定义int a=1, b=2;,则以下哪个表达式的值不为真?A. a<bB. a<=bC. a>bD. a!=b答案:C3. 在C语言中,以下哪个选项是合法的字符串字面量?A. "Hello, World"B. 'Hello, World'C. "Hello, World\n"D. "Hello, World\0"答案:A4. 下列哪个函数不能正确计算数组元素的总和?A. sum = 0; for(i=0; i<n; i++) sum += array[i];B. sum = 0; for(i=0; i<n; i++) sum = sum + array[i];C. sum = 0; for(i=0; i<n; i++) sum = array[i];D. sum = 0; for(i=0; i<n; i++) sum += array[i];答案:C5. 在C语言中,以下哪个选项是合法的函数声明?A. int add(int, int);B. int add();C. int add(int a, int b);D. int add(a, b);答案:C6. 若有定义int a[10];,则以下哪个表达式是合法的数组元素访问?A. a[10]B. a[-1]C. a[3.5]D. a[3]答案:D7. 在C语言中,以下哪个选项是合法的指针声明?A. int *ptr;B. int *ptr[];C. int ptr*;D. int ptr[];答案:A8. 若有定义int x=10;,则以下哪个表达式是合法的赋值语句?A. x = x + 1;B. x = 1 + x;C. x = x++;D. x = ++x;答案:A9. 在C语言中,以下哪个选项是合法的循环语句?A. for(;;)B. while(1)C. do {} while(0)D. for(;;) {}答案:D10. 若有定义int a[5] = {1, 2, 3, 4, 5};,则以下哪个表达式是合法的数组元素访问?A. a[5]B. a[-1]C. a[2.5]D. a[2]答案:D11. 在C语言中,以下哪个选项是合法的switch语句?A. switch(x) { case 1: break; }B. switch(x) { default: break; }C. switch(x) { case 1: case 2: break; }D. switch(x) { case 1: default: break; }答案:C12. 若有定义int x=5;,则以下哪个表达式是合法的自增运算?A. x++;B. ++x;C. x--;D. --x;答案:A13. 在C语言中,以下哪个选项是合法的函数原型声明?A. void func();B. int func(int);C. void func(int a);D. All of the above答案:D14. 若有定义int a=3;,则以下哪个表达式是合法的位运算?A. a & 2B. a | 2C. a ^ 2D. All of the above答案:D15. 在C语言中,以下哪个选项是合法的宏定义?A. #define PI 3.14159B. #define PI 3.14159fC. #define PI 3.14159LD. All of the above答案:A二、编程题(每题30分,共60分)1. 编写一个函数,计算并返回一个整数数组中所有元素的和。

C语言课后习题参考答案

C语言课后习题参考答案

C语言课后习题参考答案第一章:基础知识问题1:C语言的发展历史及特点C语言是由贝尔实验室的肯·汤普逊和丹尼斯·里奇在20世纪70年代初开发的一种高级程序设计语言。

它以其简洁、高效和可移植性而闻名。

C语言被广泛应用于系统级编程、嵌入式系统和科学计算等领域,并成为其他编程语言的基础。

问题2:C语言的基本数据类型及其存储范围C语言的基本数据类型包括字符型(char)、整型(int)、浮点型(float)、双精度浮点型(double)和空类型(void)。

它们的存储范围如下:- char:-128 到 127 或 0 到 255- int:-32,768 到 32,767 或 0 到 65,535- float:3.4E-38 到 3.4E38- double:1.7E-308 到 1.7E308- void:无特定存储范围问题3:如何在C语言中输出语句?在C语言中,可以使用printf函数来输出语句。

它的基本语法为:```cprintf("要输出的内容");```问题4:定义变量的语法规则在C语言中,定义变量的语法规则如下:```c数据类型变量名;```例如,定义一个整型变量x:```cint x;```问题5:如何进行变量的赋值?变量的赋值可以使用赋值运算符(=)。

例如,将一个整型常量10赋值给变量x:```cx = 10;```第二章:控制结构问题1:if语句的语法结构if语句用于根据条件执行不同的代码块。

它的基本语法结构如下:```cif (条件) {// 条件为真时执行的代码}```问题2:switch语句的用法及语法结构switch语句用于根据不同的表达式值执行相应的代码块。

它的基本用法及语法结构如下:```cswitch (表达式) {case 值1:// 当表达式的值等于值1时执行的代码break;case 值2:// 当表达式的值等于值2时执行的代码break;default:// 当表达式的值与所有case都不匹配时执行的代码break;}```问题3:循环语句的分类及语法结构C语言中的循环语句包括for循环、while循环和do-while循环。

C语言编程习题及答案

C语言编程习题及答案

1-1. 编写求圆的面积、周长的程序。

圆的半径从键盘输入。

#include<stdio.h>void main(){float r,c,s;scanf("%f",&r);c=2*3.1415926*r;s=3.1415926*r*r;printf("周长为:%f,面积为:%f\n",c,s);}1-2.输入三个正数,计算并输出由此构成的立方体的体积。

#include<stdio.h>void main(){float a,b,c,v;scanf("%f,%f,%f",&a,&b,&c);v=a*b*c;printf("体积为:%f\n", v);}1-3.输入华氏温度h,计算并输出摄氏温度s. (转换公式:s=5 / 9(h - 30) )。

#include<stdio.h>void main(){float h,s;printf("请输入华氏温度:");scanf("%f",&h);s=5.0/9.0*(h-32);printf(" 摄氏温度为:%f\n", s);1-4.用*号输出字母C的图案。

#include<stdio.h>void main(){printf(" **\n");printf(" *\n");printf("*\n");printf("*\n");printf(" *\n");printf(" **\n");}2-1.输入三个正数a,b,c,如果能构成三角形,计算并输出该三角形的面积。

面积公式:(其中:p=(a+b+c)/2)#include<stdio.h>#include<math.h>#define p(a,b,c,x) sqrt(x*(x-b)*(x-c))void main(){double a,b,c,x;scanf("%lf,%lf,%lf",&a,&b,&c);if(a<0||b<0||c<0||a+b<=c||a+c<=b||b+c<=a)printf("不能构成三角形");else{x=(a+b+c)/2;printf("能构成三角形,面积=%lf\n",p(a,b,c,x));}}2-2.分段函数。

全国计算机二级c语言练习题及答案

全国计算机二级c语言练习题及答案

全国计算机二级c语言练习题及答案全国计算机二级c语言练习题及答案计算机二级考试是全国计算机等级考试(National Computer Rank Examination,简称NCRE)四个等级中的一个等级,考核计算机基础知识和使用一种高级计算机语言编写程序以及上机调试的基本技能。

那么全国计算机二级c语言考试会怎么考?以下仅供参考!1). 函数fseek(pf, OL,SEEK_END)中的SEEK_END代表的起始点是A.文件开始B.文件末尾C.文件当前位置D.以上都不对正确答案:B2). 设有以下语句:char x=3,y=6,z;z=x^y<<2;则z的二进制值是A.00010100B.00011011C.00011100D.00011000正确答案:B3). C 语言中,系统的标准输入文件是指A.键盘B.显示器C.软盘D.硬盘正确答案:A4). C语言程序的基本单位是A.程序行B.语句C.函数D.字符正确答案:C5). 下面四个选项中,均是合法实数的选项是( )。

A.2e-4.2B.-0.50C. 0.2e-.5D.-e5正确答案:B答案解析:实数有两种表示形式:小数形式和指数形式,小数形式必须有小数点,指数形式中,字母e之前必须有数字,e之后必须是整数。

选项A)中的"2e-4.2",选项C中的"0.2e-.5",选项D中的"-e5"均是不合法的。

6). 关系表中的每一横行称为一个A.元组B.字段C.属性D.码正确答案:A7). 数据库的故障恢复一般是由A.数据流图完成的B.数据字典完成的C.DBA完成的D.PAD图完成的正确答案:C8). 有以下函数char fun(char *p){return p;}该函数的返回值是A.无确切的`值B.形参p中存放的地址值C.一个临时存储单元的地址D.形参p自身的地址值正确答案:B9). 假设有如下定义:struct a{int n;float k;}data,*p;若要使p指向data中的成员n,正确的赋值语句是A.p=&data.n;B.*p=data.n;C.p=(struct a *)&data.n;D.p=(struct a *)data.n;正确答案:C10). 下列叙述中,不属于数据库系统的是A.数据库B.数据库管理系统C.数据库管理员D.数据库应用系统正确答案:B11). 栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是A.ABCEDB.DCBEAC.DBCEAD.CDABE正确答案:B12). 若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是A.2.500000B.2.750000C.3.500000D.0.000000正确答案:A13). 如果需要打开一个已经存在的非空文件“Demo”进行修改下面正确的选项是A.fp=fopen("Demo","r");B.fp=fopen("Demo","ab+");C.fp=fopen("Demo","w+");D.fp=fopen("Demo","r+");正确答案:D14). 以下对C语言函数的有关描述中,正确的是A.在C语言中调用函数时,只能把实参的值传给形参,形参的值不能传送给实参B.C函数既可以嵌套定义又可以递归调用C.函数必须有返回值,否则不能使用函数D.函数必须有返回值,返回值类型不定`正确答案:A15). 若变量已正确定义并赋值,下面符合C语言语法的表达式是A.m∶=5B.c=b=a=1C.float 8%5D.x+5=y+2正确答案:B16). 下列有关数据库的描述,正确的是A.数据库是一个DBF文件B.数据库是一个关系C.数据库是一个结构化的数据集合D.数据库是一组文件正确答案:C17). 若变量a是int类型,并执行了语句:a=′A′+1.6;,则正确的叙述是A.a的值是字符CB.a的值是浮点型C.不允许字符型和浮点型相加D.a的值是字符′A′的ASCII值加上1正确答案:D18). 栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是A.ABCEDB.DCBEAC.DBCEAD.CDABE正确答案:B19). 下面程序段的输出结果是( )。

C语言程序设计学习指导与实践教程习题和实验解答(第2章)2

C语言程序设计学习指导与实践教程习题和实验解答(第2章)2

C语言程序设计学习指导与实践教程——第2章习题和实验解答2.1 C语言概述1.【习题解答】1结构化程序有三大基本结构:顺序、分支和循环.2..算法可以理解为有基本运算及规定的运算顺序所构成的完整的解题步骤。

或者看成按照要求设计好的有限的确切的计算序列,并且这样的步骤和序列可以解决一类问题。

有穷性:一个算法应包含有限的操作步骤而不能是无限的。

确定性:算法中每一个步骤应当是确定的,而不能应当是含糊的,有零个或多个输入输出,有一个或多个输出。

有效性:算法中每一个步骤应当能有效地执行,并得到确定的结果。

对于程序设计人员,必须会设计算法,并根据算法写出程序。

可以用自然语言、流程图、伪代码和计算机语言表示算法。

3.C语言的主要特点有:语言简洁、紧凑,使用方便、灵活。

ANSI C一共只有32个关键字;控制语句丰富,程序书写自由,主要用小写字母表示,压缩了一切不必要的成分;运算符丰富,共有34种;数据结构类型丰富;具有结构化的控制语句;语法限制不太严格,程序设计自由度大;C语言允许直接访问物理地址,能进行位(bit)操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。

因此有人把它称为中级语言;生成目标代码质量高,程序执行效率高;与汇编语言相比,用C语言写的程序可移植性好。

4.用传统流程图表达如下:5. 计算机硬件系统的组成:计算机硬件系统主要由运算器、控制器、存储器、输入设备和输出设备构成,运算器和控制器合称为中央处理器(CPU),输入设备和输出设备统称为外部设备。

6.计算机网络常用的传输介质:分为有线介质和无线介质;有线介质包括光纤、同轴电缆和双绞线;无线介质包括红外信号、微波等。

2.2 数据类型与表达式1.【习题解答】一、选择题1.D2.B3.A4.B5.A6.B7.D8.D9.C二、填空题1.整型、实型、字符型、枚举类型2.3.5000003.逗号运算符4.三,自右向左5.1,06.32767三、编程题1.已知球的半径为1.5cm,计算球的体积。

C语言练习题及参考答案

C语言练习题及参考答案

练习题1及参考答案1. 单项选择题(1)以下并非C语言的特点的是????? 。

A.? C语言简洁和紧凑B. 能够编制出功能复杂的程序C.? C语言可以直接对硬件进行操作D.? C语言移植性好【答】B(2)一个C程序的执行是从????? 。

A.? main()函数开始,直到main()函数结束B. 第一个函数开始,直到最后一个函数结束C. 第一个语句开始,直到最后一个语句结束D.? main()函数开始,直到最后一个函数结束【答】A(3)在C程序中,main()的位置????? 。

A. 必须作为第一个函数B. 必须作为最后一个函数C. 可以任意D. 必须放在它所调用的函数之后【答】C(4)一个C程序是由????? 。

A. 一个主程序和若干子程序组成B. 一个或多个函数组成C. 若干过程组成D. 若干子程序组成【答】B(5)下列说法正确的是????? 。

A. 在执行C程序时不是从main()函数开始的B.? C程序书写格式限制严格,一行内必须写一个语句C.? C程序书写格式比较自由,一个语句可以分行写在多行上D.? C程序书写格式严格要求一行内必须写一个语句,并要求行号【答】C2. 填空题(1)一个C源程序至少有?? ①?? 个main()函数和?? ②?? 个其他函数。

【答】①一? ②若干(2)任何C语句必须以????? 结束。

【答】分号(3)C语言源程序的基本单位是????? 。

【答】函数(4)C编译程序的功能是????? 。

【答】将C源程序编译成目标代码练习题2及参考答案1. 单项选择题(1)以下字符串为标识符的是????? 。

A. _MY????????? ??????B. 2_2222?????? ?????? ??????C. short?????? ?????? ??????D. LINE 5【答】A(2)下列符号可以作为变量名的是????? 。

A. +a????? ?????? ??????B. *p?????? ?????? ?????? ??????C. _DAY????? ?????? ??????D. next day【答】C(3)设c是字符变量,则以下表达式正确的是????? 。

C语言习题及解答-2-1

C语言习题及解答-2-1

C语言习题及解答-2-1C语言概述一.选择题1.下列选项中,合法的C语言关键字是A) VAR B) cherC) integer D) default2.请选出可用作C语言用户标识符的一组标识符____A) Void define WORD B) a3_b3 _123 IFC) For -abc Case D) 2a Do sizeof3.C语言提供的合法的数据类型关键字是____A) Double B) shortC) integer D) Char4.在下列字符中,不可用作C语言标识符的是A) water B) priceC) a>b D) a125.一下叙述正确的是A) C语言比其他高级高级B) C语言可以不用编译就能被计算机识别执行C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D) C语言出现的最晚、具有其他语言的一切优点6.在一个C语言程序中A) main函数必须出现在所有函数之前B) main函数可以在任何地方出现C) main函数必须出现在所有函数之后D) main函数必须出现在固定位置7.下列符号不属于C语言保留字的是A) if B) then C) static D) for8.下列说法正确的是A) 主函数名main是由程序设计人员按照“标识符”的命名规则来选取的B) 分号和回车符都可以作为语句的结束符号C) 在程序清单的任何地方都可以插入一个或多个空格符号D) 程序的执行总是从主函数main()开始的参考答案1.D2.B3.B4.C5.C6.B7.B8.D数据类型与表达式一.选择题1. 下列字符序列中,不可用作C语言标识符的是()。

A)abc123 B)no.1 C)_123_ D)_ok2. 正确的C语言标识符是()。

A)_buy_2 B)2_buy C)?_buy D)buy?3. 请选出可用作C 语言用户标识符的一组标识符()。

A)void B)a3_b3 C)for D)2adefine _123 -abc DOWORD IF case sizeof4. 下列符号中,不属于转义字符的是()。

C语言章节习题及答案

C语言章节习题及答案

《C程序设计》复习题集第2章基础概念一、选择题(在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的)2.1以下叙述中正确的是A)C语言比其他语言高级B)C语言可以不用编译就能被计算机识别执行C)C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D)C语言出现的最晚,具有其他语言的一切优点正确答案: C2.2 以下叙述中正确的是A)构成C程序的基本单位是函数B)可以在一个函数中定义另一个函数C)main()函数必须放在其他函数之前D)所有被调用的函数一定要在调用之前定义正确答案: A2.3 以下说法正确的是A)C语言程序总是从第一个函数开始执行B)在C语言程序中,要调用函数必须在main()函数中定义C)C语言程序总是从main()函数开始执行D)C语言程序中的main()函数必须放在程序的开始部分正确答案: C2.4 C语言规定,在一个源程序中,main函数的位置A)必须在最开始B)必须在系统调用的库函数的后面C)可以任意D)必须在最后正确答案: C2.5 以下叙述不正确的是A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main函数C)C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面正确答案: D2.6 下列叙述中正确的是A)C语言编译时不检查语法B)C语言的子程序有过程和函数两种C)C语言的函数可以嵌套定义D)C语言的函数可以嵌套调用正确答案: D2.7 以下叙述正确的是A)在C程序中,每行中只能写一条语句B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数C)在C程序中,无论是整数还是实数,都能被准确无误地表示D)在C程序中,%是只能用于整数运算的运算符正确答案: D2.8 下列关于C语言的说法不正确的是A)C语言既具有高级语言的一切功能,也具有低级语言的一些功能B)C语言中的每一条执行语句都必须用分号结束,但分号不是C语言的一部分,是语句之间的分隔符号C)注释可以出现在程序中任意合适的地方D)命令行后面不能加分号,命令行不是C语言的语句正确答案: B2.9 以下说法错误的是A)高级语言都是用接近人们习惯的自然语言和数学语言作为语言的表达形式B)计算机只能处理由0和1的代码构成的二进制指令或数据C)C语言源程序经过C语言编译程序编译之后生成一个后缀为.EXE的二进制文件D)每一种高级语言都有它对应的编译程序正确答案: C2.10 C语言中用于结构化程序设计的3种基本结构是A)顺序结构、选择结构、循环结构B)if,switch,breakC)for,while,do-while D)if,for,continue正确答案: A第3章数据类型运算符与表达式一、选择题(在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的)3.1 C语言提供的基本数据类型包括A)整型、实型、逻辑型B)整型、实型、字符型C)整型、字符型、逻辑型D)字符型、实型、逻辑型正确答案: B3.2 C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符A)必须为字母B)必须为下划线C)必须为字母或下划线D)可以是字母,数字和下划线中任一字符正确答案: C3.3 下列可用于C语言用户标识符的一组是A)void, define, WORD B)a3_b3, _123,CarC)For, -abc, IF Case D)2a, DO, sizeof正确答案: B3.4 下面四个选项中,均是不正确的8进制数或16进制数的选项是A)016 0x8f 018 B)0abc 017 0xaC)010 -0x11 0x16 D)0a12 7ff -123正确答案: D3.5 下列数据中,不合法的C语言实型数据的是A)0.123 B)123e3 C)2.1e3.5 D)789.0正确答案: C3.7 若有说明语句:char c='\72';则变量cA)包含1个字符B)包含2个字符C)包含3个字符D)说明不合法,c的值不确定正确答案: A3.8 有字符串如下,"\n\\\407as1\"\xabc",则字符串的长度为A)6 B)7 C)8 D)9正确答案: D3.9 C语言中运算对象必须是整型的运算符是A)%= B)/ C)= D)<=正确答案: A3.10 若变量已正确定义并赋值,以下符合C语言语法的表达式是A)a:=b+1 B)a=b=c+2 C)int 18.5%3 D)a=a+7=c+b正确答案: B3.11 若变量a,i已正确定义,且i已正确赋值,合法的语句是A)a= =1 B)++i; C)a=a++=5; D)a=int(i);正确答案: B3.12 若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是A)2.500000 B)2.750000 C)3.500000 D)0.000000正确答案: A3.13 若有运算符<<,sizeof,^,&=,则它们按优先级由高至低的正确排列次序是A)sizeof,&=,<<,^ B)sizeof,<<,^,&= C)^,<<,sizeof,&= D)<<,^,&=,sizeof正确答案: B3.14 以下不正确的叙述是A)在C程序中,逗号运算符的优先级最低B)在C程序中,APH和aph是两个不同的变量C)若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变D)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值正确答案: D3.15 已知int i,a;执行语句i=(a=3,a++,- -a,a+4,a+5,++a);后,变量i的值为A)2 B)3 C)4 D)5正确答案: C3.16 设变量a是int型,f是float型,i是double型,则表达式10+′a′+i*f值的数据类型为A)int B)float C)double D)不确定正确答案: C3.17 在C语言中,char型数据在内存中的存储形式是A)补码B)反码C)原码D)ASCII码正确答案: D3.18 字符型数据在机器中是用ASCII码表示的,字符’5’和’7’在机器中表示为A)10100011和 01110111 B)01000101和01100011C)00110101和00110111 D)01100101和01100111正确答案: C3.19 不能进行++和- -运算的数据类型为A)指针B)整型C)长整型D)常量正确答案: D3.20 设有int x=11;则表达式(x++*1/3)的值是A)3 B)4 C)11 D)123.21 以下程序的输出结果是main(){ int a=21,b=11;printf("%d\n",- -a+b,- -b+a);}A)30 B)31 C)32 D)33正确答案: A3.22 假设整型变量a,b,c的值均为5,则表达式a+++b+++c++的值为A)17 B)16 C)15 D)14正确答案: C3.23 已知int a=6; 则执行a+=a-=a*a;语句后,a的值为A)36 B)0 C)-24 D)-60正确答案: D3.24 设变量n为float类型,m为int类型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是A)n=(n*100+0.5)/100.0 B)m=n*100+0.5,n=m/100.0C)n=n*100+0.5/100.0 D)n=(n/100+0.5)*100.0正确答案: B3.25 sizeof(float)是A)一个双精度型表达式B)一个整型表达式C)一种函数调用D)一个不合法的表达式正确答案: B3.26下列关于字符串的说法中错误的是A)在C语言中,字符串是借助于字符型一维数组来存放的,并规定以字符′\0′作为字符串结束标志B)′\0′作为标志占用存储空间,计入串的实际长度C)在表示字符串常量的时候不需要人为在其末尾加入′\0′D)在C语言中,字符串常量隐含处理成以′\0′结尾正确答案: B3.27 以下变量x,y,z均为double类型且已正确赋值,不能正确表示数学式子x÷y÷z 的C语言表达式是A)x/y*z B)x*(1/(y*z)) C)x/y*1/z D)x/y/z正确答案: A3.28 下列关于语句的说法错误的是A)复合语句是由“{”开头,由“}”结尾的B)复合语句在语法上视为一条语句C)复合语句内,可以有执行语句,不可以有定义语句部分D)C程序中的所有语句都必须由一个分号作为结束正确答案: C二、填空题3.30 以下程序的输出结果是【1】。

c语言考试题及答案以及解析

c语言考试题及答案以及解析

c语言考试题及答案以及解析一、选择题1. 下列哪个选项是C语言中的关键字?A. intB. floatC. doubleD. string答案:A解析:在C语言中,关键字是保留的词汇,用于表示特定的语法结构。

int是C语言中用于声明整型变量的关键字。

2. C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C解析:在C语言中,乘法运算符是星号(*),用于计算两个数的乘积。

二、填空题1. 在C语言中,以下代码片段的输出结果是:```cint main() {int a = 5;printf("%d", a);return 0;}```输出结果为:_________答案:5解析:代码中的printf函数用于输出变量a的值,a被初始化为5,因此输出结果为5。

2. 下列代码段中,变量b的值是多少?```cint main() {int a = 10, b;b = a + 5;printf("%d", b);return 0;}```变量b的值为:_________答案:15解析:变量b被赋值为变量a加上5,由于a的值为10,所以b的值为15。

三、简答题1. 简述C语言中的数组是什么,并给出一个数组的声明和初始化的例子。

答案:C语言中的数组是一种数据结构,用于存储相同类型的多个元素。

数组的声明需要指定元素的类型和数组的长度。

数组的初始化可以在声明时完成。

解析:例如,声明一个整型数组并初始化:```cint numbers[5] = {1, 2, 3, 4, 5};```2. 解释C语言中的函数是什么,并给出一个简单函数的定义和调用的例子。

答案:C语言中的函数是一段具有特定功能的代码块,可以接收参数,并返回一个值。

函数的定义包括函数的返回类型、名称、参数列表和函数体。

函数的调用是使用函数名称和必要的参数来执行函数。

解析:例如,定义一个函数来计算两个数的和,并调用它:```cint add(int x, int y) {return x + y;}int main() {int result = add(5, 10);printf("%d", result);return 0;}```四、编程题1. 编写一个C语言程序,实现输入两个整数,输出它们的和。

C语言程序设计》课后习题详细答案

C语言程序设计》课后习题详细答案

《全国计算机等级考试二级教程——C语言程序设计》习题分析与详细解答第一章程序设计基本概念习题分析与解答1.1 【参考答案】EXE1.2 【参考答案】[1].C [2].OBJ [3].EXE1.3 【参考答案】[1]顺序结构[2]选择结构[3]循环结构第二章C程序设计的初步知识习题分析与解答一、选择题2.1 【参考答案】B)2.2 【参考答案】D)2.3 【参考答案】B)2.4 【参考答案】A)2.5 【参考答案】C)2.6 【参考答案】A)2.7 【参考答案】B)2.8 【参考答案】B)2.9 【参考答案】D)2.10 【参考答案】C)2.11 【参考答案】B)2.12 【参考答案】B)2.13 【参考答案】A)二、填空题2.14 【参考答案】[1]11 [2]122.15 【参考答案】[1]4.2 [2]4.22.16 【参考答案】[1]{ [2]} [3]定义[4]执行2.17 【参考答案】[1]关键字[2]用户标识符2.18 【参考答案】[1]int [2]float [3]double2.19 【参考答案】float a1=1.0, a2=1.0;或float a1=1, a2=1;(系统将自动把1转换为1.0)2.20 【参考答案】存储单元2.21 【参考答案】 3.52.22 【参考答案】[1]a*b/c [2]a/c*b [3]b/c*a2.23 【参考答案】把10赋给变量s2.24 【参考答案】[1]位[2]1位二进制数据(0或1)2.25 【参考答案】[1]8 [2]127 [3]01111111 [4]-128 [ 5 ] 10000000 2.26 【参考答案】[1]32767 [2]-32768 [3]10000000000000002.27 【参考答案】[1]十[2]八[3]十六三、上机改错题2.28 【分析与解答】第1行的错误:(1) include是一个程序行,因此在此行的最后不应当有分号(;)。

C语言考试习题及答案

C语言考试习题及答案

第一章C语言程序设计概述习题1. C语言程序的基本结构是【】。

A) 函数B) 语句C) 字符D) 程序行2. 下列四个叙述中,正确的是【】A)在C程序中,主函数必须位于其他函数的最前面B)在C程序中,一行只能写一条语句C)C程序的基本结构是程序行D)C语句是完成程序功能的最小单位3. C语言规定,在一个C程序中,main()函数的位置是【】A)必须在开始B) 必须在最后C) 可以任意D) 必须在系统调用的库函数之后4. 以下叙述中,正确的是【】。

A) C语言程序总是从第一个定义的函数开始执行 .B) C语言程序中,要调用的函数必须在main()函数中定义C) C语言程序总是从main()函数开始执行D) C语言程序中的main()函数必须放在程序的开始部分5. 在C语言提供的合法的关键字是【】A)switch B)cher C)Case D)FLOAT6. 以下用户标识符,其中合法的是【】A) For B) 4d C) f2.G3 D) _f#第2章数据类型、运算符和表达式习题1.int x=43, y=0; char ch=‘A’;则表达式x*y+ch-‘B’的值是【】。

A) 43 B) 65 C) 1 D) 02. 在C语言中,合法的字符常量是【】A)'\084' B)'\x43' C)'ab' D)"\0"3. 若已定义: int x=5.5,y; 则表达式y=2.75+x/2的值是【】。

A) 5.5 B) 5 C) 4 D) 4.04. a=2为整型变量,(a+‘E’-‘A’)*3表达式的值是【】。

A)18 B)12 C)8 D)205. 表达式5/2的值是【】。

A)2.5 B) 2 C) 3 D) 16. 设y=z=4,则表达式x=y==z的值为【】。

A)4 B) –4 C) 1 D) 0 7. 设int a,b;则表达式a=2,b=++a*2的值为【】。

数据结构(C语言版)习题及答案第二章

数据结构(C语言版)习题及答案第二章

数据结构(C语⾔版)习题及答案第⼆章习题2.1选择题1、线性表的顺序存储结构是⼀种(A)的存储结构,线性表的链式存储结构是⼀种(B)的存储结构。

A、随机存取B、顺序存取C、索引存取D、散列存取2、对于⼀个线性,既要求能够进⾏较快的插⼊和删除,⼜要求存储结构能够反映数据元素之间的逻辑关系,则应该选择(B)。

A、顺序存储⽅式B、链式存储⽅式C、散列存储⽅式D、索引存储⽅式3、已知,L是⼀个不带头结点的单链表,p指向其中的⼀个结点,选择合适的语句实现在p结点的后⾯插⼊s结点的操作(B)。

A、p->next=s ; s->next=p->next ;B、s->next=p->next ; p->next=s ;C、p->next=s ; s->next=p ;D、s->next=p ; p->next=s ;4、单链表中各结点之间的地址( C D)。

A、必须连续B、部分地址必须连续C、不⼀定连续D、连续与否都可以5、在⼀个长度为n的顺序表中向第i个元素(0A、n-iB、n-i+1C、n-i-1D、i2.2填空题1、顺序存储的长度为n的线性表,在任何位置上插⼊和删除操作的时间复杂度基本上都⼀样。

插⼊⼀个元素⼤约移动表中的(n/2)个元素,删除⼀个元素时⼤约移动表中的((n-1)/2)个元素。

2、在线性表的顺序存储⽅式中,元素之间的逻辑关系是通过(物理顺序)来体现的;在链式存储⽅式,元素之间的逻辑关系是通过(指针)体现的。

3、对于⼀个长度为n的单链表,在已知的p结点后⾯插⼊⼀个新结点的时间复杂度为(o(1)),在p结点之前插⼊⼀个新结点的时间复杂度为(o(n)),在给定值为e的结点之后插⼊⼀个新结点的时间复杂度为(o(n))。

4、在双向链表中,每个结点包含两个指针域,⼀个指向(前驱)结点,另⼀个指向(后继)结点。

5、对于循环链表来讲,逐个访问各个结点的结束判断条件是(设P为指向结点的指针,L为链表的头指针,则p->next= =L)。

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

C语言概述一.选择题1.下列选项中,合法的C语言关键字是A) VAR B) cherC) integer D) default2.请选出可用作C语言用户标识符的一组标识符____A) Void define WORD B) a3_b3 _123 IFC) For -abc Case D) 2a Do sizeof3.C语言提供的合法的数据类型关键字是____A) Double B) shortC) integer D) Char4.在下列字符中,不可用作C语言标识符的是A) water B) priceC) a>b D) a125.一下叙述正确的是A) C语言比其他高级高级B) C语言可以不用编译就能被计算机识别执行C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D) C语言出现的最晚、具有其他语言的一切优点6.在一个C语言程序中A) main函数必须出现在所有函数之前B) main函数可以在任何地方出现C) main函数必须出现在所有函数之后D) main函数必须出现在固定位置7.下列符号不属于C语言保留字的是A) if B) then C) static D) for8.下列说法正确的是A) 主函数名main是由程序设计人员按照“标识符”的命名规则来选取的B) 分号和回车符都可以作为语句的结束符号C) 在程序清单的任何地方都可以插入一个或多个空格符号D) 程序的执行总是从主函数main()开始的参考答案1.D2.B3.B4.C5.C6.B7.B8.D数据类型与表达式一.选择题1. 下列字符序列中,不可用作C语言标识符的是()。

A)abc123 B)no.1 C)_123_ D)_ok2. 正确的C语言标识符是()。

A)_buy_2 B)2_buy C)?_buy D)buy?3. 请选出可用作C 语言用户标识符的一组标识符( )。

A)void B)a3_b3 C)for D)2adefine _123 -abc DOWORD IF case sizeof4. 下列符号中,不属于转义字符的是( )。

A)\\ B)\0xAA C)\t D)\05. 不属于C 语言关键字的是( )。

A)int B)break C)while D)character8.以下选项中,合法的用户标识符是( )。

A)long B)_2abc C)3dmax D)A)dat10.已知大写字母A 的ASCII 码值是65, 小写字母a 的ASCII 码是97,则用八进制表示的字符常量'\101'是( )。

A)字符A B)字符a C)字符c D)非法的常量12.以下选项中,正确的字符常量是( )。

A)"F" B)'\\'' C)'W' D)''13.以下选项中可作为C 语言合法整数的是A)10110B B)0386 C)0Xffa D)x2a214.下列变量定义中合法的是A)short _a=1-.le-1; B)double b=1+5e2.5;C)long do=0xfdaL; D)float 2_and=1-e-3;16.若有代数式cd ab3,则不正确的C 语言表达式是( )。

A)a/c/d*b*3 B)3*a*b/c/dC)3*a*b/c*d D)a*b/d/c*320.在C 语言中,要求运算数必须是整型的运算符是( )。

A)/ B)++ C)*= D)%21.若有说明语句:char s='\72';则变量s ( )。

A)包含一个字符 B)包含两个字符C)包含三个字符 D)说明不合法,s 的值不确定23.在C 语言中,char 型数据在内存中的存储形式是( )。

A)补码 B)反码 C)原码 D)ASCII 码26.设以下变量均为int 类型,则值不等于7的表达式是( )。

A)(m=n=6, m+n, m+1)B)(m=n=6, m+n, n+1)C)(m=6, m+1, n=6, m+n)D)(m=6, m+1, n=m, n+1)27.假设所有变量均为整型,则表达式(x=2, y=5, y++, x+y)的值是( )。

A)7 B)8 C)6 D)229.已知s 是字符型变量,下面正确的赋值语句是( )。

A)s='abc'; B)s='\08';C)s='\xde'; D)s="\";30.若有以下定义,则正确的赋值语句是( )。

int x,y;float z;A)x=1,y=2, B)x=y=100C)x++; D)x=int (z);31.设x、y均为float型变量,则不正确的赋值语句是()。

A)++x ; B)x*=y-2;C)y=(x%3)/10; D)x=y=0;33.putchar函数可以向终端输出一个()。

A)整型变量表达式值。

B)字符串C)实型变量值。

D)字符或字符型变量值。

34.以下程序段的输出结果是( )。

int a=12345; printf("%2d\n", a);A)12 B)34 C)12345 D)提示出错、无结果36.以下说法正确的是()。

A)输入项可以为一个实型常量,如scanf("%f",3.5);B)只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=5d");C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf("%4.2f",&f);D)当输入数据时,必须指明变量的地址,如scanf("%f",&f);37.以下程序的执行结果是:()。

#include <stdio.h>main(){ int x=2,y=3;printf("x=%%d,y=%%d\n",x,y);}A) x=%2,y=%3 B) x=%%d,y=%%dC) x=2,y=3 D) x=%d,y=%d38.以下程序的输出结果是()。

(注:└┘代表空格)#include <stdio.h>main(){ printf("\nstring1=%15s*", "programming");printf("\nstring2=%-5s*", "boy");printf("string3=%2s*", "girl");}A)string1=programming└┘└┘└┘└┘* B)string1=└┘└┘└┘└┘programming*string2=boy* string2=boy└┘└┘*string3=gi*string3=gi*C)string1=programming└┘└┘└┘└┘* D)string1=└┘└┘└┘└┘programming*string2=└┘└┘boy*string3=girl* string2=boy└┘└┘*string3=girl* 39.阅读以下程序,当输入数据的形式为:12,34,正确的输出结果为()。

#include <stdio.h>main(){ int a,b;scanf("%d%d", &a,&b);printf("a+b=%d\n",a+b);}A)a+b=46 B)有语法错误C)a+b=12 D)不确定值40.以下语句:temp=x;x=y;y=temp;的功能是( )。

A)把x,y,temp从小到大排列B)把x,y,temp从大到小排列C)交换x和y D)无确定的结果二.填空题1.在内存中要用_____7___个字节来存储字符串"Double"。

2.字符0的十进制ASCII码值是48,则字符9的十进制ASCII码值是____57_____。

3.字符型(char)数据在内存中是以其_________的形式存储的。

4.8位无符号二进制数能够表示的最大十进制数是________。

5.语句printf("a\bRe\'CH\'y\\\bou\n");的输出结果是_________。

6.若有说明char s1="5";那么s1里包含___1_____个字符。

7.十进制数125在一个字节的二进制表示是_________。

8.C语言的关键字都用________{大写或小写}。

9.C语言是通过_______来进行输入和输出的。

11.以下程序的执行结果是________。

#include <stdio.h>main(){ char s='b';printf("dec:%d,oct:%o,hex:%x,ASCII:%c\n", s,s,s,s);}13.以下程序的执行结果是:________。

#include <stdio.h>main(){ char c='c'+5;printf("c=%c\n",c);}14.以下程序输入1└┘2└┘3后的执行结果是________。

(注:└┘代表空格)#include <stdio.h>main(){ int i,j;char k;scanf("%d%c%d",&i,&k,&j);printf("i=%d,k=%c,j=%d\n",i,k,j);}15.有以下程序,若输入9876543210后的执行结果是________;若输入为:98└┘76└┘543210后的执行结果是________;若输入为:987654└┘3210后的执行结果为:________。

(注:└┘代表空格)#include <stdio.h>main(){ int x1,x2;char y1,y2;scanf("%2d%3d%3c%c",&x1,&x2,&y1,&y2);printf("x1=%d,x2=%d,y1=%c,y2=%c\n",x,y);}16.若x和y均为int型变量,则以下语句的功能是________。

x+=y; y=x-y; x-=y;17.有一输入函数scanf("%d",k);则不能使float类型变量k得到正确数值的原因是:________。

相关文档
最新文档