c语言题库 新 优质文档

合集下载

(完整版)C语言试题库(完整版)

(完整版)C语言试题库(完整版)

C语言试题库一、单项选择第一章 C语言概述(1)一个C程序的执行是从A、本程序的MAIN函数开始,到MAIN 函数结束。

B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。

C、本程序的MAIN函数开始,到本程序的最后一个函数结束。

D、本程序文件的第一个函数开始,到本程序的MAIN函数结束。

(2)以下叙述正确的是A、在C程序中,MAIN函数必须位于程序的最前面。

B、 C程序的每行中只能写一条语句。

C、 C语言本身没有输入输出语句。

D、在对一个C程序进行编译的过程中,可发现注释中的拼写错误。

(3) C语言规定,在一个源程序中,MAIN主函数的位置是在:A、必须在最前面。

B、必须在系统调用的库函数的后面C、可以在任意位置。

D、必须在最后面(4)一个C程序是由:A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成(5)以下叙述不正确的是:A、一个C源程序可由一个或多个函数组成B、一个C源程序必须包含一个MAIN函数C、 C程序的基本组成单位是函数D、在C程序中,注释说明只能位于一条语句的后面第二章数据类型、运算符与表达式(1)若x, i, j, k都是int型变量,则计算下面表达式后,x的值为x=( i=4, j=16, k=32)A、4B、16C、32D、52(2)下列四组选项中,均不是C语言键字的选项是A、define , IF, typeB、getc, char, printfC、include, scanf, caseE、 if, struct, type(3)下面四个选项中,均是不合法的用户标识符的选项是A、A,P_0,doB、float,1a0, _AC、b-a, goto, intD、_123, temp, INT(4)若有代数式3ae/bc,则正确的C语言表达式是A、a/b/c*e*3B、3*a*e/bcC、3*a*e/b*cD、a*e/c/b*3(5)已知各变量的类型说明如下:int k, a, b;unsinged long w=5;double x=1.42;则以下不符合C语言语法的表达式是A、x%(-3)B、w+=-2;C、k=(a=2,b=3,a+b)D、a+=a-=(b=4)*(a=3)第三章简单C程序设计(1)putchar函数可以向终端输出一个A、整型变量表达式值B、实型变量值C、字符串D、字符或字符型变量值(2)若x,y均定义为int型,z定义为double 型,以下合法的scanf函数调用语句是A、scanf(“%d%lx,%le”,&x,&y,&z);B、scanf(“%2d*%d%lf”,&x,&y,&z);C、scanf(“%x%*d%o”,&x,&y,&z);D、scanf(“%x%o%6.2f”,&x,&y,&z);(3)当输入数据的形式为:25,13,10<回车>时,以下程序的输出结果为main(){int x,y,z;scanf(“%d%d%d”,&x,&y,&z);printf(“x+y+z=%d\n”,x+y+z);}A、x+y+z=48B、x+y+z=35C、x+z=35D、不确定值(4) 以下能正确的定义整型变量a,b和c,并对它们赋初值为5的语句是A、int a=b=c=5;B、int a, b, c=5;C、a=5, b=5, c=5;D、a=b=c=5;(5) 若有以下定义,则正确的赋值语句是int a,b; float x;A、a=1, b=2;B、b++;C、a=b=5;D、b=int(x);第四章选择结构程序设计(1)能正确表示“当x的值在[1,10]和[200,210]的范围为真,否则为假”的表达式是A、(x>=1)&&(x<=10)&&(x.>=200)&&(x<=210)B、(x>=1)││(x<=10) ││(x.>=200) ││(x<=210)C、(x>=1) &&(x<=10) ││(x.>=200) &&(x<=210)D、(x>=1)││(x<=10)&& (x.>=200) ││(x<=210)(2)以下程序的运行结果是#include “stdio.h”main(){int a,b,d=241;a=d/100%9;b=(-1)&&(-1);printf(“%d,%d”,a,b);}A、6,1B、2,1C、6,0D、2,0(3)请阅读以下程序:main(){int a=5 , b=0 , c=0;if (a+b+c) printf(“* * *\n”); else printf(“$ $ $\n”); }以上程序。

C语言考试试题精选.doc

C语言考试试题精选.doc

