文档库 最新最全的文档下载
当前位置:文档库 › C语言基础强化练习100题(含答案)

C语言基础强化练习100题(含答案)

C语言基础强化练习100题(含答案)
C语言基础强化练习100题(含答案)

C语言基础强化练习100题(含答案)

雷柳青编排

1.C语言程序的基本构成单位是____

A) 程序行 B) 语句 C) 函数 D) 字符

2.C语言程序的三种基本结构是____

A.顺序结构,选择结构,循环结构

B.递归结构,循环结构,转移结构

C.嵌套结构,递归结构,顺序结构

D.循环结构,转移结构,顺序结构

3.C语言规定,程序中各函数之间______

A) 既允许直接递归调用也允许间接递归调用

B) 不允许直接递归调用也不允许间接递归调用

C) 允许直接递归调用不允许间接递归调用

D) 不允许直接递归调用允许间接递归调用

4.C语言中可处理的文件类型是_____

A) 文本文件和数据文件 B)文本文件和二进制文件

C) 数据文件和二进制文件 D)数据代码文件

5.C语言可执行程序的开始执行点是________

A) 程序中第一条可执行语句 B) 程序中第一个函数

C) 程序中的main函数D) 包含文件中的第一个函数

6.C语言提供的合法的数据类型关键字是________

A)Double B) short C) integer D) Char

7.C语言中,运算对象必须是整型数的运算符是_______

A) % B) \ C) %和\ D) *

8.C语言中函数返回值的类型是由()决定。

A) return语句中的表达式类型 B) 调用函数的主调函数类型

C) 调用函数时临时 D) 定义函数时所指定的函数类型

9.C语言中数组名作为参数传递给函数,作为实参数的数组名被处理为_____。

A. 该数组的长度。

B. 该数组的元素个数。

C. 该数组中各元素的值。

D. 该数组的首地址。

10.C语言中数组下标的下限是________。

A.1

B.0

C.视具体情况

D.无固定下限

11.C语言中提供的合法关键字是____

A.swith

B.cher

C.Case

D.default

12.C语言中文件的存取方式是________。

A.顺序存取

B.随机存取

C.顺序存取.随机存取均可

D.顺序存取.随机存取均不可

13.C语言中最简单的数据类型包括______

A) 整型.实型.逻辑型B) 整型.实型.字符型

C) 整型.字符型.逻辑型 D) 整型.实型.逻辑型.字符型

14.sizeof(float)是______

A) 一种函数调用B) 一个不合法的表示形式

C) 一个整型表达式D) 一个浮点表达式

15.x.y.z被定义为int型变量,若从键盘给x.y.z输入数据,正确的输入语句是______

A) input x,y,z; B) scanf("%d%d%d",&x,&y,&z);

C) scanf("%d%d%d",x,y,z); D) read("%d%d%d",&x,&y,&z);

16.表达式:10!=9的值是_____

A) true B) 非零值C) 0 D) 1

17.表示关系x<=y<=z的c语言表达式为________

A) (X<=Y)&&(Y<=Z) B) (X<=Y)AND(Y<=Z)

C) (X<=Y<=Z) D) (X<=Y)&(Y<=Z)

18.程序片段:在TC20中, int i=65536; printf("%d",i);的输出结果是____

A) 65536 B) 0 C) 有语法错误,无输出结果 D) -1

19.当调用函数时,实参是一个数组名,则向函数传送的是____

A) 数组的长度 B) 数组的首地址 C) 数组每一个元素的地址 D) 数组每个元素中的值

20.对于基本类型相同的两个指针变量之间,不能进行的运算是_______

A) < B) = C) + D) -

21.假定int类型变量占用两个字节,其有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是______

A) 3 B) 6 C) 10 D) 20

22.假定有以下变量定义: int k=7 ,x=12; 则能使值为3的表达式是_______

A x%=(k%=5)

B x%=(k-k%5)

C x%=k-k%5

D (x%=k)-(k%=5)

23.请读程序片段(字符串内没有空格): printf("%d",strlen("ATS012\1\\\017"));的输出结果是________

A) 11 B) 10 C) 9 D) 8

24.请选出合法的C语言赋值语句_____

A) a=b=58; B) i++=5; C) a=58,b=58 D) k+5=int(a+b);

25.若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是 ___

A) -3 B) 9 C) -12 D) 6

26.若int类型占两个字节,则以下语句输出为________。

int k=-1; printf("%d,%u",k,k);

A.-1,-1

B.-1,65536

C.-1,32768

D.-1,65535

27.若变量a是int类型,并执行了语句:a=‘A'+1.6;,则正确的叙述是 _____

A) a的值是字符C B) a的值是浮点型

C) 不允许字符型和浮点型相加D) a的值是字符‘A’的ASCII值加上1

28.若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为 _______

A) a<>0 B) !a C) a=0 D) a

29.若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是_____

A)1 B)2 C)2.0 D)2.5

30.若有定义:int a=8,b=5,c;,执行语句c=a/b+0.4;后,c的值为______

A) 1.4 B) 1 C) 2.0 D) 2

31.若有定义和语句: char s[10]:s="abcd";printf("%s",s); 则结果是______(以下u代表空格)

A) 输出abcd B) 输出a C) 输出abcduuuuu D) 编译不通过

32.若有以下程序段, int c1=1,c2=2,c3; c3=1.0/c2*c1; 则执行后,c3中的值是 _____

