C语言基本数据类型及运算题库1
C语言基本数据类型及运算题库

C语言基本数据类型及运算题库基本数据类型及运算一、选择题1. 若以下选项中的变量已正确定义,则正确的赋值语句是。
A) x1=26.8%3; B) 1+2=x2; C) x3=0x12;D) x4=1+2=3; 答案:C2. 设变量x为float型且已经赋值,则以下语句中能够将x中的数值保留到小数点后面两位,并将第三位四舍五入的是。
A) x=x*100+0.5/100.0 B)x=(x*100+0.5)/100.0 C) x=(int)(x*100+0.5)/100.0D) x=(x/100+0.5)*100.0 答案:C3. 下列C语言中运算对象必须是整型的运算符是。
A) %= B) / C) = D) *= 答案:A4. 若有以下程序段:int c1=1,c2=2,c3;c3=1.0/c2*c1;则执行后,c3中的值是。
A) 0 B) 0.5 C) 1 D) 2 答案:A5. 设x和y均为int型变量,则以下语句:x+=y; y=x-y;x-=y; 的功能是。
A) 把x和y按从大到小排列 B) 把x和y按从小到大排列 C) 无确定结果 D) 交换x和y中的值答案:D6. 下列变量定义中合法的是。
A)short_a=1-.le-1; B)double b=1+5e2.5; C)long do=0xfdaL; D)float 2_and=1-e-3; 答案:A7. 以下4个选项中,不能被看作是一条语句的是。
A) {;} B) a=0,b=0,c=0;C) if (a>0); D) if(b==0)m=1;n=2; 答案:D8. 设x=1,y=-1,下列表达式中解为8的是。
A)x&y B)~x│x C)x^x D)xk)&&(c=i,j,k)后,c值是。
A)0 B)1 C)2 D)3 答案:D14. 下列程序的运行结果是。
# include “stdio.h” void main( ) { int i=23;do{++i;} while(i);printf(“%d”,i); }A)23 B)24 C)死循环 D)无任何结果答案:C15.设int a=3,b=4,c=5;,下列表达式的值不为1的是。
C语言数据类型与表达式习题及答案

第一章数据类型,运算符与表达式一.选择题1.不合法的常量是 A 。
A)‘/2’B) “”C)‘’D)“483”2. B 是C语言提供的合法的数据类型关键字。
A)Float B)signed C)integer D)Char3.在以下各组标识符中,合法的标识符是(1) A ,(2) C ,(3) D 。
(1)A)B01 B)table_1 C)0_t D)k%Int t*.1 W10 point (2)A)Fast_ B)void C)pbl D)<book> Fast+Big abs fabs beep (3)A)xy_ B)longdouble C)*p D)CHAR 变量1 signed history Flaut4. 不属于合法的C语言长整型常量的是 C 。
A)5876273 B)0L C)2E10 D)(long)5876273 7.下面选项中,均是合法浮点数的是 B 。
A)+1e+1 B)-0.60 C)123e D)-e3 5e-9.4 12e-4 1.2e-.4 .8e-403e2 -8e5 +2e-1 5.e-0 8.在C语言中,要求参加运算的数必须是整数的运算符是 C 。
A)/ B)* C)% D) =9.在C语言中,字符型数据在内存中以 D 形式存放。
A)原码B)BCD码C)反码D)ASCII码10.下列语句中,符合语法的赋值语句是 C 。
A)a=7+b+c=a+7;B)a=7+b++=a+7;C)a=7+b,b++,a+7;D)a=7+b = c=a+7;11. B 是非法的C语言转义字符。
A)‘\b’B)‘\0xf’C)‘\037’D)‘\’’12.对于语句:f=(3.0,4.0,5.0),(2.0,1.0,0.0);的判断中, B 是正确的。
A)语法错误B)f为5.0 C)f为0.0 D)f为2.013.与代数式x yu v⨯⨯不等价的C语言表达式是 A 。
(完整word)1、c语言-数据类型与运算符(含答案)详解,推荐文档