习题1一、选择题:1.按照C语言规定的用户标识符命名规则,不能出现在标识符中的是(B)A.大写字母B.连接符C.数字字符D.下划线2.下列数据中是合法的整型常量的是(BCDEF )A. 3E2B. -32768C. 18)000D. OxffffE. 029F. 0xl2H3.下列数据中是合法的字符常量的是(BEH)A. “A”B. '!'C. 'AB'D. hE. '\\'F. "\1234‘G. '\xl23' H. '\0' I. '\k'4.设有定义:intk=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是(A )A. k++B. k+=lC. ++kD. k+15.有以下程序,其中%11表示按无符号整数输出main ()(unsigned int x二OxFFFF; /* x的初值为十六进制数*/printf ( "%u\n" , x);}程序运行后的输出结果是(B)A. -1B. 65535C. 32767D. OxFFFF6.设变量x和y均已正确定义并赋值,以下if语句中,在编译时将产生错误信息的是(C )A. if (x++) ;B.if(x>y&&y!二0);C. if (x>y) x一else y++;D. if (y<0) (;} else x++;7.以下选项中,当x为大于1的奇数时,值为0的表达式(D )A. x%2=lB. x/2C. x%2!二0D.x%2=08.已知大写字母'A,的ASCII码值是65,小写字母'a' 的ASCII码值是97,以下不能将变量c中大写字母转换为对应小写字母的语句是(D )A. c=(c-A)%26+'a'B. c二c+32C. c=c~ A' +' a'D. c=('A' +c) %26—' a'9.有以下程序void main ()(unsigned char a二2, b二4, c二5, d;d二a|b; d&二c; printf(〃%d\n〃, d); }程序运行后的输出结果是(B )A. 3B. 4C. 5D. 6二、填空题:1.设x=2. 5, a=7, y二4. 7,则x+a%3*(int) (x+y)%2/4的值为_2. 5 o2.设a=2 , b二3 , x二3.5 , y二2.5 ,则(float) (a+b) /2+ (int) x%(int) y 的值为_3. 500000________________________________________________ 。

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

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

c语言下期末考试题库及详解答案一、单项选择题(每题2分,共40分)1. 在C语言中,以下哪个选项是正确的?A. 变量名可以以数字开头B. 变量名中可以包含空格C. 变量名区分大小写D. 变量名可以包含特殊字符答案:C2. 下面哪个选项是C语言中的合法整型常量?A. 0x1AB. 1.23C. 0123D. 0E5答案:A3. 在C语言中,哪个关键字用于定义一个函数?A. classB. functionC. defD. void答案:D4. C语言中,以下哪个选项是正确的?A. 一个函数可以返回多个值B. 一个函数可以有多个返回类型C. 一个函数可以没有返回值D. 一个函数可以没有参数答案:D5. 在C语言中,以下哪个选项是正确的?A. 所有变量必须在使用前声明B. 变量可以在任何地方声明C. 变量的声明必须在函数的开始处D. 变量的声明可以在代码的任何位置答案:A6. 下列哪个是C语言中的逻辑运算符?A. &&B. ||C. !D. 以上都是答案:D7. 在C语言中,以下哪个选项是正确的?A. 字符串字面量必须以单引号括起来B. 字符串字面量必须以双引号括起来C. 字符串字面量可以以单引号或双引号括起来D. 字符串字面量不能以引号括起来答案:B8. 在C语言中,以下哪个选项是正确的?A. 所有数组元素必须具有相同的数据类型B. 数组的大小在定义时必须确定C. 数组可以是多维的D. 以上都是答案:D9. 在C语言中,以下哪个选项是正确的?A. 指针可以存储任何类型的数据B. 指针可以存储变量的地址C. 指针可以存储函数的地址D. 以上都是答案:B10. 在C语言中,以下哪个选项是正确的?A. switch语句中的case标签必须是整数B. switch语句中的case标签可以是浮点数C. switch语句中的case标签可以是字符串D. switch语句中的case标签可以是任意类型答案:A二、填空题(每题2分,共20分)1. 在C语言中,用于输入的函数是________。

C语言全部考试系统题库含答案

C语言全部考试系统题库含答案

目录目录 (1)单元练习题一 C语言基础知识 (3)一、判断题 (3)二、单项选择题 (4)三、读程序选择题 (7)四、程序填空题 (8)五、编程题..................................... 错误!未定义书签。

单元练习题二 C语言程序结构.. (9)一、判断题 (9)二、单项选择题 (9)三、读程序选择题............................ 错误!未定义书签。

四、程序填空题 (17)五、编程题.................................. 错误!未定义书签。

单元练习题三数组.. (21)一、判断题 (21)二、单项选择题 (22)三、读程序选择题............................... 错误!未定义书签。

四、程序填空题 (28)五、编程题..................................... 错误!未定义书签。

单元练习题四函数.. (33)一、判断题 (33)二、单项选择题 (34)三、读程序选择题 (40)四、程序填空题................................. 错误!未定义书签。

五、编程题..................................... 错误!未定义书签。

单元练习题五预处理................................ 错误!未定义书签。

一、判断题.................................. 错误!未定义书签。

二、单项选择题.............................. 错误!未定义书签。

三、读程序选择题............................... 错误!未定义书签。

四、程序填空题................................. 错误!未定义书签。

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

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

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

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

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

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

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

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

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

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

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

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

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

(完整版)C语言考试题库及答案(可编辑修改word版)

