C语言选择题86759

合集下载

c语言笔试考试题及答案

c语言笔试考试题及答案

c语言笔试考试题及答案C语言笔试考试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个是合法的变量名?A. 2variableB. variable-nameC. variable_nameD. variable$name答案:C2. 下列哪个选项是C语言的关键字?A. defineB. intC. integerD. float答案:B3. 以下哪个语句不能通过编译?A. int a = 10;B. int b = 10.5;C. int c = 'a';D. int d = 1.0;答案:B4. C语言中,以下哪个函数用于计算两个数的和?A. pow()B. sqrt()C. sin()D. sum()答案:D(注意:sum()不是C语言标准库函数,这里假设它是一个自定义函数)5. 以下哪个选项是正确的C语言数组声明?A. int numbers[];B. int numbers[10] = {};C. int numbers = 10;D. int [10] numbers;答案:B6. 以下哪个是C语言中正确的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello\nWorld"D. "Hello\"World"答案:A7. 在C语言中,以下哪个是正确的函数声明?A. void myFunction();B. int myFunction;C. myFunction();D. int myFunction()答案:A8. 下列哪个选项不是C语言的标准输入输出库函数?A. printf()B. scanf()C. cout()D. getchar()答案:C9. 在C语言中,以下哪个是正确的逻辑运算符?A. &&B. ||C. ||D. ++答案:A10. 下列哪个选项是C语言的预处理指令?A. #includeB. defineC. ifD. else答案:A二、简答题(每题5分,共20分)1. 请简述C语言中数组和指针的区别。

c语言考试题库及答案

c语言考试题库及答案

c语言考试题库及答案C语言考试题库及答案一、选择题1. 在C语言中,以下哪个是正确的数据类型?A. IntegerB. RealC. CharD. All of the above答案:D2. 以下哪个是C语言中的合法标识符?A. 2variableB. variable2C. variable!$D. None of the above答案:B3. 在C语言中,以下哪个运算符用于取模?A. %B. /C. *D. -答案:A4. 以下哪项是C语言中数组的正确声明?A. int array[10];B. int [10] array;C. Both A and BD. None of the above答案:C5. 在C语言中,以下哪个是正确的函数定义?A. void myFunction();B. int myFunction;C. int myFunction();D. None of the above答案:C二、填空题6. C语言中,用于定义常量的关键字是________。

答案:const7. 在C语言中,如果需要在程序中包含标准输入输出库,需要使用________预处理指令。

答案:#include <stdio.h>8. 以下代码段的输出结果是________。

```cint main() {int a = 10;printf("%d", a);return 0;}```答案:109. 在C语言中,字符串的结束标志是________。

答案:'\0'10. 以下代码段中,循环将执行________次。

```cint i;for(i = 0; i < 10; i++) {// ...}```答案:10三、简答题11. 解释C语言中指针的概念。

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

在C语言中,指针允许程序员直接操作内存地址,这增加了程序的灵活性和效率。

C语言测试题(附有详细解析)

C语言测试题(附有详细解析)

C语言测试题(附有详细解析)一、选择题1. 下面哪个选项是C语言的合法标识符?A. voidB. 2varC. intD. _temperature解析:C语言的标识符必须以字母或下划线开头,后面可以跟字母、数字或下划线。

选项A和C是C语言的关键字,不能作为标识符。

选项B以数字开头,不合法。

选项D符合标识符的规则,是正确的。

2. 在C语言中,哪个关键字用于定义整型变量?A. floatB. intC. doubleD. char解析:在C语言中,关键字`int`用于定义整型变量。

选项A 用于定义浮点型变量,选项C用于定义双精度浮点型变量,选项D用于定义字符型变量。

因此,正确答案是B。

3. 下面哪个选项是C语言中的逻辑运算符?A.++B. &&C. ||D. !=解析:C语言中的逻辑运算符包括`&&`(逻辑与)和`||`(逻辑或)。

选项A是自增运算符,选项D是不等于运算符,因此正确答案是B和C。

二、填空题4. 下面代码的输出是什么?```c#include <stdio.h>int main() {int x = 5;printf("%d\n", x++);return 0;}```解析:这段代码的输出是5。

在`printf`语句中,`x++`是后缀自增运算符,它先输出x的当前值5,然后x的值增加1。

因此,输出为5。

5. 下面代码的输出是什么?```c#include <stdio.h>int main() {int x = 5, y = 10;printf("%d\n", x > y ? x : y);return 0;}```解析:这段代码的输出是10。

条件运算符`?:`是一个三元运算符,它根据第一个表达式的值来选择第二个或第三个表达式。

在这个例子中,`x > y`是假的,所以输出是`y`的值,即10。

c语言考试题及答案原创

c语言考试题及答案原创

c语言考试题及答案原创一、选择题1. 在C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项不是C语言中合法的变量名?A. _nameB. name2C. 2ndNameD. name$答案:D3. C语言中,用于声明一个函数的关键字是:A. defineB. functionC. voidD. int答案:C二、填空题1. 在C语言中,用于定义一个整型变量的关键字是____。

答案:int2. C语言中,用于定义一个浮点型变量的关键字是____。

答案:float3. 在C语言中,用于定义一个字符型变量的关键字是____。

答案:char三、简答题1. 请简述C语言中数组和指针的关系。

答案:在C语言中,数组名可以作为指向数组首元素的指针使用。

指针可以用于访问数组元素,也可以用于数组的遍历。

2. 解释C语言中宏定义的作用。

答案:宏定义在C语言中用于创建一个符号常量,它允许程序员使用一个名字来代表一个字符串。

宏定义通常用于定义常量值,以便于代码的维护和修改。

四、编程题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;}```答案:该程序通过循环遍历1到100的整数,检查每个数是否为偶数,如果是,则累加到变量`sum`中,最后输出100以内所有偶数的和。

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[] = "Hello, World!";reverseString(str);printf("Reversed string: %s\n", str);return 0;}```答案:该程序定义了一个`reverseString`函数,用于反转传入的字符串。

c语言编程测试题及答案

c语言编程测试题及答案

c语言编程测试题及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是正确的C语言注释方式?A. // 这是注释B. /* 这是注释 */C. /* 这是注释 */D. // 这是注释答案:B3. 在C语言中,以下哪个函数用于将字符串转换为浮点数?A. atoiB. atofC. itoaD. sprintf答案:B4. 下列哪个选项是C语言中的合法变量名?A. 2variableB. variable2C. variable-2D. variable_2答案:D5. 在C语言中,以下哪个运算符用于执行按位与操作?A. &&B. ||C. &D. %答案:C6. 下列哪个选项是C语言中正确的字符串声明?A. char str[] = "Hello";B. char str[6] = "Hello";C. char str[] = {"Hello"};D. char str[6] = {"Hello"};答案:A7. 在C语言中,以下哪个关键字用于定义一个函数?A. functionB. defC. voidD. int答案:C8. 下列哪个选项是C语言中正确的数组声明?A. int arr[5] = {0, 1, 2, 3, 4};B. int arr[] = {0, 1, 2, 3, 4};C. int arr[5] = {0, 1, 2};D. int arr = {0, 1, 2, 3, 4};答案:A9. 在C语言中,以下哪个关键字用于定义一个指针?A. pointerB. refC. ptrD. *答案:D10. 下列哪个选项是C语言中正确的文件操作函数?A. fopenB. openfileC. fileopenD. open答案:A二、填空题(每题2分,共10分)1. 在C语言中,使用________运算符可以交换两个变量的值。

C语言考试试题及答案

C语言考试试题及答案

C语言考试试题及答案一、选择题(每题2分,共20分)1. C语言的标识符可以由哪些字符组成?A. 数字、字母和下划线B. 数字和字母C. 数字、字母和特殊字符D. 字母和下划线2. 在C语言中,哪个关键字用于声明整型变量?A. floatB. intC. doubleD. char3. 下面哪个选项是C语言的逻辑运算符?A. &&B. ||C. >>D. ++4. 在C语言中,哪个函数用于输出字符串?A. printfB. scanfC. putcharD. puts5. 以下哪个选项是C语言的循环控制语句?A. ifB. switchC. whileD. break二、填空题(每题2分,共20分)6. 在C语言中,声明一个整型变量的关键字是______。

7. 以下程序段的输出结果是______。

```cint a = 5;printf("%d\n", a++ + ++a);```8. 在C语言中,用于定义数组的标识符是______。

9. 下面程序的输出结果是______。

```cint a = 3, b = 4;printf("%d\n", a > b ? a : b);```10. 在C语言中,用于表示整型常量的关键字是______。

三、判断题(每题2分,共20分)11. C语言中的变量在使用前必须先声明。

()12. 在C语言中,数组的下标从0开始。

()13. C语言的switch语句中,case后面必须跟一个break语句。

()14. 在C语言中,逗号运算符的优先级最高。

()15. C语言的函数可以没有返回值。

()四、编程题(每题20分,共40分)16. 编写一个C程序,实现以下功能:输入10个整数,计算并输出它们的平均值。

17. 编写一个C程序,实现以下功能:输入一个字符串,将其中的小写字母转换为大写字母,大写字母转换为小写字母,并输出结果。

c语言选择题考试题库及答案

c语言选择题考试题库及答案

c语言选择题考试题库及答案1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. typedefD. enum答案:A2. 在C语言中,以下哪个选项是正确的字符串声明?A. char str[] = "Hello";B. char str[] = {"Hello"};C. char str[] = 'Hello';D. char str[] = {"Hello"};答案:A3. 下列哪个函数用于将字符串连接到另一个字符串的末尾?A. strcat()B. strcpy()C. strcmp()D. strlen()答案:A4. C语言中,以下哪个选项是正确的数组声明?A. int arr[5] = {0, 1, 2, 3, 4};B. int arr[] = {0, 1, 2, 3, 4};C. int arr[5] = {0, 1, 2};D. int arr = {0, 1, 2, 3, 4};答案:A5. 在C语言中,以下哪个关键字用于定义一个函数?A. functionB. defC. defineD. void答案:D6. C语言中,以下哪个选项用于声明一个指针变量?A. int *p;B. int p*;C. int *p = 0;D. int p = 0;答案:A7. 下列哪个函数用于将一个字符串复制到另一个字符串?A. strcat()B. strcpy()C. strcmp()D. strlen()答案:B8. C语言中,以下哪个选项是正确的枚举声明?A. enum Color {Red, Green, Blue};B. enum Color {1, 2, 3};C. enum Color {Red=1, Green=2, Blue=3};D. enum {Red, Green, Blue};答案:A9. 在C语言中,以下哪个选项是正确的文件包含指令?A. #include <stdio.h>B. #include "stdio.h"C. #include <stdio>D. #include "stdio"答案:A10. C语言中,以下哪个关键字用于定义一个宏?A. defineB. macroC. macrodefD. #define答案:D。

(word完整版)C语言考试题库及答案,推荐文档

(word完整版)C语言考试题库及答案,推荐文档