(完整word)1、c语言-数据类型与运算符(含答案)详解,推荐文档一、选择题1. 可用作C语言用户标识符的一组标识符是( B )。
A. void define +WORDB. a3_b3 _123 YNC. for -abc CaseD. 2a DO sizeof2. 存储以下数据,占用存储字节最多的是(D )。
A. 0B. ‘0’C. “0”D. 0.03. 程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用( D )符号作为分隔符。
A. 空格或逗号B. 逗号或回车C. 逗号或分号D. 空格或回车4. 设”int a=12;”,则执行完语句”a+=a*a;”后,a的值是( C )。
A. 12B. 144C. 156D. 2885. 假设在程序中a、b、c 均被定义成整型,所赋的值都大于1,则下列能正确表示代数式1/abc的表达式是( A)。
A. 1.0/a*b*cB. 1/(a*b*c)C. 1/a/b/(float)cD. 1.0/a/b/c6. 设”int a=15,b=26;”,则”printf(“%d,%d”,a,b);”的输出结果是(C )。
A. 15B. 26,15C. 15,26D. 267. 设x是一个int型的,y的值为10,则表达式x && y的值为(C )。
A. 1B. 0C. 与x值相同D. 与x值相反8. x>0 && x<=10的相反表达式为( A )。
A. x<=0 || x>10B. x<=0 && x>10C. x<=0 || x<=10D. x>0 && x>109. x>0 || y==5的相反表达式为( B )。
A. x<=0 || y!=5B. x<=0 && y!=5C. x>0 || y!=5D. x>0 && y==510. 下面的哪个保留字不能作为函数的返回类型?( C ) 。
C语言题库(1).docx

一. 选择题 (单项)1. C 语言中的标识符只能由字母、数字和下划线3种字符组成,且第一个字符——。
A必须为字母B必须为下划线C必须为字母或下划线 D 可以是字母、数字和下划线中的任一种字符2.下面 4个选项中,均是 C 语言关键字的选项是——。
Aauto enum includeBswitch typedef continueC signed union scanfD if struct type3.下面 4个选项中,均是不合法的用户标识符的选项是——。
A A P_0 doBfloat la0_AC b- a goto int D_123 temp INT4.在 C 语言中,int 、char 和 short 三种类型的数据在内存中所占用的字节数——。
A由用户自己定义B均为 2 个字节C是任意的D由所用机器的机器字长决定5.下面 4 个选项中,均是合法浮点数的选项是——。
A+1e+15e-9.403e2B- .60 12e-4-8e5C123e 1.2e-.4 +2e - 1D-e3 .8e-4 5.e -06.下面不正确的字符串常量是——。
AˊabcˊB〞 12ˊ12〞C〞0 〞D〞〞7.假设所有的变量均为整型,则表达式(a=2,b=5,b++, a+b)的值是——。
A7B8C6D28.以下正确的叙述是——。
A在 C 语言中,每行只能写一条语句B若 a 是实型变量, C 程序中允许赋值a=10,因此实型变量中允许存放整型数C在 C 程序中,无论整数还是实数,都能被准确无误的表示D在 C 程序中, % 是只能用于整数运算的运算符9.以下表达式值为 3 的是——。
A 16-13%10B2+3/2C 14/3-2D(2+6)/(12- 9)10.设变量 a 是整型, f 是实型, i 是双精度型,则表达式 10+ˊ aˊ +i*f 值的数据类型为——。
A intB floatC doubleD 不确定11.在 C 语言中, char 型数据在内存中的存储形式是——。
catics练习题