A) 0 B) 0.5 C) 1 D) 2

33.若有以下定义: char a; int b; float c; double d; 则表达式a*b+d-c值的类型为____

A) float B) int C) char D) double

34.若有以下定义和语句 char c1='b',c2='e'; printf("%d,%c",c2-c1,c2-'a'+"A"); 则输出结果是:_____

C语言基础编程题

5-1求幂之和(15分) 本题要求编写程序,计算sum=2^1+2^2+2^3+\cdots+2^n sum=21+22+23++2n。可以调用pow函数求幂。 输入格式: 输入在一行中给出正整数n n(\le≤10)。 输出格式: 按照格式“result=计算结果”输出。 输入样例: 输出样例: #include<> #include<> intmain() { inti,n,sum=0; scanf("%d",&n); for(i=1;i<=n;i++) { sum=sum+pow(2,i); } printf("result=%d\n",sum); return0; } 5-2近似求PI(15分) 本题要求编写程序,根据下式求\piπ的近似值,直到最后一项小于给定精度eps。

\frac{\pi}{2}=1+\frac{1!}{3}+\frac{2!}{3\times5}+\frac{3!}{3\times5\times7}+\ cdots+\frac{i!}{3\times5\times\cdots\times(2\timesi+1)}+\cdots2π=1+31!+3×52!+3×5×73!++3×5××(2×i+1)i!+ 输入格式: 输入在一行中给出精度eps,可以使用以下语句来读输入: 输出格式: 在一行内,按照以下格式输出\piπ的近似值(保留小数点后5位): 输入样例: 输出样例: #include<> #include<> intmain() { doublea=1,b=3,i=1,j=3; doubleeps,m=1,sum=0; scanf("%le",&eps); while(m>eps) { m=a/b; sum=sum+m; i=i+1; j=j+2; a=a*i; b=b*j; } printf("PI=%.5lf\n",2+2*sum);

C语言基础知识_测试题

C语言程序设计基础测试题 一、单选 [1] 下面叙述中错误的是____。 A. 复合语句中定义的函数只在该复合语句中有效 B. return( )语句中的括号中,可以是变量,常量或有确定值的表达式 C. 形式参数也是局部变量 D. 主函数中定义的变量在整个程序中都是有效的 [2]下列说法中正确的是____。 A.带参数的宏定义中的参数是没有类型的 B.宏展开将占用程序的运行时间 C.宏定义命令是C语言中的一种特殊语句 D.使用#include命令包含的头文件必须以“.h"为后缀 [3.] 若函数的形参为一维数组,则下列说法中正确的是____。 A.调用函数时的对应实参必为数组名 B.形参数组可以不指定大小 C.形参数组的元素个数必须等于实参数组的元素个数 D.形参数组的元素个数必须多于实参数组的元素个数 [4]. 系统的标准输出设备是____。 A.键盘 B.硬盘 C.内存 D.显示器 [5] 下面叙述中正确的是____。 A.全局变量在定义它的文件中的任何地方都是有效的 B.全局变量在程序的全部执行过程中一直占用内存单元 C. C语言的switch语句中case后可为常量或表达式或有确定值的变量及表达式 D. 说明函数时必须明确其参数类型和返回类型 [6]. C程序的基本结构单位是____。 A.文件 B.语句 C.函数 D.表达式 [7] 对于定义,char *aa[2]={"abcd","ABCD"},选项中说法正确的是____。 A.aa数组元素的值分别是"abcd"和"ABCD" B.aa是指针变量,它指向含有两个数组元素的字符型一维数组 C.aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址 D.aa数组的两个元素中各自存放了字符'a'和'A'的地址 [8]. 任何一个C语言的可执行程序都是从____开始执行的。 A.程序中的第一个函数 B.main( )函数的入口处

C语言习题集(基础篇)

《C语言程序设计》习题篇 第一章C语言基础知识 1.1 选择题 1. 以下不是C语言的特点的是()。 A、语言简洁紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件操作 D、C语言移植性好 2.下列字符序列中,不可用作C语言标识符的是()。 A.abc123 B.no.1 C._123_ D._ok 3.正确的C语言标识符是()。 A._buy_2 B.2_buy C.?_buy D.buy? 4. 请选出可用作C语言用户标识符的一组标识符()。 A.void B.a3_b3 C.For D.2a define _123 -abc DO WORD IF Case sizeof 5.下列符号中,不属于转义字符的是()。 A.\\ B.\0xAA C.\t D.\0 6.不属于C语言关键字的是()。 A.int B.break C.while D.character 7.是C语言提供的合法关键字的是()。 A.Float B.signed C.integer D.Char 8.以下不能定义为用户标示符的是()。 A.scanf B.V oid C._3com_ D.int 9.一个C程序是由()。 A.一个主程序和若干子程序组成 B.一个或多个函数组成 C.若干过程组成 D.若干子程序组成 10. C语言程序的基本单位是()。 A.程序行B.语句C.函数D.字符 11.下列说法中,错误的是()。 A.每个语句必须独占一行,语句的最后可以是一个分号,也可以是一个回车换行符号B.每个函数都有一个函数头和一个函数体,主函数也不例外 C.主函数只能调用用户函数或系统函数,用户函数可以相互调用

C语言基本练习题