C 语言理论上机考试选择题部分(共200 题)1、下面程序的输出是___D ______#include<stdio.h>void 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=b2、在下列选项中,不正确的赋值语句是__D _______A) ++t; B) n1=(n2=(n3=0));C) k=i=j; D) a=b+c=1;3、下面合法的C 语言字符常量是_______ A ____ .A) '\t' B) "A" C) 65 D) A4、表达式: 10!=9 的值是________ D ___ .A) true B) 非零值C) 0 D) 15 、C 语言提供的合法的数据类型关键字是_ B ___ .A) Double B) short C) integer D) Char6、字符(char) 型数据在微机内存中的存储形式是__D__.A) 反码B) 补码C) EBCDIC 码D) ASCII 码7、C 语言程序的基本单位是_____ C _____ .A) 程序行B) 语句C) 函数D) 字符 &设int a=12,则执行完语句a+=a-=a*a后,a的值是___ D ___A) 552 B) 264 C) 144 D) -2649、执行下面程序中的输出语句后,输出结果是_ B__.#include<stdio.h>void main(){int a;printf("%d\n",(a=3*5,a*4,a+5));}A) 65 B) 20 C) 15 D) 1010 、下面程序的输出是____ B _____ .{int x=023;printf("%d\n",--x);}A) 17 B) 18 C) 23 D) 2411 、下面程序的输出的是 ____ C ___ .#include<stdio.h>void main(){int x=10,y=3;printf("%d\n",y=x/y);}A) 0 B) 1 C) 3 D) 不确定的值12、已知字母A 的ASCII 码为十进制的65,下面程序的输出是_____ A ____ .#include<stdio.h>void main(){char ch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}A) 67,D B) B,C C) C,D D) 不确定的值13、若要求在if 后一对圆括号中表示a 不等于0 的关系,则能正确表示这一关系的表达式为_______ D__.A) a<>0 B) !a C) a=0 D) a14、以下程序的输出结果是____ D _____.#include<stdio.h>void main(){ int x=10,y=10;printf("%d %d\n",x--,--y);}A) 10 10 B) 9 9 C) 9 10 D) 10 915、设有如下定义:int x=10,y=3,z;则语句printf("%d\n",z=(x%y,x/y));的输出结果是____ D ____ .A) 1 B) 0 C) 4 D) 316、为表示关系x > y > z,应使用C语言表达式___A___.17、 C 语言中非空的基本数据类型包括_____ B ___ .A) 整型,实型,逻辑型B) 整型,实型,字符型#include<stdio.h> void main() A) (x>=y)&&(y>=z)C) (x>=y>=z)B) (x>=y)AND(y>=z)D) (x>=y) & (y>=z)C) 整型,字符型,逻辑型D) 整型,实型,逻辑型,字符型18、若x 和y 都是int 型变量,x=100,y=200, 且有下面的程序片段:printf("%d",(x,y)); 上面程序片段的输出结果是_______________________________ A___.A) 200 B) 100C) 100 200 D) 输出格式符不够,输出不确定的值19、阅读下面的程序#include<stdio.h> void main() { charch; scanf("%3c",&ch); printf("%c",ch);}如果从键盘上输入abc< 回车> 则程序的运行结果是__A ______________________ .A) a B) b C) c D) 程序语法出错20、阅读下面的程序#include<stdio.h> void main() {int i,j;i=010; j=9;printf("%d,%d",i-j,i+j);}则程序的运行结果是_____ D __ .A) 1,19 B) -1,19 C) 1,17 D) -1,1721、阅读下面的程序#include<stdio.h> void main(){int i,j,m,n; i=8;j=10; m=++i; n=j++;printf("%d,%d,%d,%d",i,j,m,n);}程序的运行结果是_______ C ____ .A) 8,10,8,10 B) 9,11,8,10C) 9,11,9,10D) 9,10,9,1122、已知a=12, 则表达式a+=a-=a*=a 的结果是 ____ A__.A) 0 B) 144 C) 12 D) -26423、若已定义int a,则表达式a=10,a+10,a++的值是__B_.A) 20 B) 10 C) 21 D) 1124、阅读下面的程序#include<stdio.h>void main(){int i,j;scanf("%3d%2d",&i,&j);printf("i=%d,j=%d\n",i,j);}如果从键盘上输入是 ___ D .1 2 34567<回车>,则程序的运行结果A) i=123,j=4567 B) i=1234,j=567C) i=1,j=2 D) i=123,j=4525、下面程序的输出结果是_____ D ___ .#include<stdio.h> void main(){int a=-1, b=4, k; k=(++a<=0)&&(b--<=0);printf("%d,%d,%d\n",k,a,b);}A) 1,1,2 B) 1,0,3 C) 0,1,2 D) 0,0,326、下面程序的输出结果是_____ A ___ .#include<stdio.h> void main(){int a=5,b=3;float x=3.14, y=6.5;printf("%d,%d\n",a+b!=a-b,x<=(y-=6.1));}A) 1,0 B) 0,1 C) 1,1 D) 0,027、执行下面程序段后,输出结果是_____ A ___ .int a;int b=65536; a=b; printf("%d\n",a);A) 65536 B) 0 C) -1 D) 128、若有以下定义和语句:int a=010, b=0x10, c=10; printf("%d,%d,%d\n",a,b,c); 则输出结果是____ B ____ .A) 10,10,10 B) 8,16,10 C) 8,10,10 D) 8,8,1029、已知有double 型变量x=2.5,y=4.7, 整型变量a=7, 则表达式x+a%3*(int)(x+y)%2/4 的值是_________ B ____ .A) 2.4 B) 2.5 C) 2.75 D) 030 、若已定义x 和y 是整型变量,x=2;, 则表达式y=2.75+x/2 的值是 ___ C ___ .A) 5.5 B) 5 C) 3 D) 4.031、以下程序的输出结果是______ D ___ .#include<stdio.h> void main(){int a=12, b=12;printf("%d,%d\n",--a,++b);}A) 10,10 B) 12,12 C) 11,10 D) 11,1332 、设有以下语句:int x=10;x+=3+x%(3), 则x 的值是. _____ A _____A) 14 B) 15 C) 11 D) 1233、若d 为double 型变量,则表达式d=1,d+5,d++ 的值是___ D__.A) 1 B) 6.0 C) 2.0 D) 1.034、表达式5!=3 的值是____ D ___ .A) T B) 非零值C) 0 D) 135、若有定义int a=12,n=5,则表达式a%=(n%2)运算后,a 的值__________ A ____ . A) 0 B) 1 C) 12 D) 6D) C 语言中变量必须先定义后引用38、C语言中的变量名只能由字母,数字和下划线三种字符组成,且第一个字符_____ C __ .A) 必须为字母B) 必须为下划线C) 必须为字母或下划线D) 可以是字母,数字或下划线中的任意一种39、设有说明:char w; int x; float y; double z; 则表达式: w*x+z-y 值的数据类型是___D ____ .A) float B) char C) int D) double40、一个C 语言的执行是从_____ A _____ .A) 本程序的主函数开始,到本程序的主函数结束B) 本程序的第一个函数开始,到本程序的最后一个函数结束C) 本程序的主函数开始,到本程序的最后一个函数结束D) 本程序的第一个函数开始,到本程序的主函数结束41、设a为整型变量,不能正确表达数学关系10<a<15的 C 语言表达式是___ A ___ .A) 10<a<15 B) a==11||a==12||a==13||a==14 C) a>10&&a<15 D) !(a<=10)&&!(a>=15)42、下列程序执行后的输出结果是_______ C ___ .#include <stdio.h>void main( ) { int a=5,b=60,c;if (a<b) {c=a*b;printf("%d*%d=%d\n",b,a,c);}else{c=b/a;printf("%d/%d=%d\n",b,a,c);}}A) 60/5=12 B) 300 C) 60*5=300 D) 12 43、如果 c 为字符型变量,判断 c 是否为空格不能使用___ A ___ .( 假设已知空格ASCII 码为32)A) if(c=='32') B) if(c==32)36、若有定义int x=3,y=2 和float a=2.5,b=3.5,则表达式:(x+y)%2+(int)a/(int)b 的值是__D__.A) 0 B) 2 C) 1.5 D) 137、在C 语言中,以下叙述不正确的是_____ A ___ .A) 在C程序中,无论是整数还是实数,都能被准确无误的表示B) 在C 程序中,变量名代表存储器中的一个位置C) 静态变量的生存期与整个程序的生存期相同44、运行下面程序时,若从键盘输入"3,5<CR>" ,则程序的输出结果是____ D___ .#include <stdio.h>void main( ){int x,y;scanf("%d,%d",&x,&y);if (x==y) printf("x==y");else if (x>y) printf("x>y");else printf("x<y");}A) 3<5 B) 5>3 C) x>y D) x<y45 、运行下面程序时,若从键盘输入数据为"6,5,7<CR>" ,则输出结果是C___.C) if(c=='\40') D) if(c==' ')#include <stdio.h>void main( ){ int a,b,c; scanf("%d,%d,%d",&a,&b,&c);if (a>b)if (a>c) printf("%d\n",a);else printf("%d\n",c);elseif (b>c) printf("%d\n",b);else printf("%d\n",c);}A) 5 B) 6 C) 7 D) 不定值46、执行下面程序时,若从键盘输入"2<CR>" ,则程序的运行结果是_____ A ____ .#include <stdio.h>void main( ){ int k; char cp;cp=getchar( );if (cp>='0' && cp<='9') k=cp-'0';else if (cp>='a' && cp<='f')k=cp-'a'+10;else k=cp-'A'+10; printf("%d\n",k);}A) 2 B) 4 C) 1 D) 1047、运行下面程序时,从键盘输入"2.0<CR>" ,则输出9士里阜 D结果是___B ____ .#include <stdio.h>void main( ){ float a,b;scanf("%f",&a);if (a<0.0) b=0.0;else if ((a<0.5) && (a!=2.0)) b=1.0/(a+2.0);else if (a<10.0) b=1.0/2;else b=10.0;printf("%f\n",b);}A) 0.000000 B) 0.500000C) 1.000000 D) 0.25000048、执行下面程序后,运行结果是_____ A ___ .#include <stdio.h>void main( ){ int x=41,y=1;if (x%3==0 && x%7==0){ y+=x;printf("y=%d\n",y);}else{y=x;printf("y=%d",y);}}A) y=41 B) y=43 C) y=42 D) y=149、运行下面程序时,从键盘输入"12,34,9<CR>" ,则输出结果是___A___.#include <stdio.h>void main( ){ int x,y,z;scanf("%d,%d,%d",&x,&y,&z);if (x<y)if (y<z)printf("%d\n",z);else printf("%d\n",y);else if (x<z)printf("%d\n",z);else printf("%d\n",x);}A) 34 B) 12 C) 9 D) 不确定的值50、运行下面程序时,从键盘输入字母H,则输出结果是____ C___.#include <stdio.h>void main( ){ char ch;ch=getchar( );switch(ch){ case 'H':printf("Hello!\n");case 'G':printf("Good morning!\n");default:printf("Bye_Bye!\n");}}A) Hello! B) Hello!Good Morning!C) Hello! D) Hello!Good morning! Bye_Bye!51、执行下列程序段后的输出结果是 ________ A __ .int x=1,y=1,z=1; x+=y+=z;printf("%d\n",x<y?y:x); A) 3 B) 2 C) 1D) 452、设 ch 是 char 型变量 ,值为 'A', 则表达式 ch=(ch>='A' && ch<='Z')?ch+32:ch 的值是 __B___. A) Z B) aC) zD) A53、下面程序的输出结果是 _____ C #include <stdio.h> void main( ){ int x=8,y=-7,z=9; if (x<y)if (y<0) z=0; else z-=1; printf("%d\n",z);}A) 8 B) 154、运行下面程序时 ,若从键盘输入 "5 <CR>", 则程序的 输出结果是 _____________ B ___. #include <stdio.h> void main( ){ int a ; scanf("%d",&a); if (a++>5)printf("%d\n",a); else printf("%d\n",a--) ;}A) 7 B) 6 C) 5 D) 455、运行下面程序时,若从键盘输入 "3 ,4 <CR>" ,则 程序的输出结果是 ____ B___. #include <stdio.h> void main( ){ int a,b,s; scanf("%d,%d",&a,&b); s=a; if (s<b) s=b; s=s*s; printf("%d\n",s) ;}A) 14 B) 16 C) 18D) 20#include <stdio.h> void main( ) { int x=0,y=1,z=0; if (x=z=y)x=3; printf("%d,%d\n",x,z);}A) 3,0B) 0,0C) 0,1 D) 3,157、假定等级和分数有以下对应关系: 等级:A 分数:85〜100 等级:B 分数:60〜84 等级: C分数: 60 以下对于等级 grade 输出相应的分数区间,能够完成该功 能的程序段是 ________ D ___ . A) switch (grade){case 'A':printf("85--100\n"); case 'B':printf("60--84\n");case 'C':printf("60 以下 \n"); default:printf(" 等级错误 !\n");} B) switch (grade){case 'A':printf("85--100\n");break; case 'B':printf("60--84\n");case 'C':printf("60 以下 \n"); default:printf(" 等级错误 !\n");} C) switch (grade){case 'A':printf("85--100\n");break; case 'B':printf("60--84\n");break;case 'C':printf("60 以下 \n"); default:printf(" 等级错误 !\n");} D) switch (grade){case 'A':printf("85--100\n");break; case 'B':printf("60--84\n");break;case 'C':printf("60 以下 \n");break; default:printf(" 等级错误 !\n");}58、能够完成如下函数计算的程序段是__B厂-1x<0 y=T 0x=0 L1x>056、下列程序的执行结果是 ______ DA) y=1;B) if (x>=0)Bye_Bye!C) 9D) 0if (a) d=d-10; else if(!b) if (!c) x=15; else x=25; printf("d=%d\n",d);}A) d=20B) d=10C) d=15D) 2562、有如下程序 : #include <stdio.h> void main( ){ int a=2,b=-1,c=2; if (a<b) if (b<0) c=0; else c++; printf("%d\n",c);}该程序的输出结果是 ___C _____ . A) 0 B) 1 C) 2 D) 363、下列程序执行后的输出结果是 ______ B __ . #include <stdio.h> void main( ){ int x,y=1,z; if ((z=y)<0) x=4; else if (y==0) x=5;else x=6;printf("%d,%d\n",x,y);}A) 4,1 B) 6,1 C) 5,0 D) 出错信息64、有如下程序 #include <stdio.h> void main( ){ int x=1,a=0,b=0; switch(x) {case 0: b++; case 1:a++; case 2: a++;b++;}printf("a=%d,b=%d\n",a,b);}该程序的输出结果是 _______ A ___ . A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=265、下面程序的输出结果是 _____ C ___ . #include <stdio.h>if(x!=0)if(x>0) y=1; else y=0; C) y=0;if (x>=0)if (x>0) y=1; else y=-1;if(x>0) y=1; else y=0; elsey=-1;D) y=-1;if (x>0) y=1; else y=0;59、有如下程序 #include <stdio.h> void main( ) { float x=5.0,y; if(x<0.0) y=0.0; else if (x<10.0) y=1.0/x; else y=1.0; printf("%f\n",y);}该程序的输出结果是 C ____ .A) 0.000000 B) 0.50000 C) 0.200000D) 1.00000060、以下程序的执行结果是 ___B _____ . #include <stdio.h> void main( ) { int x=1,y=0; switch (x){case 1:switch (y){case 0:printf("first\n");break;case 1:printf("second\n");break; }case 2:printf("third\n");}}A) firstB) first second third C) firstD) secondthird61、以下程序的执行结果是 _____ A #include <stdio.h> void main( ){ int a,b,c,d,x; a=c=0; b=1; d=20;void main( ){ int a=-1,b=1,k; if ((++a<0) && (b--<=0))printf("%d %d\n",a,b);else printf("%d %d\n",b,a);}A) -1 1 B) 0 1 C) 1 0 D) 0 066、假定w、x、y、z、m 均为int 型变量,有如下程序段:w=1;x=2;y=3;z=4;m=(w<x)?w:x; m=(m<y)?m:y; m=(m<z)?m:z; 则该程序段执行后,m 的值是____________ D __________ . A) 4 B) 3 C) 2 D) 167、以下程序的输出结果是___D ______ .main( ) { int a=100;if (a>100) printf("%d\n",a>100); elseprintf("%d\n",a<=100);}A) a<=100 B) 100 C) 0 D) 168、若执行下面的程序从键盘上输入是. B#include <stdio.h>void main( ){int n;scanf("%d",&n);if (n++<10) printf("%d\n",n);else printf("%d\n",n--);} A) 11 B) 10 C)969、以下程序输出结果是______ D ____#include <stdio.h>void main( ){ int m=4;if (++m>5) printf("%d\n",m--); else printf("%d\n",--m);70、若执行下面的程序从键盘上输入5,则输出结果是#include <stdio.h>void main( ){int x;scanf("%d",&x);if (x++>5) printf("%d\n",x);else printf("%d\n",x--);}A) 7 B) 6 C) 5 D) 471、以下程序段运行结果是_____ A___ .int x=1,y=1,z=-1; x+=y+=z; printf("%d\n",x<y?y:x); A) 1 B) 2 C) 4 D) 不确定的值72、有以下程序#include <stdio.h> void main( ) { int a,b,c=246;a=c/100%9; b=(-1)&&(-1); printf("%d,%d\n",a,b);}输出结果是___ A ____ .A) 2,1 B) 3,2 C) 4,3 D) 2,-173、运行下面程序时,若从键盘输入数据为"123" ,则输出结果是___C ___ .#include "stdio.h"void main(){ int num,i,j,k,place; scanf("%d",&num); if (num>99)place=3;else if(num>9)place=2;elseplace=1; i=num/100; j=(num-i*100)/10;k=(num-i*100-j*10); switch (place) { case 3:printf("%d%d%d\n",k,j,i); break;case 2: printf("%d%d\n",k,j);break;case 1: printf("%d\n",k);}}A) 123 B) 1,2,3 C) 321 D) 3,2,174、执行下列程序后的输出结果是___D _____ .#include <stdio.h> void main( ){ int k=4,a=3,b=2,c=1;printf("%d\n",k<a?k:c<b?c:a);}A) 4 B) 3 C) 2 D) 175、以下条件表达式中能完全等价于条件表达式x 的是 __B___.A) (x==0) B) (x!=0) C) (x==1) D) (x!=1)76、若运行下面程序时,给变量a 输入15,则输出结果是___A___.#include <stdio.h>void main( ){ int a,b;scanf("%d",&a);b=a>15?a+10:a-10;printf("%d\n",b) ;}A) 5 B) 25 C) 15 D) 109,则输出结果D) 8A) 7 B) 6 C) 5 D) 477、运行下面程序后,输出是___D___.#include <stdio.h>void main( ){ int k=-3;if (k<=0) printf("****\n");else printf("####\n")}A) ####B) ****C) ####****D) 有语法错误不能通过编译78、执行下面程序的输出结果是______ C___ .#include <stdio.h>void main( ){ int a=5,b=0,c=0;if (a=a+b) printf("****\n");else printf("####\n");}A) 有语法错误不能编译B) 能通过编译,但不能通过连接C) 输出****D) 输出####79、为了避免嵌套的if-else 语句的二义性,C 语言规定else 总是与___C___ 组成配对关系.A) 缩排位置相同的ifB) 在其之前未配对的ifC) 在其之前尚未配对的最近的ifD) 同一行上的if80、设x 、y 、z 、t 均为int 型变量,则执行以下语句后,t 的值为___ C ____ .x=y=z=1; t=++x || ++y && ++z;A) 不定值B) 4 C) 1 D) 081、以下程序段 C ________ .x=-1;do{x=x*x;} while (!x);A) 是死循环B) 循环执行两次C)循环执行一次D)有语法错误82、对下面程序段描述正确的是___B _____ .int x=0,s=0;while (!x!=0) s+=++x; printf("%d",s);A) 运行程序段后输出0B) 运行程序段后输出1C) 程序段中的控制表达式是非法的D) 程序段循环无数次83、下面程序段的输出结果是____ C ___ .x=3; do { y=x--;if (!y) {printf("*");continue;} printf("#");} while(x=2);A) ## B) ##* C)死循环D)输出错误信息84、下面程序的运行结果是 B . #include<stdio.h>void main( ){ int a=1,b=10;do{ b-=a;a++;} while(b--<0); printf("%d,%d\n",a,b);}A) 3,11 B) 2,8 C) 1,-1 D) 4,985、下面程序段的运行结果是____ B _____ .int n=0;(n * n )/6=1+1/(2*2)+1/(3*3)+..+1/(n*n) 请填空,完成求n 的功能。