(完整版)C语言考试题库及答案(可编辑修改word版)

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) 字符8、设int a=12,则执行完语句a+=a-=a*a 后,a 的值是DA) 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) 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 .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) 100C) 100 200 D) 输出格式符不够,输出不确定的值19、阅读下面的程序#include<stdio.h>void main(){char ch;scanf("%3c",&ch);printf("%c",ch);}如果从键盘上输入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=45abc<回车>则程序的运行结果是 A .A) a B) b C) c D) 程序语法出错25、下面程序的输出结果是 D .#include<stdio.h>void main(){20、阅读下面的程序int a=-1, b=4, k;#include<stdio.h> k=(++a<=0)&&(b--<=0);void main() printf("%d,%d,%d\n",k,a,b);{ }int i,j; A) 1,1,2 B) 1,0,3 C) 0,1,2 D) 0,0,3 i=010;j=9; 26、下面程序的输出结果是 A .printf("%d,%d",i-j,i+j); #include<stdio.h>} void main()则程序的运行结果是 D . {A) 1,19 B) -1,19 C) 1,17 D) -1,17 int a=5,b=3;float x=3.14, y=6.5;21、阅读下面的程序printf("%d,%d\n",a+b!=a-b,x<=(y-=6.1));#include<stdio.h> }void main() A) 1,0 B) 0,1 C) 1,1 D) 0,0 {int i,j,m,n; 27、执行下面程序段后,输出结果是 A .i=8;j=10; int a;m=++i; int b=65536;n=j++; a=b;printf("%d,%d,%d,%d",i,j,m,n); printf("%d\n",a);} A) 65536 B) 0 C) -1 D) 1 程序的运行结果是 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 . 28、若有以下定义和语句: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; 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)本程序的第一个函数开始,到本程序的主函数结束printf("%d,%d\n",--a,++b); 41、设a 为整型变量,不能正确表达数学关系10<a<15 } 的C 语言表达式是 A .A) 10,10 B) 12,12 C) 11,10 D) 11,13 A) 10<a<15 B) a==11||a==12||a==13||a==14C) a>10&&a<15 D) !(a<=10)&&!(a>=15)32、设有以下语句:int x=10;x+=3+x%(3),则x 的值是. AA) 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)必须为下划线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); 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=1elseif (b>c)printf("%d\n",b);else 49、运行下面程序时,从键盘输入"12,34,9<CR>",则输出结果是 A .#include <stdio.h>void main( )printf("%d\n",c); { int x,y,z;} scanf("%d,%d,%d",&x,&y,&z);A) 5 B) 6 C) 7 D) 不定值if (x<y)46、执行下面程序时,若从键盘输入"2<CR>",则程序的运行结果是 A .#include <stdio.h>void main( ){ int k; char cp;cp=getchar( );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)不确定的值if (cp>='0' && cp<='9')k=cp-'0';else if (cp>='a' && cp<='f') 50、运行下面程序时,从键盘输入字母H,则输出结果是 C .#include <stdio.h>k=cp-'a'+10; void main( )else k=cp-'A'+10; { char ch;printf("%d\n",k); ch=getchar( );} switch(ch)A) 2 B) 4 C) 1 D) 10 { case 'H':printf("Hello!\n");47、运行下面程序时,从键盘输入"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);}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) 4 A) 3,0 B) 0,0 C) 0,1 D) 3,152、设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) 4 57、假定等级和分数有以下对应关系:等级: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");55、运行下面程序时,若从键盘输入"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) 20}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 .┌ -1 x<0y= ┤0 x=0└ 1 x>056、下列程序的执行结果是 D . A) y=1; B) if (x>=0)#include <stdio.h> if(x!=0) if(x>0) y=1; void main( ) if(x>0) y=1; else y=0; { int x=0,y=1,z=0; else y=0; else y=-1;if (x=z=y) C) y=0; D) y=-1;x=3; if (x>=0) if (x>0) y=1;printf("%d,%d\n",x,z); 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++;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);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) 4x+=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);}70、若执行下面的程序从键盘上输入5,则输出结果是. #include <stdio.h>void main( )}A) 123 B) 1,2,3 C) 321 D) 3,2,1{int x;scanf("%d",&x); 74、执行下列程序后的输出结果是 D . #include <stdio.h>if (x++>5) printf("%d\n",x); void main( )else printf("%d\n",x--); { int k=4,a=3,b=2,c=1;} printf("%d\n",k<a?k:c<b?c:a);A) 7 B) 6 C) 5 D) 4 }71、以下程序段运行结果是 A . int x=1,y=1,z=-1; A) 4 B) 3 C) 2 D) 175、以下条件表达式中能完全等价于条件表达式x 的是 B . t=++x || ++y && ++z;A) (x==0) B) (x!=0) C) (x==1) D) (x!=1) A) 不定值B) 4 C) 1 D) 076、若运行下面程序时,给变量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) ; 81、以下程序段 C .x=-1;do{x=x*x;} while (!x);A)是死循环B)循环执行两次C)循环执行一次D)有语法错误}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") 82、对下面程序段描述正确的是 B .int x=0,s=0;while (!x!=0) s+=++x;printf("%d",s);A)运行程序段后输出0B)运行程序段后输出1C)程序段中的控制表达式是非法的D)程序段循环无数次}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; 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,12 C) 20,8 D)8,20} while(a<9); printf("%d\n",b); }87、下面程序的运行结果是 B . A) 34 B) 24 C) 26 D) 25#include<stdio.h> 91、下面程序段的运行结果是 D .void main() for(i=1;i<=5;){ int s=0,i=1; printf("%d",i);while (s<=10) i++;{ s=s+i*i; A) 12345 B) 1234 C) 15 D) 无限循环i++;} 92、下面程序的输出结果是 B .printf("%d",--i); #include<stdio.h>} void main( )A) 4 B) 3 C) 5 D) 6 { int n=4;88、函数pi 的功能是根据以下近似公式求π值:while (n--) printf("%d ",n--); }C(π*π)/6=1+1/(2*2)+1/(3*3)+..+1/(n*n)请填空,完成求π的功能。