1. 某城市出租车收费标准如下:起步里程是3 公里,起步费是10 元;超出起步里程后每公里 1.5 元。编写程序,输入行驶里程(公里) ,计算并输出乘客应支付的车费(元)。 #include int main() { double n; scanf("%lf",&n); if(n<=3) { printf("%d\n",10); } else { printf("%.2f\n",1.0*(10+(n-3)*1.5)); } return 0; } 2. 某城市月用水量收费标准如下:每月使用吨数小于等于15 吨的,每吨收费2.5 元;每月使用吨数超过15 吨的,采用分段计费:超过部分每吨 3 元。编写程序,输入使用吨数,计算并输出用户水费(元) 。 #include int main() { double n,x; scanf("%lf",&n); if(n<=15) {x=n*2.5; } else { x=15*2.5+(n-15)*3.0; } printf("%.2f\n",x); return 0; } 3. 求解简单表达式。输入一个形式如:"操作数运算符操作数"的四则运算表达式,输出运算结果,要求使用switch 语句( if 语句)编写。#include #include int main() { double s1,s2; char op; scanf("%lf %c %lf",&s1,&op,&s2); switch(op) {case '+':printf("%.2f\n",s1+s2);break; case '-':printf("%.2f\n",s1-s2);break; case '*':printf("%.2f\n",s1*s2);break; case '/': if(fabs(s2)

C语言基础题及参考答案

第一单元程序设计和C语言 一、选择题 1.C语言的基本构成单位是: A 。 A. 函数 B. 函数和过程 C. 超文本过程 D. 子程序 2.一个C语言程序总是从 B 开始执行。 A. 主过程 B. 主函数 C. 子程序 D.主程序 3.C语言的程序一行写不下时,可以 D 。 A. 用逗号换行 B. 用分号换行 C. 在任意一空格处换行 D. 用回车符换行 4.以下叙述不正确的是: C 。 A. 在C程序中,语句之间必须要用分号";"分隔 B. 若a是实型变量,C程序中a=10是正确的,因为实型变量中允许存放整型数 C. 在C程序中,无论是整数还是实数都能正确无误地表示 D. 在C程序中,%是只能用于整数运算的运算符 5.以下不正确的C语言标识符是 D 。 A. ABC B. abc C. a_bc D. ab.c 6.下列字符串是标识符的是:。 ? A. _HJ B. 9_student C. long D. LINE 1 7.以下说法中正确的是: C 。 A. C语言程序总是从第一个定义的函数开始执行 B. 在C语言程序中,要调用的函数必须放在main()函数中定义 C. C语言程序总是从main()函数开始执行 D. C语言程序中的main()函数必须放在程序的开始部分 8.不合法的常量是: B 。 A. ‘\2’ B. "" C. ‘3’ D. ‘\483’ 9.已知各变量的类型说明如下,则以下不符合C语言语法的表达式是:。 int k,a,b; unsigned long w=5; double x=1.422; A. x%(-3) B. W += -2 C. k=(a=2,b=3,a+b) D. a+=a=+(b=4)*(a=3) 10.在C语言中,字符型数据在内存中以 D 形式存放。 A. 原码 B. BCD码 C. 反码 D. ASCII码 11.若有定义:int a=7; float x=2.5; y=4.7; 则表达式x+a%3*(int)(x+y)%2/4的值是: A 。

C语言编程基础考试试题

C语言编程基础考试试题 文档名称文档密级 C语言编程基础考试 [考前说明]本题目中不考虑头文件引用问题(假定已经包含正确的头文件),C 语言的标 准函数都可用;如果不特别说明, 假定程序运行环境为:操作系统Windows 2000, VC6.0编译环境,缺省为四字节对齐, X86(80586)CPU处理器(32位小字节序处理器). 一、单选题 1、给出以下定义: char acX[ ]= "abcdefg"; char acY[ ]= {'a','b','c','d','e','f','g'}; 则正确的叙述为( ) A) 数组acX和数组acY等价 B) 数组acX和数组acY的长度相同 C) 数组acX的长度大于数组acY的长度 D) 数组acX的长度小于数组Y的长度 2、 void example(char acHello[]) { printf("%d", sizeof(acHello)); return; } void main()

{ char acHello[] = "hello"; example(acHello); return; } 的输出是( ) A 4 B 5 C 6 D不确定 3、以下叙述中不正确的是( ) A) 在不同的函数中可以使用相同名字的变量 B) 函数中的形式参数是在栈中保存 C) 在一个函数内定义的变量只在本函数范围内有效 D) 在一个函数内的复合语句中定义的变量在本函数范围内有效(复合语句指函数 中的成对括号构成的代码) 4、设有如下定义: unsigned long pulArray[] = {6, 7, 8, 9, 10}; unsigned long *pulPtr; 则下列程序段的输出结果为( ) 1 文档名称文档密级 pulPtr = pulArray; *(pulPtr + 2) += 2; printf ("%d,%d\n", *pulPtr, *(pulPtr + 2)); A)8,10 B)6,8 C)7,9 D)6,10

C语言基础练习100题(含标准答案)