c语言等级考试试题

c语言等级考试试题

c语言等级考试试题C语言等级考试试题一、选择题(每题2分,共20分)1. 在C语言中,以下哪个选项不是基本数据类型?A. intB. floatC. doubleD. string2. 以下哪个是正确的C语言常量定义方式?A. const int Max = 100;B. int const Max = 100;C. const int max = 100;D. int const max = 100;3. 在C语言中,以下哪个语句可以正确地声明一个指针变量?A. int *ptr;B. ptr int;C. int *ptr = 0;D. int ptr = 0;4. 以下哪个表达式的结果为真?A. 5 > 3B. 'A' == 65C. 10 % 3 == 1D. All of the above5. 在C语言中,以下哪个函数用于计算两个数的最大值?A. max()B. min()C. abs()D. pow()6. 以下哪个循环语句可以正确地实现从1到10的计数?A. for (int i = 10; i >= 1; i--)B. for (int i = 1; i <= 10; i++)C. while (int i = 1; i <= 10; i++)D. do { int i = 1; } while (i <= 10);7. 在C语言中,以下哪个关键字用于定义函数?A. ifB. elseC. functionD. void8. 以下哪个是C语言中正确的数组声明?A. int array[10] = {0};B. int array[] = {0, 1, 2, 3};C. int array[10] = 0;D. int array = {0, 1, 2, 3};9. 在C语言中,以下哪个操作符用于计算两个数的乘积?A. +B. -C. *D. /10. 以下哪个选项是C语言中的条件运算符?A. &&B. ||C. ? :D. ++二、填空题(每空2分,共20分)11. 在C语言中,`printf`函数用于______。

C语言考试题库及答案

C语言考试题库及答案