一、选择题1. 下列哪个选项是C语言的基本数据类型?A. floatB. charC. intD. all of the above2. 在C语言中,下列哪个运算符用于取余数?A. %B. /C.D. +A. printf()B. scanf()C. getchar()D. putchar()A. int arr[3][4];B. int arr[3, 4];C. int arr[3];D. int arr[3, ];A. returnB. gotoC. continueD. recursion二、填空题1. 在C语言中,字符类型的数据通常用______关键字表示。
2. 在C语言中,______函数用于实现字符串的拷贝。
3. 在C语言中,______运算符用于实现按位与操作。
4. 在C语言中,______关键字用于定义结构体。
5. 在C语言中,______函数用于获取当前时间。
三、编程题1. 编写一个C语言程序,实现计算两个整数的和。
2. 编写一个C语言程序,实现判断一个整数是否为素数。
3. 编写一个C语言程序,实现冒泡排序算法。
4. 编写一个C语言程序,实现计算斐波那契数列的前10项。
5. 编写一个C语言程序,实现实现一个简单的计算器,能够进行加、减、乘、除运算。
四、简答题1. 解释C语言中的指针的概念及其用途。
2. 描述C语言中的函数指针的概念。
3. 说明C语言中的结构体和联合体的区别。
4. 列举C语言中常用的内存分配函数及其作用。
5. 解释C语言中的文件操作的基本流程。
五、编程题6. 编写一个C语言程序,实现计算一个数的阶乘。
7. 编写一个C语言程序,实现将字符串反转。
8. 编写一个C语言程序,实现判断一个链表是否为回文链表。
9. 编写一个C语言程序,实现实现一个简单的银行账户管理系统。
10. 编写一个C语言程序,实现实现一个简单的学生信息管理系统。
六、编程题11. 编写一个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语言程序,实现一个简单的计算器,能够进行加、减、乘、除四种基本运算。
2020c语言期末考试题库及详解答案

2020c语言期末考试题库及详解答案一、选择题1. 下列哪个选项不是C语言的基本数据类型?A. intB. charC. doubleD. string答案:D2. 在C语言中,以下哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C3. 以下哪个是C语言中的逻辑运算符?A. &&B. ||C. <=D. ==答案:A4. 在C语言中,哪个关键字用于定义函数?A. ifB. forC. whileD. void答案:D5. 在C语言中,以下哪个语句用于结束程序的执行?A. breakB. continueC. returnD. exit答案:C二、填空题1. C语言中,一个完整的程序由________和函数的实现两部分组成。
答案:函数的声明2. 在C语言中,使用________关键字可以定义一个数组。
答案:array 或者数组名[常量表达式]3. 在C语言中,________运算符用于判断两个表达式是否相等。
答案:==4. C语言中的________函数用于计算两个数的最大公约数。
答案:gcd5. 在C语言中,使用________语句可以结束当前循环体的执行,立即开始下一次循环。
答案:continue三、简答题1. 简述C语言中变量的作用域和生命周期。
答案:变量的作用域是指变量可以被访问的代码区域。
局部变量的作用域仅限于定义它的函数内部,全局变量可以在整个程序中访问。
变量的生命周期是指变量存在的时间段,局部变量的生命周期从定义时开始,到函数执行结束时结束,全局变量的生命周期从程序开始时开始,到程序结束时结束。
2. 解释C语言中的指针和引用的区别。
答案:指针是一个变量,它存储了另一个变量的内存地址。
引用则是一个别名,它为已存在的变量提供了另一个名字。
指针可以被重新赋值为其他地址,而引用一旦被初始化,就不能改变它所引用的变量。
四、编程题1. 编写一个C语言程序,实现求两个整数的最大公约数。
C语言练习题—基本数据类型和运算