C语言基础练习100题(含答案) 雷柳青编排 1、下面程序的输出是________ #include 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=b 2、在下列选项中,不正确的赋值语句是________. A) ++t。B) n1=(n2=(n3=0))。 C) k=i=j。D) a=b+c=1。 3、下面合法的C语言字符常量是__________. A) '\t' B) "A" C) 65 D) A 4、字符(char)型数据在微机内存中的存储形式是____. A) 反码B) 补码C) EBCDIC码D) ASCII码 5、设int a=12,则执行完语句a+=a-=a*a后,a的值是________ A) 552 B) 264 C) 144 D) -264 6、执行下面程序中的输出语句后,输出结果是______. #include void main() {int a。 printf("%d\n",(a=3*5,a*4,a+5))。 } A) 65 B) 20 C) 15 D) 10 7、下面程序的输出是__________. #include void main() {int x=023。 printf("%d\n",--x)。 } A) 17 B) 18 C) 23 D) 24 8、下面程序的输出是___________. #include void main() {char ch1,ch2。 ch2='A'+'6'-'3'。 printf("%d,%c\n",ch1,ch2)。 } A) 67,D B) B,C C) C,D D) 不确定的值 9、以下程序的输出结果是________. #include 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 10、若x和y都是int型变量,x=100,y=200,且有下面的程序片段: printf("%d",(x,y))。 上面程序片段的输出结果是_______. A) 200 B) 100 C) 100 200 D) 输出格式符不够,输出不确定的值 11、阅读下面的程序 #include void main() { int i,j。 i=010。 j=9。 printf("%d,%d",i-j,i+j)。 } 则程序的运行结果是________. A) 1,19 B) -1,19C) 1,17 D) -1,17 12、阅读下面的程序 #include void main() { int i,j,m,n。 i=8。j=10。 m=++i。 n=j++。 printf("%d,%d,%d,%d",i,j,m,n)。 } 程序的运行结果是_________. A) 8,10,8,10 B) 9,11,8,10

C语言编程基础习题答案

《C语言编程基础(第2版)》习题答案 前言 《C语言编程基础(第2版)》每章后面都安排了一定数量的习题,这有利于读者理解、消化和掌握各单元的学习内容。习题中,除了有填空题、选择题、回答问题等适合掌握基本概念的题型外,大部分是分析程序运行结果和要求编写实用程序,这有利于读者训练编程技巧和增强编程能力。应广大读者要求,特别是一线教学老师的要求,我们给出全部习题答案,供读者参考。编程答案只是实现题目算法要求的一种,并不一定是最好的。希望读者自己多做思考,利用多种方法进行编程,用以提高自己的程序设计水平和锻炼自己的创新能力。由于作者水平所限,错误和不当之处在所难免,恳请批评指正。 习题一 1、填空题。 ⑴ C语言程序由__函数__组成,其中必须有且只能有一个名为_main__的函 数。C程序的执行从___名为main的主__函数开始。 ⑵每个C语句必须以__分__号结束。 ⑶标识符只能由_英文字母_、__数字_和_下划线__三类符号构成,而且标 识符的第一个字符必须是__英文字母__或__下划线__。 ⑷关键字是指___C语言编译系统所固有的、具有专门意义的标识符___。 ⑸ C程序中,注释的内容应放在__/*_和_*/__符号之间。 2、选择题。 ⑴下面合法的C语言标识符是___ C ___。 ⑵ C语言中主函数的个数是___ A______。 ⑶以下有关注释的描述中,错误的是___ C ___。 ⑷ C程序中,main函数的位置____ D___。 3、指出并改正下面程序中的错误。 ⑴ main 应为 main() ⑵应在本程序最后加上大括号 }。 ⑶语句结束应有分号。如: int a,b; a=1;b=2; printf(%d,a+b); 、分析下列程序,写出运行结果。4. ⑴该程序是计算两个整数a和b的乘积并赋值给c,运行结果为: c=30 ⑵该程序输出一个字符串和一排星号,运行结果为:

c语言基础题

“C语言程序设计”平时作业(二) 填空题: (1)已知:int a[3] = {1, 2, 3}; 则 *(a+1)+2 的值为 ___【1】__4_。 (2)下面程序段的输出结果是___【2】___BC。 int a=1; s witch(a<=1) { case 0:printf("A"); case 1:printf("B"); default:printf("C"); } (3)以下程序运行后的输出结果是____【3】___3。 main() {int a=5,b=4,c=3,d=2; if (a>b>c) printf(“%d\n”,d); else if( (c-1 >=d) = =1 ) printf( “%d\n”,d+1); else printf( “%d\n”,d+2); } (4)下面程序段的输出结果是___【4】___ 3 int a[][3]={{1,2,3},{1,2,3},{1,2,3}}; int s=0,m,n; for(m=0;m<=2;m++) for(n=0;n<=3;n++) { if (a[m][n]= =2) break; s+= a[m][n]; } printf(“%d”,s); (5)以下程序运行后的输出结果是____【5】____24 #include int f ( int ); void main( ) { int a = 4; printf(“%d\n”, f(a) ); } int f( int a ) { return ( a= =0 ) ? 1: a*f(a-1);} (6)下列函数用起泡法对一维整数数组中的数据进行从小到大的排序,请填空。

C语言-基本选择题及答案解析