C语言考试题库及答案C语言理论上机考试选择题部分(共200题)1、下面程序的输出是___D______#include<stdio.h>void 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=0xbD) k=11,k=13,k=b2、在下列选项中,不正确的赋值语句是__D______.A) ++t; B) n1=(n2=(n3=0));C) k=i=j; D) a=b+c=1;3、下面合法的C语言字符常量是______A____. A) '\t' B) "A"C) 65 D) A4、表达式: 10!=9的值是________D____.A) true B) 非零值C) 0 D) 15、C语言提供的合法的数据类型关键字是_____B____.A) Double B) short C) integer D) Char6、字符(char)型数据在微机内存中的存储形式是__D__.A) 反码B) 补码C) EBCDIC码D) ASCII码7、C语言程序的基本单位是_____C______.A) 程序行B) 语句C) 函数D) 字符8、设int a=12,则执行完语句a+=a-=a*a后,a的值是____D____A) 552 B) 264 C) 144 D) -2649、执行下面程序中的输出语句后,输出结果是____B__.#include<stdio.h>void main(){int a;printf("%d\n",(a=3*5,a*4,a+5));}A) 65 B) 20 C) 15 D) 1010、下面程序的输出是____B______.#include<stdio.h>void main(){int x=023;printf("%d\n",--x);}A) 17 B) 18C) 23 D) 2411、下面程序的输出的是_____C____.#include<stdio.h>void main(){int x=10,y=3;printf("%d\n",y=x/y);}A) 0 B) 1 C)3 D) 不确定的值12、已知字母A的ASCII 码为十进制的65,下面程序的输出是______A_____.#include<stdio.h>void main(){char ch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}A) 67,D B) B,C C) C,D D) 不确定的值13、若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为____D__.A) a<>0 B) !a C) a=0 D) a14、以下程序的输出结果是____D_____.#include<stdio.h>void main(){ int x=10,y=10;printf("%d %d\n",x--,--y);}A) 10 10 B) 9 9 C) 9 10 D) 10 9 15、设有如下定义:int x=10,y=3,z;则语句printf("%d\n",z=(x%y,x/y));的输出结果是_____D_____.A) 1 B) 0 C) 4 D) 316、为表示关系x≥y≥z,应使用C语言表达式___A___.A) (x>=y)&&(y>=z)B) (x>=y)AND(y>=z)C) (x>=y>=z)D) (x>=y) & (y>=z)17、C语言中非空的基本数据类型包括____B____.A) 整型,实型,逻辑型B) 整型,实型,字符型C) 整型,字符型,逻辑型D) 整型,实型,逻辑型,字符型18、若x和y都是int型变量,x=100,y=200,且有下面的程序片段:printf("%d",(x,y)); 上面程序片段的输出结果是____A___.A) 200 B) 100 C) 100 200 D) 输出格式符不够,输出不确定的值19、阅读下面的程序#include<stdio.h>void main(){char ch;scanf("%3c",&ch);printf("%c",ch);}如果从键盘上输入abc<回车>则程序的运行结果是__A_____.A) a B) b C) c D) 程序语法出错20、阅读下面的程序#include<stdio.h>void main(){int i,j;i=010;j=9;printf("%d,%d",i-j,i+j);}则程序的运行结果是____D____.A) 1,19 B) -1,19 C) 1,17 D) -1,1721、阅读下面的程序#include<stdio.h>void main(){int i,j,m,n;i=8;j=10;m=++i;n=j++;printf("%d,%d,%d,%d",i,j,m,n);}程序的运行结果是______C____.A) 8,10,8,10 B) 9,11,8,10C) 9,11,9,10 D) 9,10,9,1122、已知a=12,则表达式a+=a-=a*=a的结果是_____A__.A) 0 B) 144C) 12 D) -26423、若已定义int a,则表达式a=10,a+10,a++的值是__B_.A) 20 B) 10 C) 21 D) 1124、阅读下面的程序#include<stdio.h>void main(){int i,j;scanf("%3d%2d",&i,&j);printf("i=%d,j=%d\n",i,j);}如果从键盘上输入1234567<回车>,则程序的运行结果是____D____.A) i=123,j=4567 B) i=1234,j=567C) i=1,j=2 D) i=123,j=4525、下面程序的输出结果是____D____.#include<stdio.h>void main(){int a=-1, b=4, k;k=(++a<=0)&&(b--<=0);printf("%d,%d,%d\n",k,a,b);}A) 1,1,2 B) 1,0,3 C) 0,1,2 D) 0,0,326、下面程序的输出结果是____A____.#include<stdio.h>void main(){int a=5,b=3;float x=3.14, y=6.5;printf("%d,%d\n",a+b!=a-b,x<=(y-=6.1));}A) 1,0 B) 0,1 C) 1,1 D) 0,027、执行下面程序段后,输出结果是____A____.int a;int b=65536;a=b;printf("%d\n",a);A) 65536 B) 0 C) -1 D) 128、若有以下定义和语句:int a=010, b=0x10, c=10;printf("%d,%d,%d\n",a,b, c);则输出结果是____B_____.A) 10,10,10 B) 8,16,10C) 8,10,10 D) 8,8,1029、已知有double型变量x=2.5,y=4.7,整型变量a=7, 则表达式x+a%3*(int)(x+y)%2/4 的值是_____B____.A) 2.4 B) 2.5 C) 2.75 D) 030、若已定义x和y是整型变量,x=2;,则表达式y=2.75+x/2的值是____C____.A) 5.5 B) 5 C) 3 D) 4.031、以下程序的输出结果是____D____.#include<stdio.h>void main(){int a=12, b=12;printf("%d,%d\n",--a,++b);}A) 10,10 B) 12,12 C) 11,10 D) 11,1332、设有以下语句:int x=10;x+=3+x%(3),则x的值是.____A_____A) 14 B) 15 C) 11 D) 1233、若d为double型变量,则表达式d=1,d+5,d++的值是_____D__.A) 1 B) 6.0 C) 2.0 D) 1.034、表达式5!=3的值是____D____.A) T B) 非零值C) 0 D) 135、若有定义int a=12,n=5,则表达式a%=(n%2)运算后,a的值______A____.A) 0 B) 1 C) 12 D) 636、若有定义int x=3,y=2和float a=2.5,b=3.5,则表达式:(x+y)%2+(int)a/(int)b的值是__D__.A) 0 B) 2C) 1.5 D) 137、在C语言中,以下叙述不正确的是_____A____.A) 在C程序中,无论是整数还是实数,都能被准确无误的表示B) 在C程序中,变量名代表存储器中的一个位置C) 静态变量的生存期与整个程序的生存期相同D) C语言中变量必须先定义后引用38、C语言中的变量名只能由字母,数字和下划线三种字符组成,且第一个字符____C____.A) 必须为字母B) 必须为下划线C) 必须为字母或下划线D) 可以是字母,数字或下划线中的任意一种39、设有说明:char w; int x; float y; double z; 则表达式: w*x+z-y值的数据类型是___D____.A) float B) char C) int D) double40、一个C语言的执行是从_____A______.A) 本程序的主函数开始,到本程序的主函数结束B) 本程序的第一个函数开始,到本程序的最后一个函数结束C) 本程序的主函数开始,到本程序的最后一个函数结束D) 本程序的第一个函数开始,到本程序的主函数结束41、设a为整型变量,不能正确表达数学关系10<a<15的C语言表达式是____A____.A) 10<a<15 B) a==11||a==12||a==13||a==14C) a>10&&a<15D) !(a<=10)&&!(a>=15)42、下列程序执行后的输出结果是_____C____.#include <stdio.h>void main( ){ int a=5,b=60,c;if (a<b){c=a*b;printf("%d*%d=% d\n",b,a,c);}else{c=b/a;printf("%d/%d=%d \n",b,a,c);}}A) 60/5=12 B) 300 C) 60*5=300 D) 1243、如果c为字符型变量,判断c是否为空格不能使用____A____.(假设已知空格ASCII码为32) A) if(c=='32') B) if(c==32)C) if(c=='\40') D) if(c==' ')44、运行下面程序时,若从键盘输入"3,5<CR>",则程序的输出结果是____D____. #include <stdio.h>void main( ){int x,y;scanf("%d,%d",&x,&y);if (x==y)printf("x==y");else if (x>y)printf("x>y");elseprintf("x<y");}A) 3<5 B) 5>3 C) x>y D) x<y45、运行下面程序时,若从键盘输入数据为"6,5,7<CR>",则输出结果是____C___.#include <stdio.h>void main( ){ int a,b,c;scanf("%d,%d,%d",&a,&b ,&c);if (a>b)if (a>c)printf("%d\n",a);elseprintf("%d\n",c);elseif (b>c)printf("%d\n",b);elseprintf("%d\n",c);}A) 5 B) 6 C) 7 D) 不定值46、执行下面程序时,若从键盘输入"2<CR>",则程序的运行结果是____A____.#include <stdio.h>void main( ){ int k; char cp;cp=getchar( );if (cp>='0' && cp<='9')k=cp-'0';else if (cp>='a' && cp<='f')k=cp-'a'+10;elsek=cp-'A'+10;printf("%d\n",k);}A) 2 B) 4 C) 1 D) 1047、运行下面程序时,从键盘输入"2.0<CR>",则输出结果是___B_____.#include <stdio.h>void main( ){ float a,b;scanf("%f",&a);if (a<0.0) b=0.0;else if ((a<0.5) && (a!=2.0)) b=1.0/(a+2.0);else if (a<10.0) b=1.0/2;elseb=10.0;printf("%f\n",b);}A) 0.000000 B)0.500000C) 1.000000 D)0.25000048、执行下面程序后,运行结果是____A____.#include <stdio.h>void main( ){ int x=41,y=1;if (x%3==0 && x%7==0){ y+=x;printf("y=%d\n",y); }else{y=x;printf("y=%d",y);}}A) y=41 B) y=43 C) y=42 D) y=149、运行下面程序时,从键盘输入"12,34,9<CR>",则输出结果是___A___.#include <stdio.h>void main( ){ int x,y,z;scanf("%d,%d,%d",&x,&y ,&z);if (x<y)if(y<z)printf("%d\n",z);elseprintf("%d\n",y);else if (x<z)printf("%d\n",z);elseprintf("%d\n",x);}A) 34 B) 12 C)9 D) 不确定的值50、运行下面程序时,从键盘输入字母H,则输出结果是_____C___.#include <stdio.h>void main( ){ char ch;ch=getchar( );switch(ch){ case 'H':printf("Hello!\n");case'G':printf("Good morning!\n");default:printf("Bye_Bye!\n ");}}A) Hello!B) Hello!Good Morning!C) Hello!D) Hello!Good morning!Bye_Bye!Bye_Bye!51、执行下列程序段后的输出结果是_____A____.int x=1,y=1,z=1;x+=y+=z;printf("%d\n",x<y?y:x); A) 3 B) 2 C) 1 D) 452、设ch是char型变量,值为'A',则表达式ch=(ch>='A' && ch<='Z')?ch+32:ch的值是__B___.A) Z B) a C) z D) A53、下面程序的输出结果是____C____.#include <stdio.h>void main( ){ int x=8,y=-7,z=9;if (x<y)if (y<0) z=0;else z-=1;printf("%d\n",z);}A) 8 B) 1 C) 9 D) 054、运行下面程序时,若从键盘输入"5 <CR>",则程序的输出结果是_____B___.#include <stdio.h>void main( ){ int a ;scanf("%d",&a);if(a++>5)printf("%d\n",a);elseprintf("%d\n",a--) ;}A) 7 B) 6 C) 5 D) 455、运行下面程序时,若从键盘输入"3,4 <CR>",则程序的输出结果是____B___.#include <stdio.h>void main( ){ int a,b,s;scanf("%d,%d",&a,&b);s=a;if (s<b) s=b;s=s*s;printf("%d\n",s) ;}A) 14 B) 16 C) 18 D) 2056、下列程序的执行结果是_____D____.#include <stdio.h>void main( ){ int x=0,y=1,z=0;if (x=z=y)x=3;printf("%d,%d\n",x,z);}A) 3,0 B) 0,0C) 0,1 D) 3,157、假定等级和分数有以下对应关系:等级:A 分数:85~100等级:B 分数:60~84等级:C 分数:60 以下对于等级grade输出相应的分数区间,能够完成该功能的程序段是____D____. A) switch (grade){case'A':printf("85--100\n");case'B':printf("60--84\n");case 'C':printf("60以下\n");default:printf("等级错误!\n");}B) switch (grade){case'A':printf("85--100\n");bre ak;case'B':printf("60--84\n");case 'C':printf("60以下\n");default:printf(" 等级错误!\n");}C) switch (grade){case'A':printf("85--100\n");bre ak;case'B':printf("60--84\n");brea k;case 'C':printf("60以下\n");default:printf("等级错误!\n");}D) switch (grade){case'A':printf("85--100\n");bre ak;case'B':printf("60--84\n");brea k;case 'C':printf("60以下\n");break;default:printf("等级错误!\n");}58、能够完成如下函数计算的程序段是__B____.┌-1 x<0y= ┤0 x=0└ 1 x>0A) y=1; B) if (x>=0)if(x!=0)if(x>0) y=1;if(x>0) y=1; else y=0;else y=0; else y=-1;C) y=0; D) y=-1;if (x>=0) if (x>0) y=1;if (x>0) y=1; else y=0;else y=-1;59、有如下程序#include <stdio.h>void main( ){ float x=5.0,y;if(x<0.0) y=0.0;else if (x<10.0) y=1.0/x;else y=1.0;printf("%f\n",y);}该程序的输出结果是____C_____.A) 0.000000 B) 0.50000C) 0.200000 D)1.00000060、以下程序的执行结果是___B_____.#include <stdio.h>void main( ){ int x=1,y=0;switch (x){case 1:switch (y){case0:printf("first\n");break;case1:printf("second\n");break;}case2:printf("third\n");}}A) first B) firstsecondthirdC) first D) secondthird61、以下程序的执行结果是____A____.#include <stdio.h>void main( ){ int a,b,c,d,x;a=c=0;b=1;d=20;if (a) d=d-10;else if(!b)if (!c) x=15;else x=25;printf("d=%d\n",d); }A) d=20 B) d=10 C) d=15 D) 2562、有如下程序:#include <stdio.h>void main( ){ int a=2,b=-1,c=2;if (a<b)if (b<0) c=0;else c++;printf("%d\n",c);} 该程序的输出结果是___C_____.A) 0 B) 1 C) 2 D) 363、下列程序执行后的输出结果是____B____.#include <stdio.h>void main( ){ int x,y=1,z;if ((z=y)<0) x=4;else if (y==0) x=5;else x=6;printf("%d,%d\n",x,y);}A) 4,1 B) 6,1 C) 5,0 D) 出错信息64、有如下程序#include <stdio.h>void main( ){ int x=1,a=0,b=0;switch(x){case 0: b++;case 1: a++;case 2: a++;b++;}printf("a=%d,b=%d\n",a,b );}该程序的输出结果是______A____.A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=265、下面程序的输出结果是____C_____.#include <stdio.h>void main( ){ int a=-1,b=1,k;if ((++a<0) && (b--<=0))printf("%d %d\n",a,b);else printf("%d %d\n",b,a);}A) -1 1 B) 0 1C) 1 0 D) 0 066、假定w、x、y、z、m均为int型变量,有如下程序段:w=1;x=2;y=3;z=4;m=(w<x)?w:x;m=(m<y)?m:y;m=(m<z)?m:z;则该程序段执行后,m的值是____D_____.A) 4 B) 3 C) 2 D) 167、以下程序的输出结果是___D______.main( ){ int a=100;if (a>100) printf("%d\n",a>100);elseprintf("%d\n",a<=100);}A) a<=100 B) 100 C) 0 D) 168、若执行下面的程序从键盘上输入9,则输出结果是.______B________#include <stdio.h>void main( ){int n;scanf("%d",&n);if (n++<10) printf("%d\n",n);elseprintf("%d\n",n--);}A) 11 B) 10 C) 9 D) 869、以下程序输出结果是_____D_____.#include <stdio.h>void main( ){ int m=4;if (++m>5) printf("%d\n",m--);elseprintf("%d\n",--m);}A) 7 B) 6 C) 5 D) 470、若执行下面的程序从键盘上输入5,则输出结果是. #include <stdio.h>void main( ){int x;scanf("%d",&x);if (x++>5) printf("%d\n",x);else printf("%d\n",x--); }A) 7 B) 6 C) 5 D) 471、以下程序段运行结果是____A____.int x=1,y=1,z=-1;x+=y+=z;printf("%d\n",x<y?y:x);A) 1 B) 2 C)4 D) 不确定的值72、有以下程序#include <stdio.h>void main( ){ int a,b,c=246;a=c/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,b);}输出结果是____A____.A) 2,1 B) 3,2 C) 4,3 D) 2,-173、运行下面程序时,若从键盘输入数据为"123",则输出结果是___C____.#include "stdio.h"void main(){ int num,i,j,k,place;scanf("%d",&num);if (num>99)place=3;else if(num>9)place=2;elseplace=1;i=num/100;j=(num-i*100)/10;k=(num-i*100-j*10);switch (place){ case 3: printf("%d%d%d\n",k,j,i);break;case 2: printf("%d%d\n",k,j);break;case 1: printf("%d\n",k);}}A) 123 B) 1,2,3 C) 321 D) 3,2,174、执行下列程序后的输出结果是___D____.#include <stdio.h>void main( ){ int k=4,a=3,b=2,c=1;printf("%d\n",k<a?k:c<b?c :a);}A) 4 B) 3 C) 2 D) 175、以下条件表达式中能完全等价于条件表达式x的是____B___.A) (x==0) B) (x!=0) C) (x==1) D) (x!=1)76、若运行下面程序时,给变量a输入15,则输出结果是___A___.#include <stdio.h>void main( ){ int a,b;scanf("%d",&a);b=a>15?a+10:a-10;printf("%d\n",b) ;}A) 5 B) 25 C) 15 D) 1077、运行下面程序后,输出是___D___.#include <stdio.h>void main( ){ int k=-3;if (k<=0) printf("****\n");elseprintf("####\n")}A) ####B) ****C) ####****D) 有语法错误不能通过编译78、执行下面程序的输出结果是____C____.#include <stdio.h>void main( ){ int a=5,b=0,c=0;if (a=a+b) printf("****\n");elseprintf("####\n");}A) 有语法错误不能编译B) 能通过编译,但不能通过连接C) 输出****D) 输出####79、为了避免嵌套的if-else 语句的二义性,C语言规定else总是与___C___组成配对关系.A) 缩排位置相同的ifB) 在其之前未配对的ifC) 在其之前尚未配对的最近的ifD) 同一行上的if 80、设x 、y 、z 、t均为int型变量,则执行以下语句后,t的值为____C_____.x=y=z=1;t=++x || ++y && ++z;A) 不定值B) 4 C) 1 D) 081、以下程序段____C______.x=-1;do{x=x*x;} while (!x);A)是死循环B)循环执行两次C)循环执行一次D)有语法错误82、对下面程序段描述正确的是___B____.int x=0,s=0;while (!x!=0) s+=++x;printf("%d",s);A) 运行程序段后输出0B) 运行程序段后输出1C) 程序段中的控制表达式是非法的D) 程序段循环无数次83、下面程序段的输出结果是____C____.x=3;do { y=x--;if (!y) {printf("*");continue;}printf("#");} while(x=2); A) ## B) ##* C) 死循环D)输出错误信息84、下面程序的运行结果是____B____.#include<stdio.h>void main( ){ int a=1,b=10;do{ b-=a;a++;} while(b--<0);printf("%d,%d\n",a,b);}A) 3,11 B) 2,8 C) 1,-1 D) 4,985、下面程序段的运行结果是____B______.int n=0;while (n++<=2)printf("%d",n); A) 012 B) 123 C) 234 D) 错误信息86、下面程序段的运行结果是___D_____.int x=0,y=0;while (x<15) y++,x+=++y;printf("%d,%d",y,x);A) 20,7 B) 6,12C) 20,8 D)8,2087、下面程序的运行结果是___B_____.#include<stdio.h>void main(){ int s=0,i=1;while (s<=10){ s=s+i*i;i++;}printf("%d",--i);}A) 4 B) 3 C) 5 D) 688、函数pi的功能是根据以下近似公式求π值:____C______(π*π)/6=1+1/(2*2)+1/(3*3)+. .+1/(n*n)请填空,完成求π的功能。