C语⾔练习题—基本数据类型和运算第2章基本数据类型和运算练习题⼀、单项选择题1.下列数据中属于“字符串常量”的是()。
A.”a” B. {ABC} C. ’abc\0’ D. ’a’2.下列数据中属于“字符串常量”的是()。
A.ABC B. “ABC” C. ’abc’ D. ’a’3. 在PC机中,’\n’在内存占⽤的字节数是()。
A. 1B. 2C. 3D. 44. 在PC机中,”a\xff”在内存占⽤的字节数是()。
A. 5B. 6C. 3D. 45.字符串”ABC”在内存占⽤的字节数是()。
A. 3B. 4C. 6D. 86.字符串”\”ABCD\””在内存占⽤的字节数是()。
A. 4B. 6C. 7D. 87. 在C语⾔中,合法的长整型常数是()。
A. 0LB.C. 0.D. 2.1869e108.在C语⾔中,合法的短整型常数是()。
D. 0x2a9.下列数据中不属于“字符常量”的是()。
A. ‘\a’B. ‘\160’C. ‘070’D. 07010.char型常量在内存中存放的是()。
A. ASCII代码值B. BCD代码值C. 内码值D. ⼗进制代码值11.设整型变量m,n,a,b,c,d均为0,执⾏(m=a==b)||(n=c==d)后,m,n的值是()。
A. 0,0B. 0,1C. 1,0D. 1,112.设整型变量m,n,a,b,c,d均为1,执⾏“(m=a>b)&&(n=a>b)”后,m,n的值是()。
A. 0,0B. 0,1C. 1,0D. 1,113.设a为2,执⾏下列语句后,b的值不为0.5的是()。
A. b=1.0/aB. b=(float)(1/a)C. b=1/(float)aD. b=1/(a*1.0)14.设a为5,执⾏下列语句后,b的值不为2的是()。
A. b=a/2B. b=6-(--a)C. b=a%2D. b=a>3?2:215. 执⾏语句“x=(a=3,b=a--)”后,x,a,b的值依次为()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
答案:D
27. 有以下程序:
#include <stdio.h>
void main ( )
{
char a,b,c,*d;
a='\';b='\xbc';
c='\0xab';d="\0127";
printf ("%c%c%c%c\n",a,b,c,*d);
}
编译时出现错误,以下叙述中正确的是
。
A)程序中只有“a='\';”语句不正确
(A)都正确 (B)都不正确 (C)前者正确 (D)后者正确
答案:(A)
19. 有整型变量 x,单精度变量 y=5.5,表达式 x=(float)(y*3+((int)y)%4)执行后,x 的值
为( )。
(A)17 (B)17.500000 (C)17.5 (D)16
答案:(A)
20. 若给定条件表达式(M)?(a++):(a--),则其中表达式(M)
答案:D
B)y>=0 时什么也不输出 D)最多允许输出 100 个非负整数
46. 下面程序的运行结果是( )。 #include <stdio.h> #define DATA 20+7 void main( )
{
printf("DATA=%d",DATA/3);
}
A)DATA=22
B)DATA=21
A)a+b>c&&b==c
B)a||b+c&&b-c
C)!(a>b)&&!c||1
D)!(a+b)+c-1&&b+c/2
答案:A
16.下列不合法的常量是: 。
(1)’?’ (2)’abc’ (3)”Turbo c” (4)’\0x32’ (5)’\123’
(6)’’’’ (7)”△” (8)’△’
(9)”\\\” (10)’’a’’’
。
A)5 B)8 C)0 D)1
答案:D
40. 执行语句 scanf (“%c%c%c”,&c1,&c2,&c3),输入 abc 时,变量 c1、c2、c3 的值分别
为
。
A)'a', 'b', 'c' B)'a','b', ''
C)'a', '', 'b' D)'a','','c'
答案:A
41. 若有以下定义: int a=10,b=9,c=8;
B)x/y&z=1 x^y&~z =0
D)x/y&z=1 x^y&~z =1
答案:D
33. 设有“int x=11;”则表达式(x++*1/3)的值是 。 A)3 B)4 C)11 D)12
答案:A
34. 若有语句 scanf(”%d %c%f”,&a,&b,&c),假设输入序列为 2223a123o.12,a、b、c 的
基本数据类型及运算
一、选择题
1. 若以下选项中的变量已正确定义,则正确的赋值语句是
。
A) x1=26.8%3;
B) 1+2=x2;
C) x3=0x12;
D) x4=1+2=3;
答案:C
2. 设变量 x 为 float 型且已经赋值,则以下语句中能够将 x 中的数值保留到小数点后面两
位,并将第三位四舍五入的是
A)scanf (“%f,%f”,&x1,&x2); B)scnaf (“%f%f”,&x1,&x2); C)scanf (“%3.2f %2.1f”,&x1,&x2); D)scnaf (“%3.2f%2.1f”,&x1,&x2); 答案:B
45. 若有程序段: for (m=1;m<=100;m++) { scanf("%d",&y); if(y<0) continue; printf("%3d",m); } 正确的描述是( )。 A)当 y<0 时整个循环结束 C)printf 函数永远也不执行
。
A)short_a=1-.le-1;
B)double b=1+5e2.5;
C)long do=0xfdaL;
D)float 2_and=1-e-3;
答案:A
7. 以下 4 个选项中,不能被看作是一条语句的是
。
A) {;}
B) a=0,b=0,c=0;
C) if (a>0);
D) if (b==0)m=1;n=2;
答案:B)
11.若变量已正确定义并赋值,符合 C 语言语法的表达式是
A)a=a+7
B)a=7+b+c,a++
C)int(12.3%4)
D)a=a+7=c+b
答案:B)
12.以下十六进制数中不合法的是
A)oxff
B)0Xabc C)0x11 D)0x19
答案:A)
13. 设 int i=2,j=3,k=4,a=4,b=5,c=3;,则执行表达式(a=i<j)&&(b=j>k)&&(c=i,j,k)后,
。
#include <stdio.h>
void main( )
{
int x=3,y=2,z=1;
printf ("%s=%d\n", "x/y&z",x/y&z);
printf ("%s=%dபைடு நூலகம்n", "x^y&~z", x^y&~z);
}
A)x/y&z=0 x^y&~z =0
C)s=x/y&z=0 s=x^y&~z =1
。
A){;}
B)a=0,b=0,c=0;
C)if (a>0);
D)if (b= =0)m=1;n=2;
答案:D
31. 假定有以下变量定义,则能使值为 3 的表达式是
。
int k=7,x=12;
A)x%=(k%=5)
B)x%=(k-k%5)
C)x%=k-k%5
D)(x%=k)-(k%=5)
答案:D
32. 以下程序的输出结果是
。
A.和(M==0)等价
B.和(M==1)等价
C.和(M!=0)等价
D.和(M!=1)等价
答案:C
21. 已知 float x=1,y;则 y=++x*++x 的结果是
。
A.y=9
B.y=6
C.y=1
D.表达式是错误的
答案:D
22. 以下程序的输出结果是
。
short i=65535; printf ("%d\n",i);
(11)’\\’ (12)’\0123’(13)’\xaf’ (14)’王’ (15)”李为
民”
(16)”\xaif”
答案:(2),(12),(14),(16)
17. 下列运算符中,结合方向为自左向右的是( )。
(A)?: (B), (C)+ = (D)+ +
答案:(B)
18. 若有 float x;则 sizeof (x)和 sizeof (float)两种描述( )。
值为
。
A)无值
B)2223,a,123o.12
C)2223,a,无
D)2223,a,123
答案:D
35. 下列描述中,正确的一条是
。
A)C 语言的整型变量可以分为 int 、short、long、unsigned int、unsigned short、
unsigned long 等几种类型,因此整型常量也可以分为这几种类型
A.65535
B.0
C.语法错误,无输出结果
D.-1
答案:D
23.有 变 量 说 明 语 句 int a,b ,c;, 顺 序 执 行 下 面 语 句 :
a=b=c=1;
+ + a | | + + b &&++c;
那么,变量 b 的值应是( )
A.2 B.1 C.0 D.3
答案:B
24. 有 变 量 说 明 int a=3;,则 表 达 式 a<1&&--a>1 的运算结果和 a 的值应该是( ) A.0 和 2 B.0 和 3 C.1 和 2 D.1 和 3
答案:B
25. 以下程序的输出为
。
#include<stdio.h>
void main( )
{
double x=213.82631;
printf("%-6.2e\n",x);
}
A.213.82
B.21.38e+01
答案:C
C.2.14e+02
D.-2.14e2
26. 下列关于单目运算符+ +、- -的叙述中正确的是
若从键盘上输入:10A10<回车键>,则输出结果是
。
A)10,A,10
B)10,a,10
C)10,a,0
D)10,A,0
答案:A
43. 已定义 c 为字符型变量,则下列语句中正确的是
A)c='97 '
B)c=“97 “ C)c=97