计算机程序设计基础(C语言) 单项选择练习题 说明:带*号的对非信息学院的同学不作要求。 一、基本概念 1. C语言程序是由 C 构成的。 A)一些可执行语言 B)main函数 C)函数 D)包含文件中的第一个函数2.(A)是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 3.C语言程序从 C开始执行。 A) 程序中第一条可执行语句 B) 程序中第一个函数 C) 程序中的main函数 D) 包含文件中的第一个函数 4.C语言程序从main()函数开始执行,所以这个函数要写在_D___。 A) 程序文件的开始 B) 程序文件的最后 C) 它所调用的函数的前面 D) 程序文件的任何位置 5、以下说法中正确的是(C)。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 6. 下列方法中错误的是(D)。 A.主函数可以分为两个部分:主函数说明部分和主函数体。 B.主函数可以调用任何非主函数的其它函数。 C.任何非主函数可以调用其它任何非主函数。 D.程序可以从任何非主函数开始执行。 7. 下列说法错误的是:(B) A.C程序运行步骤是编辑、编译、连接、执行。 B.C语言的变量名必须用小写,常量用大写。 C.C语言的三种基本结构是顺序、选择、循环。 D. C程序一定由函数构成的。 8.下列关于C语言的说法错误的是( B )。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行

C语言基础测试题

C语言基础测试题 一选择题(每题2分) 1. C语言程序的基本单位是( A )。 A. 函数 B. 过程 C. 语句 D. 子程序 2. 对于whil e语句,错误的说法是( C )。 A.用条件控制循环体的执行次数 B.循环体至少要执行一次 C.循环体有可能一次也不执行 D.循环体中可以包含若干条语句 3. 定义语句int a=3;则执行语句a+=a-=a*a后,变量a的值是(C)。 A.3 B.0 C.9 D.-12 4. 关于局部变量和全局变量的叙述中,错误的是(A)。 A.全局变量的重复赋值不会影响局部变量的使用。 B.主函数中定义的变量在整个程序中都是有效的 C.形式参数也是局部变量。 D.不论是局部变量还是全局变量,都以最近的一次赋值为准。 5. 已知:int a=13;那么:printf("%02d",a)结果是(A)。 A.13 B.013 C.01 D.03 6. 在main函数中调用scanf给变量a赋值的方法是错误的,原因是()。 int *p,a; p=&a; printf("input a:"); scanf("%d",*p); A. *p表示的是指针变量p的地址 B. *p表示的是变量a 的值,而不是变量a的地址 C. *p表示的是指针变量p的值 D. *p只能用来说明p是一个指针变量 7.若有以下定义,则对a数组元素地址的正确引用是()。 A.a+5 B.*a+1 C.&a+1 D.&a[0] 8. 若int k=4,a=3,b=2,c=1;则kb); A. 1,3 B. 1,4 C. 2,3 D. 2,4 二.填空题。(每空3分) 1.写一个宏MIN,这个宏输入两个参数并返回较小的一个_________。2.main函数中:for(int i=0; i<3; i++){printf("%d",i);}输出结果是_________。3.设int a=9,b=20;则printf("%d,%d",a--,--b);的输出结果是_________。

(完整版)C语言基础知识综合练习题

一、C语言基本知识和基本语句 (一)选择题 1.设a,b和c都是int型变量,且a=3,b=4,c=5则下面的表达式中,值为零的表达式是()。 A)‘a’&&’b’ B) a<=b C) a || b+c&&b-c D) ! ((a= ‘A’ && ch <=‘Z’) ? ( ch + 32):ch,则表达式ch的值是()字符。 A) A B) a C) Z D) z 3.若x和y都是int 型变量,x=100,y=200,且有程序段:printf (“%d”,(x,y));则输出结果是()。 A) 200 B)100 C) 100,200 D)输出格式不够,输出不确定的值4.C语言中最简单的数据类型包括()。 A)整型、实型、逻辑型 B) 整型、单精度型、双精度、字符型 C) 整型、字符型、逻辑型 D) 整型、实型、逻辑型、字符型5.C语言中,运算对象必须是整型的运算符是()。 A)% B) / C) % 和 / D) ** 6.数学关系x≥y≥z ,它对应C语言表达式是()。 A)(x>=y)&& (y>=z ) B) (x>=y) AND (y>=z ) C) (x>=y>=z) D) (x>=y) & (y>=z ) 7.以下说法中正确的是()。 A)C语言程序总是从第一个定义的函数开始执行 B) 在C语言程序中,要调用的函数必须在main()函数中定义 C) C语言程序总是从main()函数开始执行 D) C语言程序中的main()函数必须放在程序的开始部分 8.设int x=10,y=3,z;则语句printf (“%d\n”,z=(x%y,x/y));的输出结果是()。 A) 1 B) 0 C) 4 D) 3 9.C语言表达式10 != 9 的值是()。 A)true B) 非零值 C) 0 D) 1 10.合法的C语言字符常量是()。 A)’\t’B) “A” C) 65 D) A 11.若int类型数据占两个字节,则下列语句的输出为()。 int k = -1 ; printf (“%d,%u\n ”,k,k); A)- 1,- 1 B) – 1,32767 C) –1,32768 D) –1,65535 12.组成C语言程序的是()。 A)子程序 B) 过程 C) 函数 D) 主程序和子程序

C语言基础练习题含答案

第一章C语言基础知识 1.1 选择题 1. 以下不是C语言的特点的是()。 A、语言简洁紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件操作 D、C语言移植性好 2.下列字符序列中,不可用作C语言标识符的是()。 A.abc123 B.no.1 C._123_ D.-_ok 3.正确的C语言标识符是()。 A._buy_2 B.2_buy C._buy D.buy 4. 请选出可用作C语言用户标识符的一组标识符()。 A.void B.a3_b3C.For D.2a define _123 -abc DO WORD IF Case sizeof 5.下列符号中,不属于转义字符的是()。 A.\\ B.\0xAA C.\t D.\0 6.不属于C语言关键字的是()。 A.int B.break C.while D.character 7.是C语言提供的合法关键字的是()。 A.Float B.signed C.integer D.Char 8.以下不能定义为用户标示符的是()。