c语言试题库及答案详解

c语言试题库及答案详解

c语言试题库及答案详解1. 选择题- 1.1 以下哪个选项是C语言中的关键字?- A. int- B. INT- C. Integer- D. integer- 答案:A- 1.2 在C语言中,以下哪个函数用于计算字符串的长度?- A. strlen()- B. length()- C. size()- D. count()- 答案:A2. 填空题- 2.1 定义一个整型变量的正确语句是:________- 答案:int variable;- 2.2 C语言中,用于声明一个浮点型数组的语句是:float array[10]; 其中,数组的元素个数是________- 答案:103. 简答题- 3.1 简述C语言中指针的概念。

- 答案:指针是C语言中的一种数据类型,它存储了变量的内存地址。

通过指针,程序可以间接访问和操作变量。

- 3.2 描述C语言中数组和指针的关系。

- 答案:在C语言中,数组名可以作为指向数组第一个元素的指针使用。

数组的每个元素可以通过指针加偏移量的方式访问。

4. 编程题- 4.1 编写一个C语言程序,实现计算两个整数的和。

- 答案:```c#include <stdio.h>int main() {int num1, num2, sum;printf("Enter two numbers: ");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("Sum of the numbers is: %d\n", sum);return 0;}```- 4.2 编写一个C语言函数,实现字符串反转。

- 答案:```cvoid 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;}}```5. 判断题- 5.1 C语言中,所有变量必须在函数的开始处声明。

C语言题库及答案(选择题)

C语言题库及答案(选择题)

C语言题库(选择题)1.C语言源程序的基本单位是()。

A.过程B.函数C.子程序D.标识符2.下列字符序列中,可用作C标识符的一组字符序列是()。

A. S.b,sum,average,_aboveB. class,day,lotus_1,2dayC. #md,&12x,month,student_n!D. D56,r_1_2,name,_st_13.以下标识符中,不能作为合法的C用户定义标识符的是()。

A.a3_b3B.voidC._123D.IF4.以下数据中,不正确的数值或字符常量是()。

A.0B.5LC.o13D.98615.以下数值中,不正确的八进制数或十六进制数是()。

A.0x16B.16C.-16D.0xaaaa6.以下的选择中,正确的赋值语句是()。

A.a=1,b=2B.j++C.a=b=5;D.y=int(x)7.以下运算符中,优先级最高的运算符是()。

A.?:B.++C.&&D.,8.在C语言中,能代表逻辑值“真”的是()。

A.TRUEB.大于0的数C.非0整数D.非0的数9.下列变量说明语句中,正确的是()。

A.char:a b c;B.char a;b;c;C.int x;z;D.int x,z;10.下列字符序列中,不可用作C语言标识符的是()。

A.b70B.#abC.symbolD.a_111.以下不正确的叙述是()。

A.在C程序中所用的变量必须先定义后使用。

B.程序中,APH和aph是两个不同的变量。

C.若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变。

D.当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值。

12.以下标识符中,不能作为合法的C用户定义标识符的是()。

A.ForB.PrintfC.WORDD.sizeof13.以下标识符中,不能作为合法的C用户定义标识符的是()。

A.answerB.toC.signedD._if14.以下标识符中,不能作为合法的C用户定义标识符的是()。

(完整版)C语言考试题库及答案

(完整版)C语言考试题库及答案

(完整版)C语言考试题库及答案一、选择题1. 以下哪个选项是C语言的合法标识符?A. intB. 2abcC. voidD. a+b答案:C2. 在C语言中,下列哪个选项是正确的数据类型?A. floatB. integerC. doubleD. All of the above答案:D3. 若变量定义如下:int a = 5;,则执行语句printf("%d", a++); 后,a的值是多少?A. 4B. 5C. 6D. 无法确定答案:C4. 以下哪个函数用于动态分配内存?A. malloc()B. alloc()C. new()D. calloc()答案:A5. 在C语言中,哪个运算符用于取模(取余)?A. %B. /C. &D. |答案:A以下是判断题部分:6. C语言中的数组名可以作为指向该数组首元素的指针使用。

()答案:正确7. 在C语言中,结构体变量可以作为函数的参数传递。

()答案:正确8. 在C语言中,静态存储类别的变量在程序运行期间始终占据内存空间。

()答案:正确二、填空题9. 在C语言中,定义一个整型变量需要使用关键字______。

答案:int10. 若变量定义如下:int a = 10;,则执行语句printf("%d", a--); 后,a的值是______。

答案:911. 在C语言中,用于动态分配内存的函数是______。

答案:malloc12. 在C语言中,用于释放动态分配的内存的函数是______。

答案:free13. 在C语言中,用于清空标准输入缓冲区的函数是______。

答案:getchar()三、编程题14. 编写一个C语言程序,实现以下功能:输入一个整数,输出它的阶乘。

答案:```c#include <stdio.h>int main() {int n, i;long factorial = 1;printf("Enter an integer: ");scanf("%d", &n);if (n < 0) {printf("Factorial of a negative number doesn't exist.\n");} else {for (i = 1; i <= n; i++) {factorial = i;}printf("Factorial of %d is %ld\n", n, factorial);}return 0;}```15. 编写一个C语言程序,实现以下功能:输入一个字符串,判断它是否是回文(正读和反读都一样的字符串)。

c语言考试题及答案解析免费

c语言考试题及答案解析免费

c语言考试题及答案解析免费一、选择题1. 下列关于C语言中变量的描述,错误的是()。

A. 变量必须先声明后使用B. 变量的类型可以是整型、浮点型、字符型等C. 变量的命名只能使用字母D. 变量的命名可以包含下划线答案:C解析:C语言中变量的命名可以包含字母、数字和下划线,但数字不能作为变量名的开头。

2. 在C语言中,哪个关键字用于定义一个函数?()A. defineB. functionC. defD. int答案:D解析:在C语言中,定义函数时通常使用int关键字,表示函数的返回类型。

例如:int functionName()。

二、填空题1. 在C语言中,表示逻辑“与”的运算符是______。

答案:&&解析:在C语言中,逻辑“与”运算符是&&,用于比较两个表达式是否都为真。

2. C语言中,用于定义一个整型数组的语句是______。

答案:int arrayName[arraySize];解析:在C语言中,定义一个整型数组需要指定数组的名称和大小,例如:int arrayName[10];。

三、编程题1. 编写一个C语言程序,计算并输出1到100的和。

答案:```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {sum += i;}printf("The sum of numbers from 1 to 100 is: %d\n", sum); return 0;}```解析:该程序使用for循环遍历1到100的整数,并将它们累加到变量sum中,最后输出累加的结果。

2. 编写一个C语言程序,实现输入一个字符串,然后输出该字符串的逆序。

答案:```c#include <stdio.h>#include <string.h>int main() {char str[100];printf("Enter a string: ");scanf("%s", str);int length = strlen(str);for (int i = length - 1; i >= 0; i--) {printf("%c", str[i]);}printf("\n");return 0;}```解析:该程序首先读取用户输入的字符串,并存储在字符数组str中。

C语言试题及答案

C语言试题及答案

C语言试题及答案一、选择题1. C语言中,下列哪个选项是合法的数据类型?A) intB) floatC) characterD) all of the above答案:D2. 在C语言中,下面哪个选项不是合法的变量名?A) sumB) total$C) _valueD) value1答案:B3. 下面哪个选项是C语言中的逻辑运算符?A) &&B) ||C) <<D) All of the above答案:A和B4. 如果一个整型变量声明为int a = 5;,那么执行语句a += a--;后,a的值是多少?A) 5B) 10C) 0D) 1答案:C5. 在C语言中,下面哪个函数用于动态分配内存?A) malloc()B) alloc()C) new()D) calloc()答案:A和D二、填空题1. 在C语言中,用于声明一个整型变量的关键字是______。