大学c语言试题题库及答案

大学c语言试题题库及答案

大学c语言试题题库及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述,正确的是:A. C语言是一种编译型语言B. C语言是一种解释型语言C. C语言是一种面向对象的语言D. C语言不支持函数答案:A2. 在C语言中,用于定义一个整型变量的关键字是:A. intB. floatC. charD. double答案:A3. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. intD. _int答案:B4. C语言中,用于定义一个浮点型数组的语法是:A. int array[10];B. float array[10];C. char array[10];D. double array[10];答案:B5. 在C语言中,哪个运算符用于取模运算?A. %B. /C. *D. +答案:A6. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. ==D. =答案:A7. 在C语言中,用于定义一个字符型数组的语法是:A. int array[10];B. float array[10];C. char array[10];D. double array[10];答案:C8. C语言中,用于声明一个函数的关键字是:A. intB. floatC. voidD. return答案:C9. 下列哪个选项是C语言中的循环结构?A. ifB. switchC. forD. while答案:C10. 在C语言中,用于定义一个字符串常量的语法是:A. "Hello"B. 'Hello'C. "Hello"[10]D. 'Hello'[10]答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________运算符可以连接两个字符串。

答案:+2. C语言中的________关键字用于声明一个无返回值的函数。

c语言题库及详解答案百度文库

c语言题库及详解答案百度文库

c语言题库及详解答案百度文库C语言作为一门广泛应用的编程语言,其题库及详解答案在百度文库中有着丰富的资源。

以下内容将对C语言题库中的一些典型题目进行简要的介绍,并提供相应的详解答案。

1. 基础语法题- 题目:请写出一个C语言的Hello World程序。

- 解答:C语言中最基本的程序是打印"Hello World"。

以下是一个简单的示例:```c#include <stdio.h>int main() {printf("Hello, World!\n");return 0;}```2. 变量和数据类型题- 题目:如何声明一个整型变量并赋值?- 解答:在C语言中,声明一个整型变量并赋值可以通过以下方式实现:```cint number = 10;```3. 控制结构题- 题目:使用if语句判断一个数是否为正数。

- 解答:if语句用于条件判断,以下是一个示例代码:```cint num = 5;if (num > 0) {printf("%d is positive.\n", num);}```4. 循环结构题- 题目:使用for循环打印1到10的数字。

- 解答:for循环可以用于重复执行代码块。

以下是打印1到10的示例代码:```cfor (int i = 1; i <= 10; i++) {printf("%d ", i);}printf("\n");```5. 数组和字符串题- 题目:如何声明并初始化一个整型数组?- 解答:在C语言中,声明并初始化一个整型数组可以通过以下方式:```cint numbers[] = {1, 2, 3, 4, 5};```6. 函数题- 题目:编写一个函数,计算两个整数的和。

- 解答:函数是C语言中实现代码复用的一种方式。

以下是一个计算两个整数和的函数示例:```cint add(int a, int b) {return a + b;}```7. 指针题- 题目:使用指针交换两个变量的值。

c语言期末复习题库doc

c语言期末复习题库doc