A.scanf B.V oid C._3com_ D.int 9.一个C程序是由()。 A.一个主程序和若干子程序组成 B.一个或多个函数组成 C.若干过程组成 D.若干子程序组成 10. C语言程序的基本单位是()。 A.程序行B.语句C.函数D.字符 11.下列说法中,错误的是()。 A.每个语句必须独占一行,语句的最后可以是一个分号,也可以是一个回车换行符号 B.每个函数都有一个函数头和一个函数体,主函数也不例外C.主函数只能调用用户函数或系统函数,用户函数可以相互调用 D.程序是由若干个函数组成的,但是必须有、而且只能有一个主函数 12.以下说法中正确的是()。 A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行 D.C语言程序中的main( )函数必须放在程序的开始部分13. C编译程序是()。 A.C程序的机器语言版本 B.一组机器语言指令 C.将C源程序编译成目标程序 D.由制造厂家提供的一套应用软件

C语言基础题

第一单元C语言概述 一、选择题 1、C语言中主函数的个数为()个。 A)1 B)2 C)无穷个D)任意个 2、以下关于C语言描述错误的是()。 A)一个C程序总是从main函数开始执行 B)每个语句和数据声明的最后必须有一个分号 C)C语言的注释符是以“/*”开始并以“*/”结束的 D)一个C程序可以包含多个main函数 3、C 语言源程序文件后缀为()。 A).EXE B).OBJ C).C D).ASM 4、C语言是由()组成的。 A)子程序B)主程序与子程序C)函数D)过程 5、C语言属于()语言 A)机器语言B)汇编语言C)高级语言D)面向对象语言 第二单元C语言基础 一、选择题 1、C语言中普通整型变量int在内存中占()字节。 A)1 B)2 C)3 D)4 2、下列不是C语言基本数据类型的是()。 A)字符型B) 整型 C) 浮点型D) 结构体 3、有关自增、自减运算,以下只有()是正确的。 A) ---f B) ++78 C) a—b++ D) d++ 4、已知A=7.5,B=2,C=3.6,表达式(A>B && C>A) || (AB)的值是()。 A)0 B)10 C)1 D)5 5、若有x=1,y=2,z=3,则表达式(x

A)1 B)2 C)3 D)0 6、判断char型变量ch是否为大写字母的正确表达式是()。 A) ‘A’<=ch<=‘Z’B) (ch>=‘A’)&(ch<=‘Z’) C) (ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch) 7、判断整型变量digit是否为数字的正确表达式是()。 A) ‘0’<=ch<=‘9’B) (ch>=‘0’)&(ch<=‘9’) C) (ch>=‘0’)&&(ch<=‘9’) D) (‘0’<= ch)AND(‘9’>= ch) 8、一个C程序的执行是从()。 A)本程序的main函数开始,到main函数结柬 B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C)本程序的main函数开始,到本程序文件的最后一个函数结束 D)本程序文件的第一个函数开始,到本程序main函数结束 9、在以下标识符中,合法的是() A)if B)0xy C)_xy D)case 10、C语言中各种类型的数据其实决定了占用内存的字节数。float占()。 A)一字节B)二字节C)四字节D)八字节 11、下列各选项中,()是有效的标识符。 A)ab B)3day C)day-3 D)#abc 12、以下叙述正确的是()。。 A) 在C程序中,每行只能写一条语句 B) 若a是实型变量,C程序中不允许a=10这种赋值。 C) 在C程序中,%是只能用于整数运算的运算符 D) 在C程序中,无论是整数还是实数,没有什么区别 13、有输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,则正确的数据输入方式是()。 A)132↙B)1,3,2↙ C)a=1 b=3 c=2↙D)a=1,b=3,c=2↙ 14、设整型变量a为5,使b不为2的表达式是()。 A)b = a/2 B)b = 6-(--a) C)b=a%2 D)b=a>3?2:1

C语言基础题及答案

1、一个C正确答案: A]。 A)必须有一个主函数 B)可以有多个主函数 C)必须有主函数和其他函数 D)可以没有主函数 2、关于C正确答案: B]。 A)C程序的第一个函数称为主函数,程序从该函数开始运行。 B)C程序的主函数即是main函数,程序从该函数开始运行。 C)C程序可以有多个主函数,程序从第一个主函数开始运行。 D)C程序可以没有主函数,程序从第一个函数开始运行。 3、C程序中,return正确答案: D]。 A)终止程序运行 B)返回到上层循环 C)返回到外层结构 D)返回到上层函数 4、C语言程序的3正确答案: A]。 A)顺序结构,选择结构,循环结构 B)递归结构,循环结构,转移结构 C)嵌套结构,递归结构,顺序结构 D)循环结构,转移结构,顺序结构 5、以下对C正确答案: A]。 A)C程序总是从main()函数开始执行。 B)C程序可以从程序中的任何函数开始执行。 C)C程序总是从第一个定义的函数开始执行。 D)C程序中的main()函数必须放在程序的开始部分。 6、关于C程序第1正确答案: D]。A)#include stdio.h B)#include 'stdio.h' C)#include (stdio.h) D)#include 7、关于C正确答案: A]。 A)编辑→保存→编译→运行 B)编译→编辑→运行→保存 C)保存→运行→编辑→编译 D)运行→编译→保存→编辑