答案:int2. 下面代码的输出是什么?```cint a = 5, b = 3;printf("%d", a % b);```答案:23. 下面代码的输出是什么?```cint a = 5;printf("%d", ++a + a++);```答案:114. 在C语言中,用于结束字符串的字符是______。

答案:'\0'5. 如果一个函数需要返回多个值,可以使用______来实现。

答案:结构体三、编程题1. 编写一个C程序,实现一个函数,该函数接收一个整数数组和一个整数n,返回数组中第n大的元素。

答案:```c#include <stdio.h>int nthLargest(int arr[], int n, int size) {int i, max, index;for (i = 0; i < n; i++) {max = arr[0];index = 0;for (int j = 1; j < size - i; j++) {if (arr[j] > max) {max = arr[j];index = j;}}arr[index] = arr[size - i - 1];arr[size - i - 1] = max;}return arr[size - n];}int main() {int arr[] = {12, 35, 1, 10, 34, 1};int n = 3;int size = sizeof(arr) / sizeof(arr[0]);printf("The %d-th largest element is %d\n", n, nthLargest(arr, n, size));return 0;}```2. 编写一个C程序,实现一个函数,该函数接收一个字符串,并判断它是否为回文。

c语言选择题考试题库及答案

c语言选择题考试题库及答案

c语言选择题考试题库及答案一、单项选择题1. C语言中,用于定义变量的关键字是()。

A. varB. defineC. intD. void答案:C2. 下列哪个选项是C语言中的合法标识符?()A. 2variableB. variable2C. variable-2D. variable$2答案:B3. C语言中,用于表示逻辑“与”操作的运算符是()。

A. &&B. ||C. !D. &答案:A4. C语言中,用于表示逻辑“或”操作的运算符是()。

A. &&B. ||C. !D. &答案:B5. C语言中,用于表示逻辑“非”操作的运算符是()。

A. &&C. !D. &答案:C6. C语言中,用于表示“等于”关系的运算符是()。

A. ==B. =C. !=D. <=答案:A7. C语言中,用于表示“不等于”关系的运算符是()。

A. ==B. =C. !=答案:C8. C语言中,用于表示“小于等于”关系的运算符是()。

A. ==B. =C. <=D. >=答案:C9. C语言中,用于表示“大于等于”关系的运算符是()。

A. ==B. =C. <=D. >=答案:D10. C语言中,用于表示“取模”操作的运算符是()。

A. %B. /C. *D. -答案:A11. C语言中,用于表示“整除”操作的运算符是()。

A. %B. /C. *D. -答案:B12. C语言中,用于表示“乘法”操作的运算符是()。

A. %C. *D. -答案:C13. C语言中,用于表示“加法”操作的运算符是()。

A. +B. -C. *D. /答案:A14. C语言中,用于表示“减法”操作的运算符是()。

A. +B. -C. *答案:B15. C语言中,用于表示“左移”操作的运算符是()。

A. <<B. >>C. <=D. >=答案:A16. C语言中,用于表示“右移”操作的运算符是()。

C语言考试题库及答案

C语言考试题库及答案

C语言考试题库及答案一、选择题1. C语言中,以下哪个选项是合法的数据类型?A. intB. floatC. charD. All of the above答案:D2. 在C语言中,哪个关键字用于定义整型变量?A. floatB. doubleC. intD. char答案:C3. 下面哪个选项不是C语言的逻辑运算符?A. &&B. ||C. !D. ++答案:D4. 在C语言中,哪个函数用于动态分配内存?A. malloc()B. alloc()C. new()D. calloc()答案:A5. 在C语言中,哪个关键字用于定义结构体?A. structB. unionC. enumD. class答案:A二、填空题6. 在C语言中,用于声明函数原型的是______。

答案:函数原型7. 在C语言中,用于输入输出函数的是______。

答案:stdio.h8. 在C语言中,用于定义常量的是______。

答案:#define 或 const9. 在C语言中,用于定义指针的是______。

答案:(星号)10. 在C语言中,用于终止当前循环的是______。

答案:break三、判断题11. C语言中的数组下标是从1开始的。

()答案:错误12. 在C语言中,switch语句可以替代if-else语句。

()答案:正确13. 在C语言中,所有的变量在使用前必须声明。

()答案:正确14. C语言中的结构体是一种用户自定义的数据类型。

()答案:正确15. 在C语言中,函数的返回值类型不能是数组。

()答案:正确四、编程题16. 编写一个C程序,输出1到100之间所有的偶数。

```c#include <stdio.h>int main() {int i;for (i = 1; i <= 100; i++) {if (i % 2 == 0) {printf("%d\n", i);}}return 0;}```17. 编写一个C程序,计算并输出斐波那契数列的前10项。

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

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

c语言期末考试题库及详解答案选择题1. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. variable-2D. variable$2答案:B2. 在C语言中,以下哪个是正确的字符串字面量?A. "Hello, World"B. 'Hello, World'C. "Hello, World"D. 'Hello, World'答案:A3. C语言中,以下哪个数据类型用于存储单个字符?A. intB. charC. floatD. double答案:B4. 以下哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A5. 在C语言中,以下哪个关键字用于声明一个函数?A. classB. functionC. voidD. int答案:C6. 如果一个变量被声明为static int,那么这个变量的生命周期是什么?A. 只在函数调用期间存在B. 程序结束时销毁C. 只在编译时存在D. 程序整个运行期间都存在答案:D7. 在C语言中,以下哪个选项是正确的二维数组声明?A. int array[2][];B. int array[][2];C. int array[2][2];D. int array[][];答案:C8. 以下哪个选项是C语言中的逻辑运算符?A. &&B. ||C. !D. 所有选项答案:D9. 在C语言中,哪个函数用于计算数组的长度?A. strlenB. sizeC. lengthD. sizeof答案:D10. 下列哪个选项是C语言中的条件语句?A. ifB. switchC. whileD. for答案:A。

c语言考试题库及答案选择题

c语言考试题库及答案选择题

c语言考试题库及答案选择题1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 以下哪个选项是C语言中的合法整型常量?A. 0x1AB. 0b1010C. 0.1D. 1e2答案:A3. 若有以下代码段:```cint a = 10, b = 20;a = a + b;```执行后,变量a的值是多少?A. 10B. 20C. 30D. 40答案:C4. 在C语言中,哪个函数用于计算并返回字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A5. 下列哪个选项是C语言中的合法浮点数?A. 3.14B. .14C. 3e-10D. 1.2E答案:C6. 在C语言中,以下哪个运算符用于取模运算?A. %B. /C. //D. %答案:A7. 以下哪个选项是C语言中的正确单行注释?A. /* 这是注释 */B. // 这是注释C. # 这是注释D. $ 这是注释答案:B8. 在C语言中,以下哪个关键字用于声明一个函数?A. functionB. defC. declareD. void答案:D9. 若有以下代码段:```cint x = 5;printf("%d", x++);```执行后,控制台上显示的值是多少?A. 4B. 5C. 6D. 0答案:B10. 在C语言中,以下哪个选项是正确的二维数组声明?A. int array[3][2];B. int array[3,2];C. int array[3] = {1, 2, 3};D. int array[][] = {1, 2, 3};答案:A。

C语言考试题库与答案

C语言考试题库与答案