c语言期末复习题库doc C语言期末复习题库一、选择题(每题2分,共20分)1. 在C语言中,以下哪个是合法的变量名?A. 2variableB. variable2C. variable-twoD. variable#22. 下列哪个选项是C语言中的关键字?A. intB. floatC. doubleD. string3. 在C语言中,哪个函数用于计算两个数的和?A. add()B. sum()C. calculate()D. None of the above4. 在C语言中,以下哪个是正确的字符串定义?A. char str = "Hello";B. string str = "Hello";C. str = "Hello";D. char str[] = {"Hello"};5. 下列哪个是正确的C语言数组初始化?A. int arr[5] = {1, 2, 3, 4, 5};B. int arr[5] = 1, 2, 3, 4, 5;C. int arr[] = {1, 2, 3, 4, 5};D. All of the above6. 在C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /7. 以下哪个是C语言的控制结构?A. ifB. whileC. forD. All of the above8. 在C语言中,哪个函数用于输出字符串?A. printf()B. scanf()C. puts()D. get()9. 在C语言中,以下哪个是正确的函数定义?A. void function_name()B. int function_name()C. function_name()D. All of the above10. 在C语言中,哪个关键字用于定义一个函数的开始?A. functionB. defC. beginD. None of the above二、填空题(每题2分,共20分)1. 在C语言中,基本数据类型包括整型(____)和浮点型(____)。

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语言考试题库及答案1

c语言考试题库及答案1

c语言考试题库及答案1C语言是一种广泛使用的计算机编程语言,以其高效、灵活和功能强大而闻名。

以下是一些常见的C语言考试题目及答案,供学习和复习使用。

1. 题目: 以下哪个语句可以正确地声明一个整型变量?- A. int var;- B. var int;- C. int = var;- D. var = int;答案: A. int var;2. 题目: 以下哪个是C语言的合法常量?- A. 100L- B. 100.0- C. 0x1A- D. All of the above答案: D. All of the above3. 题目: 在C语言中,哪个关键字用于定义一个函数?- A. function- B. def- C. define- D. None of the above答案: D. None of the above(正确的关键字是`void`,`int`,`float`等,取决于函数的返回类型)4. 题目: 以下哪个是C语言中的控制语句?- A. if- B. for- C. while- D. All of the above答案: D. All of the above5. 题目: 在C语言中,数组的索引从哪个数字开始? - A. 0- B. 1- C. -1- D. None of the above答案: A. 06. 题目: 以下哪个是C语言中字符串的正确表示方式? - A. "Hello"- B. 'Hello'- C. "Hello" and 'Hello'- D. None of the above答案: A. "Hello"7. 题目: 以下哪个是C语言中正确的指针声明?- A. int *ptr;- B. int ptr*;- C. *int ptr;- D. int * ptr;答案: A. int *ptr;8. 题目: 在C语言中,哪个库函数用于计算两个数的绝对值?- A. abs()- B. fabs()- C. Both A and B- D. None of the above答案: C. Both A and B(`abs()`用于整数,`fabs()`用于浮点数)9. 题目: 以下哪个是C语言中的位操作符?- A. &- B. |- C. ^- D. All of the above答案: D. All of the above10. 题目: 在C语言中,哪个关键字用于定义一个结构体?- A. struct- B. class- C. type- D. None of the above答案: A. struct这些题目覆盖了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. 数据类型与变量1.1 整型数据类型C语言中的整型数据类型包括:char、short、int和long。

它们分别占用不同字节大小的存储空间,用于表示不同范围内的整数值。

请回答以下问题:(1)char类型变量占用的存储空间是多少字节?(2)int类型变量占用的存储空间是多少字节?(3)long类型变量占用的存储空间是多少字节?1.2 浮点型数据类型C语言中的浮点型数据类型包括:float和double。

它们用于表示带有小数部分的实数值。

请回答以下问题:(1)float类型变量占用的存储空间是多少字节?(2)double类型变量占用的存储空间是多少字节?1.3 布尔型数据类型C语言中并没有定义布尔型数据类型,但可以通过其他方式来模拟实现布尔类型。

请说明如何用C语言实现布尔型数据类型,并给出示例代码。

1.4 常量与变量常量是指在程序运行过程中其值不发生改变的量,而变量是可以在程序运行过程中赋予不同值的量。

请回答以下问题:(1)常量在C语言中如何声明?(2)变量在C语言中如何声明?(3)常量可以修改吗?为什么?2. 控制语句2.1 循环语句C语言提供了多种循环结构,包括:while、do-while和for循环。

请回答以下问题:(1)while循环和do-while循环的区别是什么?(2)for循环的语法结构是怎样的?2.2 分支语句C语言中的分支语句包括:if语句、switch语句和三元运算符。

请回答以下问题:(1)if语句的语法结构是怎样的?(2)switch语句的语法结构是怎样的?(3)三元运算符的使用方法是怎样的?3. 函数与数组3.1 函数函数是C语言程序的基本组成单位,用于封装可重用的代码块。

请回答以下问题:(1)函数的定义包括哪些部分?(2)函数的调用过程是怎样的?(3)函数的返回值可以是什么类型?(4)递归函数和普通函数有何不同?3.2 数组数组是一种用于存储多个相同类型数据的集合。

c语言考试题库及答案

c语言考试题库及答案