8、下列的哪个不是C正确答案: D]。 A)while B)auto C)break D)printf 9、下列的哪个不是C正确答案: C]。 A)+ B)% C)= D)- 10、下列的哪个不是C正确答案: C]。 A)>= B)<= C)= D)!= 11正确答案: D]。 A)代码如果没有缩排是错误的 B)程序总是从main函数开始执行 C)注释/*和*/不可以嵌套 D)C源文件经过编译先生成目标文件,再经过连接才能生成可执行文件 12正确答案: B]。 A)3ab B)_isw C)float D)b-b 13正确答案: B]。 A)INT B)int C)year2009 D)my_program 14、以下选项中,合法的C正确答案: D]。 A)b-a B)5ab C)int D)_5ab 15、以下选项中,三种类型都是C正确答案: C]。

C语言基础练习题

C语言基础练习题 1. 从键盘上输入两个整数,求出它们的和。 2. 已知三角形的底和高,求出三角形的面积。 3. 从键盘上输入三角形的底和高,求出三角形的面积。 4. 已知三角形的三边长,求出三角形的面积。 5. 已知二元一次方程的三个系数,求方程的一个根。 6. 编程实现符号函数。当x <0 ,则sgn(x)=-1, 当x >0 ,则sgn(x)=+1, 当x =0 ,则sgn(x)=0。 7. 从键盘上输入数字星期,在屏幕上显示英文星期。 8. 从键盘输入三角形的三边长,判断出这三边能否构成三角形。 9. 从键盘输入三个整数,将这三个数按从大到小的顺序排列起来。 10. 从键盘输入二个整数,求出最大值。 11. 从键盘输入三个实数,求出最大值。 12. 从键盘输入三个整数,在一个程序中既要求出最大值,还要求出最大值。 13. 使用for循环编程求出1到100的和。 14. 使用当循环for循环编程求出1到100的和。 15. 使用直到循环编程求出1到100的和。 16. 从键盘输入10个实数,求出最大值。(画N-S流程图) 17. 从键盘输入10个整数,求出最小值。 18. 从键盘输入10个整数,求出它们的平均值。(画N-S流程图) 19. 编程在屏幕上输出具有7行的正三角形。 20. 求出8的阶乘。 21. 从键盘输入20个整数,求出不大于90所有数的和。(画N-S流程图)

22. (画N-S流程图)从键盘输入一个整数,判断这个数是否为素数。 23. 从键盘输入20个整数,求出它们的和。(画N-S流程图,使用数组) 24.从键盘输入20个整数,求出它们的平均值及比平均值大的数。(使用数组) 25. 已知五个整数3,-5,8,2,9,求出最大值。(画N-S流程图 (使用数组) 26.从键盘输入20个整数,求出它们的最小值,并求最小值所在位置。 27. 已知五个整数3,-5,8,2,9,按从大到小的顺序排列起来(画N-S流程图,使用数组) 28. 从键盘输入10个实数,按从大到小的顺序排列起来(画N-S流程图,使用数组)。 29. 某班有43名学生,某门考试结束后,请按10段统计出各分数段的人数(画流程图)。 30. 从键盘上输入两个字符串,并将它们交换后输出。 31. 已知五个字符串"China","American","Japan","France","Australia",编程将它们按从小到大的顺序排列起来。 32. 使用指针将a数组中的五个数依次输出。

c语言程序基础练习题道附答案

1.下列四组选项中,均不是C语言关健字的选项是( A )。 A) define B) gect C) include D) while IF char scanf go type printf case pow 2.下面四个选项中,均是合法整型常量的选项是( A )。 A)160 B)-0xcdf C) -01 D)-0x48a -0xffff 01a 986,012 2e5 011 0xe 0668 0x 3.下面四个选项中,均是不合法的转义符的选项是( B )。 A) '\"' B) '\1011' C) '\011' D) '\abc' '\\' '\' '\f' '\101' 'xf' '\A' '\}' 'x1f' 4.下面不正确的字符串常量是( A )。 A)'abc' B)"12'12" C)"0" D)" " 5.以下选项中不合法的用户标识符是( A )。 A)abc.c B)file C)Main D)PRINT 6.C语言提供的合法关键字是( D )。 A) swith B) cher C) Case D)default 7.下列标识符组中,合法的用户标识符为 A A)_0123与ssiped B)del-word与signed C)list与*jer D) keep%与wind 8.在C语言中,逻辑值"真"的表示是用( C )。 A) true B) 整型值0 C)非另整型值 D) T 9若有以下定义 char s='\092'; 则该语句( b ) A)使s的值包含一个字符 B)定义不合法,s的值不确定 C)使s的值包含4个字符 D)使s的值包含3个字符 10设C语言中,int类型数据占2个字节,则float类型数据占( D )个字节。 A)1 B)2 C)8 D)4 11已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'+'6'-'3'后,c2中的值为( A )。 A)D B)68 C)不确定的值 D)C 12逻辑运算符两侧运算对象的数据类型是 ( D )。 A) 只是0或1 B) 只能是0或非0正数 C) 只能是整型或字符型数据 D) 可以是任何合法的类型数据 13TURBO C中int类型变量所占字节数是( B )。