C语言理论上机考试选择题部分(共200题)1、下面程序的输出是___D______#include<stdio.h>void 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=13 C) k=11,k=013,k=0xb D) k=11,k=13,k=b2、在以下选项中,不正确的赋值语句是__D______.A) ++t; B) n1=(n2=(n3=0));C) k=i=j; D) a=b+c=1;3、下面合法的C语言字符常量是______A____.A) '\t' B) "A" C) 65 D) A4、表达式: 10!=9的值是________D____.A) true B) 非零值 C) 0 D) 15、C语言提供的合法的数据类型关键字是_____B____.A) Double B) short C) integer D) Char6、字符(char)型数据在微机存中的存储形式是__D__.A) 反码 B) 补码 C) EBCDIC码 D) ASCII码7、C语言程序的基本单位是_____C______.A) 程序行 B) 语句 C) 函数 D) 字符8、设 int a=12,则执行完语句a+=a-=a*a后,a的值是____D____A) 552 B) 264 C) 144 D) -2649、执行下面程序中的输出语句后,输出结果是____B__.#include<stdio.h>void main(){int a;printf("%d\n",(a=3*5,a*4,a+5));}A) 65 B) 20 C) 15 D) 1010、下面程序的输出是____B______.#include<stdio.h>void main(){int x=023;printf("%d\n",--x);}A) 17 B) 18 C) 23 D) 2411、下面程序的输出的是_____C____.#include<stdio.h>void main(){int x=10,y=3;printf("%d\n",y=x/y);}A) 0 B) 1 C) 3 D) 不确定的值12、已知字母A的ASCII码为十进制的65,下面程序的输出是______A_____.#include<stdio.h>void main(){char ch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}A) 67,D B) B,C C) C,D D) 不确定的值13、若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为____D__.A) a<>0 B) !a C) a=0 D) a14、以下程序的输出结果是____D_____.#include<stdio.h>void main(){ int x=10,y=10;printf("%d %d\n",x--,--y);}A) 10 10 B) 9 9 C) 9 10 D) 10915、设有如下定义:int x=10,y=3,z;则语句printf("%d\n",z=(x%y,x/y));的输出结果是_____D_____.A) 1 B) 0 C) 4 D) 316、为表示关系x≥y≥z,应使用C语言表达式___A___.1 / 34A) (x>=y)&&(y>=z) B) (x>=y)AND(y>=z) C) (x>=y>=z) D) (x>=y) & (y>=z)17、C语言中非空的基本数据类型包括____B____.A) 整型,实型,逻辑型 B) 整型,实型,字符型C) 整型,字符型,逻辑型D) 整型,实型,逻辑型,字符型18、若x和y都是int型变量,x=100,y=200,且有下面的程序片段:printf("%d",(x,y));上面程序片段的输出结果是____A___.A) 200 B) 100C) 100 200 D) 输出格式符不够,输出不确定的值19、阅读下面的程序#include<stdio.h>void main(){char ch;scanf("%3c",&ch);printf("%c",ch);}如果从键盘上输入abc<回车>则程序的运行结果是__A_____.A) a B) b C) c D) 程序语法出错20、阅读下面的程序#include<stdio.h>void main(){int i,j;i=010;j=9;printf("%d,%d",i-j,i+j);}则程序的运行结果是____D____.A) 1,19 B) -1,19C) 1,17 D) -1,1721、阅读下面的程序#include<stdio.h>void main(){int i,j,m,n;i=8;j=10;m=++i;n=j++;printf("%d,%d,%d,%d",i,j,m,n);}程序的运行结果是______C____.A) 8,10,8,10 B) 9,11,8,10C) 9,11,9,10 D) 9,10,9,1122、已知a=12,则表达式a+=a-=a*=a的结果是_____A__.A) 0 B) 144 C) 12 D) -26423、若已定义int a,则表达式a=10,a+10,a++的值是__B_.A) 20 B) 10 C) 21 D) 1124、阅读下面的程序#include<stdio.h>void main(){int i,j;scanf("%3d%2d",&i,&j);printf("i=%d,j=%d\n",i,j);}如果从键盘上输入1234567<回车>,则程序的运行结果是____D____.A) i=123,j=4567 B) i=1234,j=567C) i=1,j=2 D) i=123,j=4525、下面程序的输出结果是____D____.#include<stdio.h>void main(){int a=-1, b=4, k;k=(++a<=0)&&(b--<=0);printf("%d,%d,%d\n",k,a,b);}A) 1,1,2 B) 1,0,3C) 0,1,2 D) 0,0,326、下面程序的输出结果是____A____.#include<stdio.h>void main(){int a=5,b=3;float x=3.14, y=6.5;printf("%d,%d\n",a+b!=a-b,x<=(y-=6.1));}A) 1,0 B) 0,1C) 1,1 D) 0,027、执行下面程序段后,输出结果是____A____.int a;2 / 34int b=65536;a=b;printf("%d\n",a);A) 65536 B) 0 C) -1 D) 128、若有以下定义和语句:int a=010, b=0x10, c=10;printf("%d,%d,%d\n",a,b,c);则输出结果是____B_____.A) 10,10,10 B) 8,16,10 C) 8,10,10 D) 8,8,1029、已知有double型变量x=2.5,y=4.7,整型变量a=7, 则表达式x+a%3*(int)(x+y)%2/4 的值是_____B____.A) 2.4 B) 2.5 C) 2.75 D) 030、若已定义x和y是整型变量,x=2;,则表达式y=2.75+x/2的值是____C____.A) 5.5 B) 5 C) 3 D) 4.031、以下程序的输出结果是____D____.#include<stdio.h>void main(){int a=12, b=12;printf("%d,%d\n",--a,++b);}A) 10,10 B) 12,12C) 11,10 D) 11,1332、设有以下语句:int x=10;x+=3+x%(3),则x的值是.____A_____A) 14 B) 15 C) 11 D) 1233、若d为double型变量,则表达式d=1,d+5,d++的值是_____D__.A) 1 B) 6.0 C) 2.0 D) 1.034、表达式5!=3的值是____D____.A) T B) 非零值 C) 0 D) 135、若有定义int a=12,n=5,则表达式a%=(n%2)运算后,a的值______A____.A) 0 B) 1 C) 12 D) 636、若有定义int x=3,y=2和float a=2.5,b=3.5,则表达式:(x+y)%2+(int)a/(int)b的值是__D__.A) 0 B) 2 C) 1.5 D) 137、在C语言中,以下表达不正确的是_____A____.A) 在C程序中,无论是整数还是实数,都能被准确无误的表示B) 在C程序中,变量名代表存储器中的一个位置C) 静态变量的生存期与整个程序的生存期相同D) C语言中变量必须先定义后引用38、C语言中的变量名只能由字母,数字和下划线三种字符组成,且第一个字符____C____.A) 必须为字母B) 必须为下划线C) 必须为字母或下划线D) 可以是字母,数字或下划线中的任意一种39、设有说明:char w; int x; float y; double z; 则表达式: w*x+z-y值的数据类型是___D____.A) float B) char C) int D)double40、一个C语言的执行是从_____A______.A) 本程序的主函数开始,到本程序的主函数完毕B) 本程序的第一个函数开始,到本程序的最后一个函数完毕C) 本程序的主函数开始,到本程序的最后一个函数完毕D) 本程序的第一个函数开始,到本程序的主函数完毕41、设a为整型变量,不能正确表达数学关系10<a<15的C语言表达式是____A____.A) 10<a<15 B)a==11||a==12||a==13||a==14C) a>10&&a<15 D) !(a<=10)&&!(a>=15)42、以下程序执行后的输出结果是_____C____.#include <stdio.h>void main( ){ int a=5,b=60,c;if (a<b){c=a*b;printf("%d*%d=%d\n",b,a,c);}else{c=b/a;printf("%d/%d=%d\n",b,a,c);}}A) 60/5=12 B) 300 C) 60*5=300 D) 1243、如果c为字符型变量,判断c是否为空格不能使用____A____.(假设已知空格ASCII码为32)A) if(c=='32') B) if(c==32)C) if(c=='\40') D) if(c==' ')3 / 3444、运行下面程序时,若从键盘输入"3,5<CR>",则程序的输出结果是____D____.#include <stdio.h>void main( ){int x,y;scanf("%d,%d",&x,&y);if (x==y)printf("x==y");else if (x>y)printf("x>y");elseprintf("x<y");}A) 3<5 B) 5>3 C) x>y D) x<y45、运行下面程序时,若从键盘输入数据为"6,5,7<CR>",则输出结果是____C___.#include <stdio.h>void main( ){ int a,b,c;scanf("%d,%d,%d",&a,&b,&c);if (a>b)if (a>c)printf("%d\n",a);elseprintf("%d\n",c);elseif (b>c)printf("%d\n",b);elseprintf("%d\n",c);}A) 5 B) 6 C) 7 D) 不定值46、执行下面程序时,若从键盘输入"2<CR>",则程序的运行结果是____A____.#include <stdio.h>void main( ){ int k; char cp;cp=getchar( );if (cp>='0' && cp<='9')k=cp-'0';else if (cp>='a' && cp<='f')k=cp-'a'+10;else k=cp-'A'+10;printf("%d\n",k);}A) 2 B) 4 C) 1 D) 1047、运行下面程序时,从键盘输入"2.0<CR>",则输出结果是___B_____.#include <stdio.h>void main( ){ float a,b;scanf("%f",&a);if (a<0.0) b=0.0;else if ((a<0.5) && (a!=2.0))b=1.0/(a+2.0);else if (a<10.0) b=1.0/2;else b=10.0;printf("%f\n",b);}A) 0.000000 B) 0.500000C) 1.000000 D) 0.25000048、执行下面程序后,运行结果是____A____.#include <stdio.h>void main( ){ int x=41,y=1;if (x%3==0 && x%7==0){ y+=x;printf("y=%d\n",y);}else{y=x;printf("y=%d",y);}}A) y=41 B) y=43 C) y=42 D) y=149、运行下面程序时,从键盘输入"12,34,9<CR>",则输出结果是___A___.#include <stdio.h>void main( ){ int x,y,z;scanf("%d,%d,%d",&x,&y,&z);if (x<y)if (y<z)printf("%d\n",z);else printf("%d\n",y);else if (x<z)printf("%d\n",z);else printf("%d\n",x);}A) 34 B) 12 C) 9 D) 不确定的值50、运行下面程序时,从键盘输入字母H,则输出结果是_____C___.#include <stdio.h>void main( ){ char ch;ch=getchar( );switch(ch)4 / 34{ case 'H':printf("Hello!\n");case 'G':printf("Good morning!\n");default:printf("Bye_Bye!\n");}}A) Hello! B) Hello!Good Morning!C) Hello! D) Hello!Goodmorning! Bye_Bye!Bye_Bye!51、执行以下程序段后的输出结果是_____A____.int x=1,y=1,z=1;x+=y+=z;printf("%d\n",x<y?y:x);A) 3 B) 2 C) 1 D) 452、设ch是char型变量,值为'A',则表达式ch=(ch>='A' && ch<='Z')?ch+32:ch的值是__B___.A) Z B) a C) z D) A53、下面程序的输出结果是____C____.#include <stdio.h>void main( ){ int x=8,y=-7,z=9;if (x<y)if (y<0) z=0;else z-=1;printf("%d\n",z);}A) 8 B) 1 C) 9 D) 054、运行下面程序时,若从键盘输入"5 <CR>",则程序的输出结果是_____B___.#include <stdio.h>void main( ){ int a ;scanf("%d",&a);if (a++>5)printf("%d\n",a);else printf("%d\n",a--) ;}A) 7 B) 6 C) 5 D) 455、运行下面程序时,若从键盘输入"3,4 <CR>",则程序的输出结果是____B___.#include <stdio.h>void main( ){ int a,b,s;scanf("%d,%d",&a,&b);s=a;if (s<b) s=b;s=s*s;printf("%d\n",s) ;}A) 14 B) 16 C) 18 D) 2056、以下程序的执行结果是_____D____.#include <stdio.h>void main( ){ int x=0,y=1,z=0;if (x=z=y)x=3;printf("%d,%d\n",x,z);}A) 3,0 B) 0,0 C) 0,1 D)3,157、假定等级和分数有以下对应关系:等级:A 分数:85~100等级:B 分数:60~84等级:C 分数:60 以下对于等级grade输出相应的分数区间,能够完成该功能的程序段是____D____.A) switch (grade){case 'A':printf("85--100\n");case 'B':printf("60--84\n");case 'C':printf("60以下\n");default:printf("等级错误!\n");}B) switch (grade){case 'A':printf("85--100\n");break;case 'B':printf("60--84\n");case 'C':printf("60以下\n");default:printf(" 等级错误!\n");}C) switch (grade){case 'A':printf("85--100\n");break;case 'B':printf("60--84\n");break;case 'C':printf("60以下\n");default:printf("等级错误!\n");}D) switch (grade){case 'A':printf("85--100\n");break;case 'B':printf("60--84\n");break;5 / 34case 'C':printf("60以下 \n");break;default:printf("等级错误!\n");}58、能够完成如下函数计算的程序段是__B____. ┌ -1 x<0y= ┤ 0 x=0└ 1 x>0A) y=1;B) if (x>=0)if(x!=0)if(x>0) y=1;if(x>0) y=1; else y=0;else y=0; else y=-1;C) y=0;D) y=-1;if (x>=0) if (x>0) y=1;if (x>0) y=1;else y=0;else y=-1;59、有如下程序#include <stdio.h>void main( ){ float x=5.0,y;if(x<0.0) y=0.0;else if (x<10.0) y=1.0/x;else y=1.0;printf("%f\n",y);}该程序的输出结果是____C_____.A) 0.000000 B) 0.50000C) 0.200000 D) 1.00000060、以下程序的执行结果是___B_____.#include <stdio.h>void main( ){ int x=1,y=0;switch (x){case 1:switch (y){case 0:printf("first\n");break; case 1:printf("second\n");break; }case 2:printf("third\n");}}A) first B) firstsecond thirdC) first D) secondthird61、以下程序的执行结果是____A____.#include <stdio.h>void main( ){ int a,b,c,d,x;a=c=0;b=1;d=20;if (a) d=d-10;else if(!b)if (!c) x=15;else x=25;printf("d=%d\n",d);}A) d=20 B) d=10 C) d=15 D) 2562、有如下程序:#include <stdio.h>void main( ){ int a=2,b=-1,c=2;if (a<b)if (b<0) c=0;else c++;printf("%d\n",c);}该程序的输出结果是___C_____.A) 0 B) 1 C) 2 D) 363、以下程序执行后的输出结果是____B____.#include <stdio.h>void main( ){ int x,y=1,z;if ((z=y)<0) x=4;else if (y==0) x=5;else x=6;printf("%d,%d\n",x,y);}A) 4,1 B) 6,1 C) 5,0 D) 出错信息64、有如下程序#include <stdio.h>void main( ){ int x=1,a=0,b=0;switch(x){case 0: b++;6 / 34case 1: a++;case 2: a++;b++;}printf("a=%d,b=%d\n",a,b);}该程序的输出结果是______A____.A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=265、下面程序的输出结果是____C_____.#include <stdio.h>void main( ){ int a=-1,b=1,k;if ((++a<0) && (b--<=0))printf("%d %d\n",a,b);elseprintf("%d %d\n",b,a);}A) -1 1 B) 0 1 C) 1 0 D) 0 066、假定w、x、y、z、m均为int型变量,有如下程序段:w=1;x=2;y=3;z=4;m=(w<x)?w:x; m=(m<y)?m:y; m=(m<z)?m:z;则该程序段执行后,m的值是____D_____.A) 4 B) 3 C) 2 D) 167、以下程序的输出结果是___D______.main( ){ int a=100;if (a>100) printf("%d\n",a>100);else printf("%d\n",a<=100);}A) a<=100 B) 100 C) 0 D) 168、若执行下面的程序从键盘上输入9,则输出结果是.______B________#include <stdio.h>void main( ){int n;scanf("%d",&n);if (n++<10) printf("%d\n",n);else printf("%d\n",n--);}A) 11 B) 10 C) 9 D) 869、以下程序输出结果是_____D_____.#include <stdio.h>void main( ){ int m=4;if (++m>5) printf("%d\n",m--);else printf("%d\n",--m);}A) 7 B) 6 C) 5 D) 470、若执行下面的程序从键盘上输入5,则输出结果是.#include <stdio.h>void main( ){int x;scanf("%d",&x);if (x++>5) printf("%d\n",x);else printf("%d\n",x--);}A) 7 B) 6 C) 5 D) 471、以下程序段运行结果是____A____.int x=1,y=1,z=-1;x+=y+=z;printf("%d\n",x<y?y:x);A) 1 B) 2 C) 4 D) 不确定的值72、有以下程序#include <stdio.h>void main( ){ int a,b,c=246;a=c/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,b);}输出结果是____A____.A) 2,1 B) 3,2 C) 4,3 D)2,-173、运行下面程序时,若从键盘输入数据为"123",则输出结果是___C____.#include "stdio.h"void main(){ int num,i,j,k,place;scanf("%d",&num);if (num>99)place=3;else if(num>9)place=2;elseplace=1;i=num/100;j=(num-i*100)/10;k=(num-i*100-j*10);switch (place)7 / 34{ case 3: printf("%d%d%d\n",k,j,i);break;case 2: printf("%d%d\n",k,j);break;case 1: printf("%d\n",k);}}A) 123 B) 1,2,3C) 321 D) 3,2,174、执行以下程序后的输出结果是___D____.#include <stdio.h>void main( ){ int k=4,a=3,b=2,c=1;printf("%d\n",k<a?k:c<b?c:a);}A) 4 B) 3 C) 2 D) 175、以下条件表达式中能完全等价于条件表达式x的是____B___.A) (x==0) B) (x!=0) C) (x==1) D) (x!=1)76、若运行下面程序时,给变量a输入15,则输出结果是___A___.#include <stdio.h>void main( ){ int a,b;scanf("%d",&a);b=a>15?a+10:a-10;printf("%d\n",b) ;}A) 5 B) 25 C) 15 D) 1077、运行下面程序后,输出是___D___.#include <stdio.h>void main( ){ int k=-3;if (k<=0) printf("****\n");else printf("####\n")}A) ####B) ****C) ####****D) 有语法错误不能通过编译78、执行下面程序的输出结果是____C____.#include <stdio.h>void main( ){ int a=5,b=0,c=0;if (a=a+b) printf("****\n");else printf("####\n");}A) 有语法错误不能编译B) 能通过编译,但不能通过连接C) 输出 ****D) 输出 ####79、为了避免嵌套的if-else语句的二义性,C语言规定else总是与___C___组成配对关系.A) 缩排位置相同的ifB) 在其之前未配对的ifC) 在其之前尚未配对的最近的ifD) 同一行上的if80、设x 、y 、z 、t均为int型变量,则执行以下语句后,t的值为____C_____.x=y=z=1;t=++x || ++y && ++z;A) 不定值 B) 4 C) 1 D) 081、以下程序段____C______.x=-1;do{x=x*x;} while (!x);A)是死循环 B)循环执行两次C)循环执行一次 D)有语法错误82、对下面程序段描述正确的是___B____.int x=0,s=0;while (!x!=0) s+=++x;printf("%d",s);A) 运行程序段后输出0B) 运行程序段后输出1C) 程序段中的控制表达式是非法的D) 程序段循环无数次83、下面程序段的输出结果是____C____.x=3;do { y=x--;if (!y) {printf("*");continue;}printf("#");} while(x=2);A) ## B) ##* C) 死循环 D)输出错误信息8 / 3484、下面程序的运行结果是____B____.#include<stdio.h>void main( ){ int a=1,b=10;do{ b-=a;a++;} while(b--<0);printf("%d,%d\n",a,b);}A) 3,11 B) 2,8 C) 1,-1 D)4,985、下面程序段的运行结果是____B______.int n=0;while (n++<=2)printf("%d",n);A) 012 B) 123 C) 234 D) 错误信息86、下面程序段的运行结果是___D_____.int x=0,y=0;while (x<15) y++,x+=++y;printf("%d,%d",y,x);A) 20,7 B) 6,12 C) 20,8D)8,2087、下面程序的运行结果是___B_____.#include<stdio.h>void main(){ int s=0,i=1;while (s<=10){ s=s+i*i;i++;}printf("%d",--i);}A) 4 B) 3 C) 5 D) 688、函数pi的功能是根据以下近似公式求π值:____C______(π*π)/6=1+1/(2*2)+1/(3*3)+..+1/(n*n)请填空,完成求π的功能。

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