c语言考试题库及答案1. 选择题- 1.1 以下哪个选项是C语言中的合法整数常量?- A. 0x12- B. 1.2e3- C. 0123- D. 0b1010- 答案:A- 1.2 C语言中,以下哪个关键字用于定义一个结构体?- A. struct- B. union- C. enum- D. typedef- 答案:A- 1.3 在C语言中,以下哪个运算符用于取地址?- A. *- B. &- C. %- D. #- 答案:B2. 填空题- 2.1 在C语言中,`printf` 函数用于输出,其返回值是____。

- 答案:输出的字符数- 2.2 C语言中,`sizeof` 运算符用于获取数据类型或变量的____。

- 答案:大小- 2.3 以下代码段中,`x` 的值是多少?```cint x = 10;x += 5;```- 答案:153. 简答题- 3.1 描述C语言中指针的概念。

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

通过指针,程序可以间接访问和操作内存中的数据。

- 3.2 解释C语言中数组和指针的关系。

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

因此,数组和指针紧密相关,数组可以通过指针进行操作,指针也可以用于数组的遍历和处理。

4. 编程题- 4.1 编写一个C语言函数,计算并返回两个整数的和。

```cint add(int a, int b) {return a + b;}```- 答案:上述函数定义了名为add的函数,该函数接受两个整数参数a和b,并返回它们的和。

- 4.2 编写一个C语言程序,实现字符串反转的功能。

```cvoid reverse(char *str) {int i, j;char temp;for (i = 0, j = strlen(str) - 1; i < j; i++, j--) {temp = str[i];str[i] = str[j];str[j] = temp;}}```- 答案:上述程序定义了一个名为reverse的函数,该函数接受一个字符串指针作为参数,并通过交换字符的方式实现字符串的反转。

c语言题库及详解答案

c语言题库及详解答案

c语言题库及详解答案C语言是一门广泛应用的编程语言,以其强大的功能和灵活性而受到程序员的青睐。

下面,我将提供一些常见的C语言题目及其详解答案,以帮助学习者更好地理解和掌握C语言。

1. 基础语法题题目:编写一个C程序,输出“Hello, World!”。

答案:```c#include <stdio.h>int main() {printf("Hello, World!\n");return 0;}```2. 变量和数据类型题题目:声明一个整型变量`a`,赋值为10,并打印其值。

答案:```c#include <stdio.h>int main() {int a = 10;printf("%d\n", a);return 0;}```3. 条件语句题题目:编写一个程序,判断一个整数是否为偶数,并打印相应的信息。

答案:```c#include <stdio.h>int main() {int num;printf("Enter an integer: ");scanf("%d", &num);if (num % 2 == 0) {printf("%d is even.\n", num);} else {printf("%d is odd.\n", num);}return 0;}```4. 循环语句题题目:使用for循环打印1到10的整数。

答案:```c#include <stdio.h>int main() {for (int i = 1; i <= 10; i++) {printf("%d ", i);}printf("\n");return 0;}```5. 数组题题目:编写一个程序,找出一个整数数组中的最大值。

(完整word)C语言基础练习题(含答案),推荐文档

(完整word)C语言基础练习题(含答案),推荐文档

目录第1-3章C语言基础知识习题 (2)1 选择题 (2)2 填空题 (7)3 答案及部分解析 (9)第4章选择结构习题 (11)1 选择题 (11)2 填空题 (17)3 答案及部分解析 (23)第5章循环结构习题 (26)1 选择题 (26)2 填空题: (32)3 答案及部分解题分析 (39)第6章数组习题 (41)1. 单项选择题 (41)2. 填空题 (44)3. 判断题 (45)4. 程序填空题 (45)5. 阅读程序,分析程序的功能。

(49)第7章函数习题 (55)1. 单项选择题 (55)2. 填空题 (56)3. 判断题 (57)4. 程序填空题 (58)5. 写出下列程序运行结果 (59)第8章指针习题 (67)1 选择题 (67)2 填空题 (69)第1-3章C语言基础知识习题1 选择题1. 以下不是C语言的特点的是()。

A、语言简洁紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件操作D、C语言移植性好2.下列字符序列中,不可用作C语言标识符的是()。

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

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

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

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

A.int B.break C.while D.character7.是C语言提供的合法关键字的是()。

A.Float B.signed C.integer D.Char8.以下不能定义为用户标示符的是()。

A.scanf B.V oid C._3com_ D.int9.一个C程序是由()。

C语言题库(带答案)-排版 (2)(word文档良心出品)

C语言题库(带答案)-排版 (2)(word文档良心出品)

一、选择题1、以下不能定义为用户标识符的是( )。

2、以下不能定义为用户标识符的是( )3、下面属于C 语言标识符的是( )。

4、下列符号中用来表示C 语言中的回车换行的是( )。

(A) \r 5、在计算机系统中,可执行程序是( ) (A) 源代码(B)汇编语言代码(D) ASCII 码6、在Visual C++ 6.0环境下,C 源程序文件名的默认后缀是( )。