【专业课】《c语言基础》习题及答案

《C语言基础》习题及答案 一、选择题 1.设a的值为15,n的值为5,则进行a%=(n%=2)运算后,a的值为()。 A.0 B.1 C.12 D.6 2.设有类型说明 unsigned int a=65535; ,按%d格式输出a的值,其结果是(B)。 A.65536 B.-1 C.1 D.-32767 3.下列运算符中优先级最高的是(C)。 A.?: B.&& C.+ D.!= 4.以下程序输出的结果是(A)。 main( ) { int a= -1,b=4,k; k=!((++a<0)&&! (b--<0)); printf("%d%d%d\n",k,a,b); } A.104 B.103 C.013 D.004 5.下面的程序执行后,变量a的值是(B)。 #define SQR(x) x*x main() { int a=10,k=2,m=1; a/=SQR(k+m)/SQR(k+m); printf("%d\n",a); } A.10 B.1 C.9 D.0 6.设有int i;则表达式i=1,++i,++i||++i,i的值为(C)。 A.1 B.2 C.3 D.4 7.设有int i;则表达式(i=1,i=10)?i++||++i:++i的值为(A)。 A.1 B.2 C.3 D.10 8.设有int a[]={10,11,12},*p=&a[0];则执行完*p++;*p+=1;后a[0],a[1],a[2]的值依次是(C)。 A.10,11,12 B.11,12,12 C.10,12,12 D.11,11,12 9.设有int i, j, k; 则表达式i=1,j=2,k=3, i&&j&&k 的值为 ( A )。 A.1 B.2 C.3 D.0 10.设有说明int s[2]={0,1},*p=s; 则下列错误的C语句是 ( A )。 A.s+=1; B.p+=1; C.*p++; D.(*P)++;

C语言基础编程题

C语言基础编程题标准化管理处编码[BBX968T-XBB8968-NNJ668-MM9N]

5-1求幂之和(15分) 本题要求编写程序,计算sum=2^1 + 2^2 + 2^3 + \cdots + 2^n sum=21+22+23++2n。可以调用pow函数求幂。 输入格式: 输入在一行中给出正整数n n(\le≤10)。 输出格式: 按照格式“result = 计算结果”输出。 输入样例: 输出样例: #include<> #include<> int main() { int i,n,sum=0;

scanf("%d",&n); for(i=1;i<=n;i++) { sum=sum+pow(2,i); } printf("result = %d\n",sum); return 0; } 5-2近似求PI(15分) 本题要求编写程序,根据下式求\piπ的近似值,直到最后一项小于给定精度eps。 \frac{\pi}{2}=1+\frac{1!}{3}+\frac{2!}{3\times 5} + \frac{3!}{3\times 5\times 7}+ \cdots +\frac{i!}{3\times 5\times \cdots \times (2\times i+1)}+ \cdots2π=1+31!+3×52!+3×5×73!++3×5××(2×i+1)i!+ 输入格式: 输入在一行中给出精度eps,可以使用以下语句来读输入: 输出格式:

在一行内,按照以下格式输出\piπ的近似值(保留小数点后5位): 输入样例: 输出样例: #include<> #include<> int main() { double a=1,b=3,i=1,j=3; double eps,m=1,sum=0; scanf("%le", &eps); while(m>eps) { m=a/b;

C语言基础试题

1. C语言程序的执行,总是起始于()。 A) 程序中的第一条可执行语句 B) 程序中的第一个函数 C) main函数 D) 包含文件中的第一个函数 2. 在C语言系统中,假设int类型数据占2个字节,则double、long、unsigned int、char类型数据所占字节数分别多少()。 A) 8,2,4,1 B) 2,8,4,1 C) 4,2,8,1 D) 8,4,2,1 3. C语言程序的基本单位是() A) 语句B) 程序行C)函数D) 字符 4. 以下4组用户定义标识符中,全部合法的一组是() A)_main B)If C)txt D)int enclude -max REAL k_2 sin turbo 3COM _001 5. 已有定义:int x=3,y=4,z=5;则表达式!(x+y)+z-1&&y+z/2的值是()。 A、0 B、1 C、2 D、-1 6. 设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d) 后n的值()。 A、1 B、2 C、3 D、4 7. 有如下程序 main() { int y=3,x=3,z=1; printf("%d %d\n",(++x, y++),z+2); } 运行该程序的输出结果是() A) 3 4 B) 4 2 C) 4 3 D) 3 3 8. 下列程序执行后的输出结果是(小数点后只写一位)() A)6 6 6.0 6.0 B)6 6 6.7 6.7 C)6 6 6.0 6.7 D)6 6 6.7 6.0 main()

{ double d ;flaot f;long l;int i; i=f=l=d=20/3; printf(”%d %ld %f %f\n”,i,l,f,d); 9. 已知i、j、k为int型变量,若从键盘输入:1,2,3<回车>,使i的值为1、j 的值为2、k的值为3,以下选项中正确的输入语句是() A)scanf("%2d%2d%2d",&i,&j,&k); B)scanf(""%d %d %d",&i,&j,&k); C)scanf("%d,%d,%d",&i,&j,&k); D)scanf("i=%d,j=%d,k=%d",&i,&j,&k); 10. 有如下程序 main() {int a=2,b=-1,c=2; if(a

相关文档