(1) 下面叙述正确的是()。

A) main( )函数必须位于源程序文件的开头B) 程序中必需含有自定义函数C) 每行最多只能写两条语句D) 所有语句都必须以分号“;”结束(2) 下面叙述错误的是()。

A) C语言规定可逐个引用数组元素但不能一次引用整个数组B) C语言数组名称是数组在内存中的首地址C) 数组中每一个元素都属于同一个数据类型D) C语言数组长度在定义数组时刻不作确定(3) 以下程序段的运行结果是()。

int t[ ][3]={1,2,3,4,5,6,7,8,9,10,11,12};printf(“%d\n”,t[1][1]);A) 4B) 3C) 5D) 1(4) 以下程序段的运行结果是()。

char str[3][2]={‘a’,’b’,’c’,’\0’,’e’,’f’};printf(“%s”,str[0]);A) abc\0efB) abcefC) abcD) a(5) 以下程序段的运行结果是()。

int f(int c){ c+=2;return c;}main( ){ int a=2,c=5;a=f(a);printf(“%d %d \n”,a,c);}A) 2 4B) 4 4C) 4 5D) 2 5B) C源程序中加入一些预处理命令是为了改进程序设计环境,提高编程效率C) “#include <stdio.h>”命令的作用是在预处理时将stdio.h文件中的实际内容代替该命令D) 宏定义也是C语句,必须在行末加分号(7) 若有定义:int a=2,*p=&a;,则以下()均表示地址。

A) &a,pB) a,pC) a,*pD) &a,*p(8) 以下程序段运行后x的值为()。

int a[ ]={1,2,3,4,5,6,7,8};int i,x,*p;x=1;p=&a[1];for (i=0;i<3;i++)x*=*(p+i);A) 1B) 120C) 24D) 6(9) 下列()对结构类型变量定义是错误的。

A) struct teacher{ int num;int age;};struct teacher teach1;B) struct{ int num;int age;} teach1, teach2;C) struct{ int num;int age;} teacher;struct teacher teach1;D) struct teacher{ int num;int age;} teach1;(10) 以下程序段运行后,()对数组a元素的引用是错误的。

(其中0≤i<4,0≤j<3)A) *(*(a+i)+j)B) *(*(p+i)+j)C) p[i][j]D) *(p[i]+j)(11) 若有定义:char ch;int j,k;enum day {sun, mon, tue, wed, thu, fri, sat};int a[sat];则()对下列语句是否符合语法规则的判断是正确的。

sun=0; /*语句1*/j=mon+tue; /*语句2*/if (a[mon]>) j++; /*语句3*/A) 语句1、2、3均正确B) 语句2正确,语句1和语句3错误C) 语句1错误,语句2和语句3正确D) 语句1、2、3均错误(12) C语言的基本数据类型包括()。

A) 整型、实型、字符型B) 整型、指针型、字符型C) 整型、实型、逻辑型D) 整型、实型、空类型(13) 下面程序运行后,屏幕显示File open error!,则可能的原因是()。

#include <stdio.h>main(){FILE *fp;char str[256];fp=fopen(“test.txt”,”rt”);if (fp= =NULL){ printf(“File open error!:);return;}fscanf(fp,”%s”,str);fclose(fp);}A) 当前工作目录下没有test.txt文件B) 函数fopen( )的参数是错误的C) 当前工作目录下的test.txt文件是空文件D) text.txt文件已经打开B) float x=3.2, int i,j=6;C) float x=2.3,b,c;D) int a=2,b+=a;(15) 若有定义:int x,y,z; 语句x=(y=z=3,++y,z+=y); 运行后x的值为()。

A) 6B) 7C) 8D) 3(16) 若有定义int a=8,b=5;要实现输出形式为:8*5=40,正确的printf( )函数调用语句是()。

A) printf(“a*b=a*b\n”);B) printf(“a*b=%d\n”,a*b);C) printf(“%d*%d=a*b\n”,a,b);D) printf(“%d*%d=%d\n”,a,b,a*b);(17) 若有定义:int a;且表达式!a的值为0,则表达式()的值为1。

A) !(a<0||a>0)B) a!=0C) a= =0D) a=0(18) 下列运算符中优先级最低的是()。

A) >B) *C) =D) !(19) 以下程序段运行后x的值为()。

int a=3,b=6,x;x=(a= =b)?a++:--b;A) 6B) 4C) 5D) 3(20) 以下程序段运行后x的值为()。

int i=0,x=0;for (;i<=5;i++,i++){x+=3;}A) 9(21)()是关于C语言数据类型的正确叙述。

A) 枚举类型不是基本类型B) 变量使用前应定义相应的数据类型C) 不允许使用空类型D) 数组不是构造类型(22)()是正确的数组定义。

A) int n=5; int arr[n];B) int n; n=5; int arr[n];C) int arr[10];D) int N=5, arr[N];(23) 以下程序段运行后a的值为()。

int a=2;a=strcmp(“miss”,”miss”);A) trueB) 0C) 1D) -1(24) 以下程序段的运行结果是()。

int fun(int array[3][3]){ int j;for (j=0;n<3;j++) array[1][j]++;printf("\n");}main( ){ int j,a[3][3]={0,1,2,1,0,4,2,4,5};fun(a);for (j=0;n<3;j++) printf(“%2d”,a[1][j]);printf("\n");}A) 1 0 4B) 0 1 2C) 1 2 3D) 2 1 5(25) 若有定义:#define PI 3,则表达式PI*2*2的值为()。

A) 4B) 不确定(26) 若有定义:int *p1,*p2;,则不能用于指针变量p1、p2之间的运算符是()。

A) -B) =C) +D) = =(27) 若有定义:struct teacher{ int num;char sex;int age;} teacher1;则下面叙述错误的是()。

A) teacher1是结构类型名B) struct teacher是用户定义的结构类型C) num、sex、age都是结构变量teacher1的成员D) struct是结构类型的关键字(28) 下列程序段运行后,表达式()的值为3。

struct point{ int x;int y;} *p;stuct point a[3]={1,2,3,4,5,6};p=a;A) p[1].xB) *(p+2)C) p[3].xD) p[2].x(29) 若有定义:typedef int NUM[100];NUM n;则()语句是正确的。

A) n[0]=2;B) NUM=2;C) NUM=n;D) n=2;(30)()为非法的字符串常量。

A) “case”B) ““(31) 若当前工作目录下有一文本文件test.txt,其内容为"cprogram“(不包含引号),则以下程序段的运行结果是()。

FILE *fp;char *str;if ((fp=fopen(“test.txt”,”r”))!=NULL)str=fgets(str,5,fp);printf("%s",str);fclose(fp);A) cproB) cprogC) ogramD) gram(32) 若有定义:int a=3;,语句a+=a-=a*a;运行后a的值为()。

A) -3B) -6C) -12D) 0(33) 若有定义:int i=3,j=6;,则表达式(--i)*(j++)的值为()。

A) 12B) 10C) 18D) 15(34) getchar( )函数的功能是获取终端输入的()。

A) 一个实型变量值B) 一个字符C) 多个字符D) 一个整型变量表达式(35) 若有定义:int a;,则表达式()不能用来判断a值为奇数是“真”,偶数是“假”。

A) a%2= =1B) !(a%2)C) a%2D) !(a%2= =0)(36) 若有定义:float x=3.5,y=3.6; 则表达式()的值为6。

A) (int)x+(int)yB) x+yC) (int)(x+y)D) int(x+y)void main(){ int a,b=2,c=6;a=3;if (a>6) a=a+b;else if (a= =6) b=a+c;else a=b+c;printf("%d\n",a);}A) 9B) 6C) 8D) 5(38) 以下程序段运行后x的值为()。

int i,j,x=0for (i=3;i>=1;i--)for (j=1;j<=i;j++)x=x+2;A) 8B) 14C) 10D) 12(39) 下面叙述错误的是()。

A) c源程序必须包含一个main( )函数B) c源程序可由一个或多个函数组成C) 一个c源程序的执行是从main( )函数开始,直到main( )函数结束D) 注释说明部分只能位于c源程序的最前面(40) 下面叙述错误的是()。

A) 一个指针变量只能指向同一类型的变量B) 一个变量的地址称为该变量的指针C) 可以将一个整数值赋给指针变量D) 任何指针变量都可以与空指针NULL进行比较(41) 以下程序的运行结果是()。

main(){ int x,y;int *p,*q,*t;x=23;y=45;p=&x;q=&y;t=p;p=q;A) 45,23B) 45,45C) 23,45D) 23,23(42) 若有定义int a=1,b=2,t=3;struct data{ char afloat b[3];long c;}d1;则变量d1的长度是()。

相关文档
最新文档