7、Microsoft Visual C++ 6.0中,C 语言可执行程序的扩展名是:( )或cpp (D) txt 8、C 程序由( )组成。

(A)子程序 (B) 主程序和子程序过程 9、C 程序的基本组成单位( )。

(A)数据类型 (B) 变量和常量 表达式 10、C 语言中主函数的个数是( )。

(A) 2个 任意个 (D) 10个 11、一个C 程序的执行是从( )(B)本程序文件的第一个函数开始,到本程序文件最后一个函数结束. (C)本程序文件的第一个函数开始,到本程序main 函数结束. (D)本程序的main()函数开始,到本程序文件的最后一个函数结束. 12、以下叙述正确的是(A)在C 语言程序中,main函数必须放在其他函数的最前面 (C)在C 语言程序中,只有main 函数才可单独进行编译 (D)每个后缀为.C 的C 语言源程序都应该包含一个main 函数13、设变量a 是整型,b 是实型,c 是双精度型,则表达式2+’a’+b*c值的数据类型是( )。

(A) int (B) float 14、以下选项中表示一个合法的常量是(说明:符号□表示空格) A) 9□9□15、以下选项中非法的字符常量是16、以下选项中,能表示逻辑值“假”的是17、下列关系表达式中,结果为“假”的是18、关于C 语言变量,以下说法不正确的是( ) (A) 变量名由程序员定义,必须符合标识符的命名规则。

(B) 变量是程序运行过程中其值可以改变的量。

C语言程序设计题库及答案(word文档良心出品)

C语言程序设计题库及答案(word文档良心出品)

第 1 次客观题作业一、单选题(共30题,每题 3 分) 1 .下面表示正确的是__A___。

A. C语言中的逗号是一种运算符B. 在C语言中,一行只能有一个语句C. C中的变量不区分大小写D. c 中的关键字可以做为变量名2 . 字符型常量在内存中存放的是__A ____ 代码值。

A. ASCIIB. 二进制C. 十进制D. 八进制3 .以下不正确的C语言标识符是(C )。

A .AB1 B._ab3 C.4ab D.a2_b4 .以下运算符中优先级最低的运算符是_D ____ 。

A .&& B.& C.|| D.=5 .在C语言中,要求运算数必须是整型的运算符是A.% B./ C.<D.!6 .C 语言程序的基本单位是__C ____ 。

A.程序行B.语句C.函数D.字符7 .将高级语言编写的程序翻译成目标程序的是___BA.解释程序B.编译程序C.汇编程序8 .以下选项中,与k=n++完全等价的表达式是__A_ A.k=n,n=n+1 B.n=n+1,k=n C.k=++n D.9 .下列(A )不属于结构化程序设计的循环结构。

A .Fo r B.WhileC.if-elseD .do-whileA___。

程序D.源程序k+=n+110 •以下叙述中错误的是 A 。

A. 用户所定义的标识符允许使用关键字B. 用户所定义的标识符应尽量做到“见名知意C. 用户所定义的标识符必须以字母或下划线开头D. 用户定义的标识符中,大、小写字母代表不同标识11 .若有输入语句seanf( %d%d%d &x,&y,&z);则不能使x值为5, y值为6,z值为7的输入是 A 0A. 5,6 ,7B. 5 回车换行6 7C. 5 6 7D. 5, 6, 712 .若i,j已定义为int类型,则下程序段中内循环体的总的执行次数是(B ) o for (i=3;i>0;i-- ) for (j=0;j<=4;j++ ) {...}A. 12B. 15C. 16D. 2013 .下列选项中,合法的C语言关键字是_D___oA. VARB. Cher c. Integer D. default14 . C语言中A oA. 能使用do-while语句构成的循环B. do-while语句构成的循环必须用break语句才能退出C. do-while语句构成的循环,当while语句中的表达式为非零时结束循环D. do-while语句构成的循环,当while语句中的表达式值小于零时结束循环15 .以下_D _______ 是高级语言。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
A) (y>=1)&&(y<=0) B) y>1||y<=0
C) y>=1.or.y<=0 D) y>=1||y<=0
正确答案是: D 你选择的答案是:D √
11、
设int a=3,b=2,c=1; 则如下四个表达式其值为1的是( )。
A) (a>b)==c B) b+c<a C) a!=b+c D) b+c>a
printf("%d,%d,%d\n",u,v,w);
则输出的结果是( )。
A) 50,16,10 B) 40,16,10 C) 40,8,10 D) 50,10,10
正确答案是: B 你选择的答案是:B √
18、
若有说明:int k=-1;,执行语句printf("%d,%u",k,k);后的输出结果是( )。
A) -1,-1 B) -1,32767 C) -1,32768 D) -1,65535
正确答案是: D 你选择的答案是:D √
19、
判断char型变量c的值是否为小写字母的正确表达式是( )。
A) 'a'<=c<='z' B) (c>=a)&&(c<=z)
C) (c>='a')&&(c<='z') D) ('a'<=c)AND('z'>=c)
正确答案是: A 你选择的答案是:A √
12、
在C语言中,复合赋值运算x*=y+5等价于( )。
A) x=y+5 B) x=(y+5)*(y+5) C) x=x*(y+5) D) x=x*y+5
正确答案是: C 你选择的答案是:C √
13、
以下选项中,与k=n++完全等价的表达式是( )。
A) k=n,n=n+1 B) n=n+1,k=n C) k=++n D) k+=n+1
2、
C语言程序的三种基本结构是( )。
A) 顺序结构、选择结构、循环结构 B) 选择结构、嵌套结构、循环结构
C) 递归结构、选择结构、循环结构 D) 顺序结构、递归结构、循环结构
正确答案是: A 你选择的答案是:A √
3、
下面均可用作C语言标识符的选项是( )。
A) else,include,NAME B) a-b,_ab,do
A) 0<x<5 B) x==1||x==2||x==3||x==4
C) x>0&&x<5 D) !(x<=0)&&!(x>=5)
正确答案是: A 你选择的答案是:A √
8、
若d为double型变量,则逗号表达式d=1,d+5,d++的值是( )。
A) 1.0 B) 6.0 C) 2.0 D) 7.0
正确答案是: C 你选择的答案是:C √
20、
若有条件表达式(x)?a++:b--,则下列表达式中能完全等价于表达式(x)的是( )。
A) (x==0) B) (x!=0) C) (x==1) D) (x!=1)
正确答案是: B 你选择的答案是:B √
1、
表达式1/2*(3+4+5)的值为( )。
A) 0 B) 6
正确答案是: A 你选择的答案是:A √
6、
设有语句 int a=5;,则执行了语句 a+=a-=a*=a;后,变量 a 的值是( )。
A) 5 B) 0 C) 25 D) -20
正确答案是: B 你选择的答案是:C ×
7、
若有说明语句:int x;,不能正确表达数学关系0<x<5的 C 语言表达式是( )。
正确答案是: B 你选择的答案是:B √
16、
以下程序段执行后的输出结果是( )。
int k=2,i=2,m;
m=(k+=i*=k); printf("%d,%d",m,i);
A) 8,6 B) 8,3 C) 6,4 D) 7,4
正确答案是: C 你选择的答案是:C √
17、
若有以下定义和语句:
int u=050,v=0x10,w=10;
正确答案是: A 你选择的答案是:B ×
14、
执行语句x=(a=3,b=a++)后,x,a,b的值依次为( )。
A) 3,4,2 B) 3,2,2 C) 2,3,2 D) 3,4,3
正确答案是: D 你选择的答案是:D √
15、
unsigned int类型的数据的取值范围是( )。
A) 0至255 B) 0至65535 C) -32768至32767 D) -128至127
A) 算术运算、赋值运算、关系运算 B) 算术运算、关系运算、赋值运算
C) 关系运算、赋值运算、算术运算 D) 关系运算、算术运算、赋值运算
正确答案是: B 你选择的答案是:B √
5、
表达式!x||y==z 等效于( )。
A) (!x)||(y==z) B) !(x||y)==z C) !(x||(y==z)) D) !((x||y)==z)
1、
只有一个源文件的C程序的执行总是从( )。
A) main函数开始,到main函数执行完结束
B) main函数开始,到源文件最后一个函数执行完结束
C) 源文件第一个函数开始,到源文件最后一个函数执行完结束
D) 源文件第一个函数开始,依次运行到main函数执行完结束
正确答案是: A 你选择的答案是:A √
A) 'a' B) "a" C) '\101' D) '\x41'
正确答案是: B 你选择的答案是:B √
3、
若x、i、j和k都是int型变量,则计算表达式x=(i=2,j=4,k=8)后,x的值是( )。
A) 2 B) 4 C) 8 D) 16
正确答案是: C 你选择的答案是:C √
4、
算术运算、赋值运算和关系运算的运算优先级按从高到低依次为( )。
正确答案是: A 你选择的答案是:D ×
9、
在C语言中,定义PI为一个符号常量,正确的定义PI 3.14;
C) #include PI 3.14 D) include PI 3.14
正确答案是: A 你选择的答案是:B ×
10、
下列表达式中,能正确表示y<=0或y>=1的关系是( )。
C) Int,a_b,_5ab D) 5ab,LONG,while
正确答案是: C 你选择的答案是:C √
第二章
1、
以下选项中,不正确的 C 语言实型常量是( )。
A) 12. B) 0.12 C) 5e6.5 D) .12
正确答案是: C 你选择的答案是:C √
2、
以下选项中,不正确的 C 语言字符型常量是( )。
相关文档
最新文档