常熟理工学院C语言题库最新版
常熟理工学院 C语言程序设计实验实验指导书及答案汇总模板
项目 4.(选做)
5
6 《C 语言程序设计》实验指导书 常熟理工学院 电气与自动化工程学院
根据矩形面积的计算方法,编写一个输入圆半径 r,计算园周长 L 和圆面积 S 的程序。注意判断圆半径 r 是否大于零。 (程序代码和运行结果可写在指导书背面)
6
常熟理工学院 电气与自动化工程学院 《C 语言程序设计》实验指导书
运行结果:
项目 3.(选做) 在二维数组中,若某一位置上的元素在该行中最大,而在该列中最小,则该元素即为该二维数组的 一个鞍点。要求从键盘上输入一个二维数组,当鞍点存在时,把鞍点找出来。 (程序代码和运行结果可写在指导书背面)
运行结果:
项目 2. 字符统计 【项目说明】 有一篇文章,共有 3 行文字,每行 80 个字符。要求分别统计出其中英文字母和数字的个数。 【项目目的】 (1)掌握键盘输入字符串方法。 (2)掌握二维数组的处理方法。
12 《C 语言程序设计》实验指导书 常熟理工学院 电气与自动化工程学院
【技术要点】 (1)3 行文字可定义一个二维字符数组来表示。 (2)使用 gets( ) 函数对字符串进行输入。 程序代码:
2、用 do…while 和 break 语句实现的程序代码:
10 《C 语言程序设计》实验指导书 常熟理工学院 电气与自动化工程学院
3、用 do…while 和 continue 语句实现的程序代码:
) 求 (程序代码和运行结果可写在指导书背面) å n!(即求1!+ 2!+ 3!+ K + 10! )
项目 2. 调试并运行下面程序,并写出运行结果: #include <stdio.h> int main() { int a , b , sum; /*定义变量*/ a=23; b=56; /*为变量赋值*/ sum=a+b; /*计算两个变量的和*/ printf(“sum is %d\n”,sum); /*输出计算结果*/ return 0; } 运行结果:
最新常熟理工学院-C语言-考试样卷
13.若有如下声明和语句:
int t[3][3], *pt[3], k;
for(k=0; k<3;k++) pt[k]=&t[k][0];
则表达式*(*(pt+1)+2)所引用的是()。
A.t[2][0]B.&t[2][0]C.t[1][2]D.&t[1][2]
(二)创业优势分析
在上海,随着轨道交通的发展,地铁商铺应运而生,并且在重要商圈已经形成一定的气候,投资经营地铁商铺逐渐为一大热门。在人民广场地下的迪美购物中心,有一家DIY自制饰品店--“碧芝自制饰品店”
虽然调查显示我们的创意计划有很大的发展空间,但是各种如“漂亮女生”和“碧芝”等连锁饰品店在不久的将来将对我们的创意小屋会产生很大的威胁。
D.fun函数的形式参数不能取名为a
11.若函数调用时的实参为变量,则以下关于函数形参和实参的叙述中正确的是()。
A.实参和其对应的形参占用同一存储单元
B.形参不占用存储单元
C.同名的实参和形参占用同一存储单元
D.形参和实参占用不同的存储单元
12.已有声明”int a[5];”,以下表达式中不能正确取得a[1]指针的是()。
C.strcpy(s2, s1);D.strcpy(s2, s3);
7.执行以下程序后的结果是()。
#include <stdio.h>
void main()
{int x=3;
Do
{
printf("%d\t", x=x-3);
}while(!x);
}
2022年常熟理工学院公共课《C语言》科目期末试卷A(有答案)
2022年常熟理工学院公共课《C语言》科目期末试卷A(有答案)一、填空题1、设x的二进制数是11001101,若想通过x&y运算使x中的低4位不变,高4位清零,则y的二进制数是_______。
2、结构化程序由________、________ 、________ 3种基本结构组成。
3、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是4、若x和n均是int型变量,且x的初值为12,n的初值为5,则执行表达式x%=(n%=2)后x的值为_______。
5、若a是int型变量,则表达式(a=4*5,a*2),a+6的值为_______。
6、若有定义:int a[]={2,4,6,8,10,12,14,16,18,20,22,24},*q[3],k;则下面程序段的输出是_______。
for(k=0;k<3;k++)q[k]=8.a[k*4];printf("%d\n",q[2][3]);7、执行下面程序段后,k的值是_______。
k=1;n=263;do{k*=n%10;n/=10;} while(n);8、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。
请填空。
a+=_______;b=a-_______;a-=_______;9、设有一输入函数scanf("%d”,k);它不能使float类型变量k得到正确数值的原因是_______未指明变量k的地址和_______格式控制符与变量类型不匹配。
10、下面程序wdm的运行结果是_______。
int i,x[10]={2,3,0,3,0,2,3,2,1,3},y[4]={0};for(i=0;i<10;i++)y[x[i]]++;printf("%d\n",y[3]);二、选择题11、若有代数式|x3+log10x|,则正确的C语言表达式是()A.fabs(x*3+log(x))B.abs(pow(x,3)+log(x))C.abs(pow(x,3.0)+log(x))D.yfabs(pow(x,3.0)+log(x))12、以下表达式值为3的是( )A.16-13%10B.2+3/2C.14/3-2D.(2+6)/(12-9)13、有定义语句int a,b;,若要通过语句scanf("%d,%d”,&a,&B.;使变量a得到数值6,变量b得到数值5,下面输入形式中错误的是()。
江苏c语言期末考试题及答案
江苏c语言期末考试题及答案一、单项选择题(每题2分,共20分)1. 在C语言中,以下哪个选项是正确的标识符?A. 2variableB. variable2C. variable-2D. variable_2答案:D2. 下列哪个选项是C语言中的合法整型常量?A. 0x1AB. 0X1AC. 0x1aD. 0X1a答案:A3. 以下哪个选项是C语言中的合法浮点数?A. 3.14B. 3.14eC. 3.14e2D. 3.14e2.5答案:C4. 在C语言中,以下哪个选项是正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, World!'"D. 'Hello, World!'答案:A5. 下列哪个选项是C语言中的合法数组声明?A. int array[10];B. int array[];C. int array[10][];D. int array[10][10];答案:A6. 在C语言中,以下哪个选项是正确的函数声明?A. int add(int x, int y);B. int add();C. int add(int, int);D. int add(int x, int y) {}答案:A7. 下列哪个选项是C语言中的合法指针声明?A. int *ptr;B. int *ptr[];C. int (*ptr)[];D. int *ptr[10];答案:A8. 在C语言中,以下哪个选项是正确的结构体声明?A. struct Student { int id; char name[50]; };B. struct { int id; char name[50]; };C. struct Student { int id; struct Student next; };D. struct { int id; char name[50]; } student;答案:A9. 下列哪个选项是C语言中的合法枚举声明?A. enum Color { Red, Green, Blue };B. enum { Red, Green, Blue };C. enum Color { Red = 1, Green = 2, Blue = 3 };D. enum { Red = 1, Green = 2, Blue = 3 };答案:A10. 在C语言中,以下哪个选项是正确的宏定义?A. #define PI 3.14159B. #define PI 3.14159C. #define PI 3.14159D. #define PI 3.14159答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________运算符可以对字符串进行连接。
c语言数据类型考试题目及答案
c语言数据类型考试题目及答案C语言数据类型考试题目及答案1. 以下哪个选项不是C语言中的基本数据类型?A. intB. floatC. charD. string答案:D2. 在C语言中,一个int类型变量通常占用多少字节?A. 1B. 2C. 4D. 8答案:C3. 假设变量a的类型为int,变量b的类型为float,执行以下代码后,变量a的值是多少?```cint a;float b = 10.5;a = (int)b;```A. 10B. 11C. 10.5D. 0答案:A4. 以下哪个关键字用于定义一个字符常量?A. charB. stringC. intD. float答案:A5. 在C语言中,以下哪个选项不是合法的变量名?A. _myVarB. my_varC. 2myVarD. myVar2答案:C6. 以下哪个数据类型用于存储单个字符?A. intB. floatC. charD. double答案:C7. 如果一个变量的类型为double,那么它的值可以被存储为:A. 整数B. 小数C. 整数和小数D. 以上都不是答案:C8. 在C语言中,以下哪个运算符用于比较两个值是否相等?B. !=C. <=D. >=答案:A9. 以下哪个选项是C语言中的逻辑运算符?A. &&(逻辑与)B. ||(逻辑或)C. &(按位与)D. 以上都是答案:D10. 在C语言中,以下哪个关键字用于定义一个静态变量?A. staticB. constC. externD. volatile答案:A11. 以下哪个选项是C语言中的循环结构?A. ifB. switchC. whileD. for答案:C12. 在C语言中,以下哪个关键字用于定义一个函数?A. functionB. defC. void答案:C13. 以下哪个选项不是C语言中的文件操作函数?A. fopenB. fcloseC. printfD. fread答案:C14. 在C语言中,以下哪个关键字用于定义一个指针?A. pointerB. ptrC. *D. ref答案:C15. 以下哪个选项是C语言中的数组?A. 一组具有相同类型的变量B. 一组具有不同类型的变量C. 一个变量D. 一个函数答案:A。
c语言程序设计基础试题及答案
c语言程序设计基础试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是C语言中的合法整数?A. 0x10B. 0X1GC. 08D. 0L答案:A3. 在C语言中,用于定义一个函数的关键字是?A. defineB. functionC. defD. void答案:B4. C语言中,以下哪个是正确的字符串定义?A. char str[] = "Hello";B. char str[] = {"Hello"};C. char str = "Hello";D. char str[] = 'Hello';答案:A5. 在C语言中,以下哪个运算符用于求余?A. %B. /C. //D. %答案:A二、填空题(每题3分,共15分)1. 在C语言中,定义一个整型变量的关键字是________。
答案:int2. 如果一个函数没有返回值,应该使用________关键字声明。
答案:void3. 在C语言中,________运算符用于连接字符串。
答案:+4. C语言中,________运算符用于比较两个值是否相等。
答案:==5. 在C语言中,________关键字用于定义一个指针变量。
答案:*三、简答题(每题5分,共20分)1. 简述C语言中数组和指针的关系。
答案:在C语言中,数组名可以被当作指向数组第一个元素的指针。
数组的每个元素可以通过指针运算来访问。
2. 解释C语言中函数原型声明的作用。
答案:函数原型声明提供了函数的名称、返回类型和参数类型,但不需要函数体。
它允许在函数定义之前调用函数,同时帮助编译器检查函数调用的正确性。
3. 什么是C语言中的预处理指令,举例说明。
答案:预处理指令是C语言中的特殊命令,用于在编译之前处理源代码。
c语言编程题考试题库及答案
c语言编程题考试题库及答案一、单项选择题1. 在C语言中,以下哪个选项是正确的整型常量?A. 0x12LB. 0x12.5C. 0x12.0D. 0x12F答案:A2. C语言中,以下哪个选项是正确的字符串字面量?A. "Hello, World"B. 'Hello, World'C. "Hello, World\n"D. "Hello, World\"答案:C3. 在C语言中,以下哪个选项是正确的函数声明?A. int add(int a, int b);B. int add(int, int);C. int add();D. int add(a, b);答案:A4. C语言中,以下哪个选项是正确的数组声明?A. int a[5] = {1, 2, 3, 4, 5};B. int a[] = {1, 2, 3, 4, 5};C. int a[5] = {1, 2, 3};D. int a = {1, 2, 3, 4, 5};答案:B5. 在C语言中,以下哪个选项是正确的指针声明?A. int *p = 0;B. int *p = "Hello";C. int *p = 5;D. int p = 0;答案:A二、填空题1. 在C语言中,表示逻辑“与”操作的运算符是 ________ 。
答案:&&2. C语言中,表示逻辑“或”操作的运算符是 ________ 。
答案:||3. 在C语言中,表示逻辑“非”操作的运算符是 ________ 。
答案:!4. C语言中,表示赋值操作的运算符是 ________ 。
答案:=5. 在C语言中,表示取地址操作的运算符是 ________ 。
答案:&三、程序阅读题阅读以下C语言程序段,并回答问题。
```c#include <stdio.h>int main() {int a = 10, b = 20, c;c = a + b;printf("%d", c);return 0;}```1. 程序的输出结果是什么?答案:302. 如果将`c = a + b;`改为`c = a * b;`,程序的输出结果是什么?答案:200四、编程题1. 编写一个C语言程序,实现两个整数的加法运算,并输出结果。
常熟理工-C语言26编程题
编程题:1、根据矩形面积的计算方法,编写一个输入圆半径r,计算园周长L和圆面积S的程序。
注意判断圆半径r是否大于零。
#include <stdio.h>#define PI 3.1415926int main(){double c, r, area;printf("半径=");scanf("%lf", &r);c = 2 * PI * r;area = PI * r * r;printf("周长=%f,面积=%f\n", c, area);return 0;}2、输入三个整型数据,判断这三个整型数据能否围成三角形,如果能组成三角形,计算并输出它的面积,如果不能围成三角形输出“三条边不能围成三角形”。
#include<math.h>Void main(){Float a,b,c,d,s;s canf(“%f %f %f”,&a,&b,&c);if ((a+b))>c&&(a+b)>b&&(b+c)>a){d=(a+b+c)/2;s=sqrt(d*(d-a)*(d-b)*(d-c));printf(%5.2f %5.2%f 5.2%f The area is %5.2f\n”,a,b,c,s);}else{printf(“The data is wrong\n”)}}3、输入一个百分制成绩,输出对应的等级。
90·100:A,80~89:B,70~79:C,60~69D,不及格为E。
#include<stdio.h>void main(){int score,c;scanf("%d",&score);if(score<0)printf("input data error\n"); else{if(score>100)printf("input data error\n");else{c=score/10;switch(c){case 10:case 9: printf("A\n");break;case 8: printf("B\n");break;case 7: printf("C\n");break;case 6: printf("D\n");break;case 5:case 4:case 3:case 2:case 1:case 0: printf("E\n");break;}}}}4、编程实现 ⎝⎛<--=>+=0100012x x x x x y 。
c语言程序设计大一考试题及答案
c语言程序设计大一考试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. variable-2D. variable$答案:B2. C语言中,哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A3. 下列哪个选项是C语言中的整型常量?A. 3.14B. '3'C. 0x1AD. "3"答案:C4. 在C语言中,哪个运算符用于取地址?A. *B. &C. %D. #答案:B5. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. !D. A和B答案:D6. C语言中,哪个函数用于计算并返回字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A7. 在C语言中,哪个关键字用于声明一个函数?A. defineB. functionC. voidD. int答案:C8. 下列哪个选项是C语言中的二维数组声明?A. int a[2][3];B. int a[][];C. int a[2][];D. int a[3,2];答案:A9. 在C语言中,哪个函数用于输出格式化的字符串?A. printf()B. scanf()C. fgets()D. fputs()答案:A10. 下列哪个选项是C语言中的条件语句?A. ifB. switchC. forD. while答案:A二、填空题(每题2分,共20分)1. 在C语言中,字符常量可以用单引号括起来,例如:'a'、'1'、______。
答案:'\n'2. C语言中,用于定义一个空指针的是 ______ 。
答案:NULL3. C语言中,数组的下标从 ______ 开始。
常熟理工学院 C语言题库(本三)
结构化程序设计语言编写得程序由三种结构组成:顺序结构、分支结构与。
一个完整得C程序可以有多个函数,其中有且只能有一个名为得函数。
数学式所对应得C语言表达式为(m, 1/3、0)。
在调用函数fopen("d:\\b、dat", "r")时,若d盘根目录下不存在文件b、dat,则函数得返回值就是。
执行下面程序段中得语句“k= A*A+1;”后k得值就是。
#defineB 2#define AB+1k =A*A+1;已有定义“float m;double n;int a;longb;char c;”,则表达式m+n*a/m+b/n+c 值得类型为。
C语言有效得预处理命令总就是以开头。
已有定义“inta[10], *p=a+3;”,则数组a 得最后一个元素就是p[]。
已有定义“int n=12; doublea;”,则执行语句“a=n/=5;”后,a得值为。
若要声明一个类型名STR,使得定义语句STR s等价于char*s,则声明语句就是。
程序设计语言得发展经历了几个阶段:机器语言、汇编语言与。
一个C程序总就是从函数开始执行得。
已有定义“doublea=5, b=10;”,则计算ab得库函数调用形式就是。
已有定义“char ch='a';”,则表达式ch=ch-'a'+'A'得值为字符得编码。
表示“x≥y≥z”得C语言表达式就是x>=y 。
C语言有效得预处理命令总就是以开头。
常量'\n'得数据类型就是。
已有定义“int b[10], *p=b,*q;q=&b[5];”,则表达式q-p得值就是。
在文件中,以符号常量EOF作为文本文件(字符流文件)得结束标记,EOF代表得值就是。
若要声明一个类型名STR,使得定义语句STR s等价于char *s,则声明语句就是。
结构化程序设计语言编写得程序由三种结构组成:顺序结构、与循环结构。
c语言数据类型考试题目及答案
c语言数据类型考试题目及答案一、选择题1. 在C语言中,以下哪个数据类型用于存储字符?A. intB. charC. floatD. double答案:B2. 一个int类型的变量通常占用多少字节的内存空间?A. 1B. 2C. 4D. 8答案:C3. 以下哪个选项不是C语言中的基本数据类型?A. intB. floatC. structD. void答案:D4. 一个float类型的变量占用的字节数是多少?A. 2B. 4C. 8D. 16答案:B5. 以下哪个关键字用于定义指针类型?A. intB. charC. floatD. *答案:D二、填空题1. 在C语言中,________关键字用于声明一个整型变量。
答案:int2. 一个________类型的变量可以存储一个布尔值。
答案:_Bool3. C语言中,________关键字用于声明一个双精度浮点数。
答案:double4. 一个指针变量可以存储一个________值。
答案:地址5. C语言中,________关键字用于声明一个无符号整型变量。
答案:unsigned int三、简答题1. 请解释C语言中的静态数据类型和动态数据类型的区别。
答案:静态数据类型是指在编译时就确定大小的数据类型,如int、float等。
动态数据类型是指在运行时确定大小的数据类型,如指针和动态分配的数组。
2. 描述C语言中数组和指针的关系。
答案:在C语言中,数组名可以被看作指向数组首元素的指针。
通过指针运算,可以访问数组中的元素。
四、编程题1. 编写一个C程序,计算并输出以下表达式的值:(5 + 3.14) / 2。
答案:```c#include <stdio.h>int main() {double result = (5 + 3.14) / 2;printf("The result is: %f\n", result);return 0;}```2. 请编写一个C函数,该函数接受一个整数数组和数组的大小,返回数组中的最大值。
常熟理工C语言题库
1.以下对于break语句使用的正确描述是()。
A:可以出现在程序中的任何位置B:只能出现在循环或switch结构中C:只能出现在switch结构中 D:只能出现在循环结构中2.以下程序的输出结果为()。
int i;void prt( ){ for(i=5;i<8;i++)printf("%c",'*');printf("\t");}main( ){for(i=5;i<=8;i++) prt( );}A:*** B:*** *** *** *** C:*** *** D:* * *3.已知有声明 char c='1';int x=300;float t=35000;double d=3.1234567e10; ,则以下表达式求值时除( )外其结果都可能是不准确的。
A:x=t/c B:t=d/x C:t=d/le5f D:t=x+c4.在C语言程序中,以下说法正确的是()。
A:函数的定义可以嵌套,但函数的调用不可以嵌套B:函数的定义不可以嵌套,但函数的调用可以嵌套C:函数的定义和函数的调用都不可以嵌套 D:函数的定义和函数的调用都可以嵌套5.若有以下程序段int r=8;printf("%d\n",r>>1);输出结果是()。
A:16 B:8 C:4 D:26.下面四个选项中,均是不合法的用户标识符的选项是()A:A P_0 do B:float la0 _A C:b-a goto int D:_123 temp INT7.以下正确的if语句是()第 1 页/共 2 页A:if(n>0) printf("%f",n)printf("%f",-n);B:if(n>0){ n=n+m;printf("%f",n);}else printf("%f",-n);C:if(n>0){ n=n+m;printf("%f",n);};else printf("%f",-n);D:if(n>0){ n=n+m;printf("%f",n) };else printf("%f",-n);8.若有声明语句"int a=5,b=4,c=3,*p=&a;",则下列()表达式语句是正确的。
(完整版)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语言分章节试题及答案1. 变量声明- 题目:在C语言中,以下哪个选项是正确的变量声明方式?A. int a = 0;B. int a = 0.0;C. int a = "hello";D. int a = 0, b = 0;- 答案:A和D。
2. 数据类型- 题目:以下哪个选项不是C语言中的基本数据类型?A. intB. floatC. charD. string- 答案:D。
3. 运算符优先级- 题目:在C语言中,以下哪个运算符的优先级最高?A. 乘法B. 加法C. 赋值D. 条件运算符- 答案:A。
4. 函数定义- 题目:以下哪个是正确的C语言函数定义?A. int myFunction(int a, int b) { return a + b; }B. int myFunction(int a, int b) { return a - b; }C. int myFunction(int a, int b) { return a * b; }D. All of the above- 答案:D。
5. 数组初始化- 题目:以下哪个是正确的C语言数组初始化方式?A. int arr[5] = {1, 2, 3, 4, 5};B. int arr[5] = {1, 2, 3};C. int arr[5] = {1, 2, 3, 4};D. int arr[5] = {1, 2, 3, 4, 5, 6};- 答案:A。
6. 指针- 题目:以下哪个选项正确地声明了一个指向整数的指针?A. int *ptr;B. int ptr[];C. int *ptr = 0;D. int ptr = 0;- 答案:A和C。
7. 字符串操作- 题目:以下哪个函数用于比较两个字符串是否相等?A. strcat()B. strcmp()C. strcpy()D. strlen()- 答案:B。
8. 条件语句- 题目:以下哪个是C语言中正确的if语句?A. if (x > 10)x = 20;B. if (x > 10)x = 20C. if (x > 10)x = 20;else x = 10;D. All of the above- 答案:A。
常熟理工学院C语言题库最新版
表达式sizeof("key")的值是【】。
④③②①①1 ②2 ③3 ④4下面选项中,不能用作用户标识符的是【】。
①&a ②_00 ③FOR ④print已知有声明“int x=3, y=4, z;”,则执行语句“z=1/2*(x+y);”后,z的值是【】。
①0 ②3③3.5 ④4下列运算符中,优先级最低的是【】。
①* ②!=③+ ④=一元二次方程ax2+bx+c=0有两个相异实根的条件是a≠0且b2-4ac>0,下面选项中正确的表达式是【】。
①a!=0, b*b-4*a*c>0 ②a!=0||b*b-4*a*c>0③a&&b*b-4*a*c>0 ④!a&&b*b-4*a*c>0下面选项中,可以作为用户标识符的是【】。
①6_6 ②void③unsigned ④_0_已有定义“int n; float a, b;”,则执行语句“b=n=a=3.89;”后,b的值为【】。
①3 ②3.0③3.89 ④4.0下列运算符中,优先级最低的是【】。
①* ②!=③+ ④=表达式!(x>0&&y>0) 等价于【】。
①!(x>0)||!(y>0) ②!x>0||!y>0③!x>0&&!y>0 ④!(x>0)&&!(y>0)下面定义符号常量p为3.14中正确的是【】。
①#define p 3.14; ②#define p(3.14)③#define p=3.14 ④#define p 3.14在下面各组标识符中,均可以用作变量名的一组是【】。
①a02, Int ②table_1, a*.0③0_a, W13 ④for, point已知有声明“int x=3, y=4, z;”,则执行语句“z=1/3*(x+y);”后,z的值是【】。
(完整版)C语言试题及答案解析
C语言一、选择题(第题2分,共20分)1.一个C程序的执行是从 A 。
A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序文件的第一个函数开始,到本程序main函数结束D) 本程序的main函数开始,到本程序文件的最后一个函数结束2.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为 C 。
x=(i=4,j=16,k=32)A) 4 B) 16 C) 32 D) 523.设C语言中,一个int型数据在内存中占2个字节,则unsigned int 型数据的取值范围为 C 。
A) 0~255 B) 0~32767 C) 0~65535 D) 0~21474836474.设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为 D 。
A) float B) char C) int D) double5. putchar函数可以向终端输出一个D 。
A) 整型变量表达式 B) 实型变量值C) 字符串 D) 字符或字符型变量值6. printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。
如果字符串长度大于5,则输出按方式 B ;如果字符串长度小于5,则输出按方式 C 。
A) 从左起输出该字符串,右补空格 B) 按原字符长从左向右全部输出C) 右对齐输出该字符串,左补空格 D) 输出错误信息7.判断char型变量ch是否为大写字母的正确表达式是 C 。
A) ‘A’<=ch<=‘Z’ B) (ch>=‘A’)&(ch<=‘Z’)C) (ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch)8.已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是 B 。
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 )。
A._00 B.print C.&b D.FOR下面合法的标识符是( A )。
A.IF B.-321 C.c f D.int可以将高级语言编写的源程序转换为目标程序的软件是( D )。
A.汇编程序B.解释程序C.编辑程序D.编译程序C 语言程序中可以对程序进行注释,注释部分必须用符号(C )括起来。
A.“{”和“}”B.“[”和“]”C.“/*”和“*/”D.“*/”和“/*”已有预处理命令“#include <math.h>”和声明“int x=4, y;”,下面语句中语法正确的是( C )。
A.if(x%2=1)y=x; B.if(sqrt(x)%2)y=x;C.if(x==1)y=x; D.if(x==1)y=&x;下列运算符中,优先级最低的是( D )。
A.* B.!= C.+ D.=逻辑“异或”运算可描述为当且仅当a、b两个操作数中只有一个为真时才为真,其他情况下均为假。
下面能够正确表示逻辑“异或”运算的表达式是( D ))。
A.a || b B.a && bC.(a&&b)&&!(a || b) D.(a || b)&&!(a&&b)下面关于continue和break语句的叙述中正确的是( B )。
A.continue和break语句都可以出现在switch语句中B.continue和break语句都可以出现在循环语句的循环体中C.在switch语句允许出现continue和break语句D.执行循环语句中的continue和break语句都将立即终止循环在while(e)语句中的e与下面条件表达式等价的是( D )。
A.e==0 B.e==1 C.e!=1 D.e!=0已有函数fun的定义“void fun(void) {printf("That's great! ");}”,则调用fun函数的正确形式是( B )。
大一c语言理论知识试题及答案
大一c语言理论知识试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义函数?A. classB. functionC. defineD. void答案:D2. 在C语言中,用于定义一个结构体的关键字是什么?A. structB. unionC. enumD. typedef答案:A3. 下列哪个选项不是C语言中的运算符?A. %B. &&C. ||D. ==答案:D4. 在C语言中,以下哪个选项是正确的字符串定义?A. char str[] = "Hello";B. char str[] = 'Hello';C. char str[] = {"Hello"};D. char str[] = "Hello", "World";答案:A5. C语言中,以下哪个选项是合法的变量名?A. 2variableB. variable2C. _variableD. variable$2答案:C6. C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcatB. strcpyC. strcmpD. strlen答案:B7. 在C语言中,以下哪个选项是正确的注释方式?A. // This is a single line commentB. /* This is a single line comment */C. //* This is a single line commentD. /* This is a single line comment */答案:A8. C语言中,以下哪个选项是正确的二进制表示?A. 0b1010B. 0x10C. 0o10D. 0b2答案:A9. 在C语言中,以下哪个选项是正确的数组声明?A. int array[10];B. int array[];C. int array[10] = {0};D. All of the above答案:D10. C语言中,以下哪个选项是正确的文件包含指令?A. #include <stdio.h>B. #include "stdio.h"C. #include <stdio>D. #include "stdio"答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型变量的关键字是________。
常熟理工学院C语言题库(本三)
结构化程序设计语言编写的程序由三种结构组成:顺序结构、分支结构和O一个完整的C程序可以有多个函数,其中有且只能有一个名为的函数。
数学式标所对应的C语言表达式为(m, 1/3.0)0在调用函数£叩64气:\\氏:^",,")时,若d盘根目录下不存在文件b.dat,则函数的返回值是O执行下面程序段中的语句“k = A*A+l;"后k的值是一#define B 2#define A B+lk = A*A+1;已有定义“float m;double n;int a;long b;char c;",则表达式m+n*a/m+b/n+c 值的类型为°C语言有效的预处理命令总是以开头。
已有定义“inta[10],*p=a+3;",则数组a的最后一个元素是p[已有定义“intn=12;doublea;",则执行语句“a=n/=5;"后,a的值为°若要声明一个类型名STR,使得定义语句STR s等价于char *s,则声明语句是O程序设计语言的发展经历了几个阶段:机器语•言、汇编语言和。
一个C程序总是从函数开始执行的。
已有定义“double a=5,b=10;”,则计算ab的库函数调用形式是°已有定义“charch='a,;”,则表达式ch=ch」a中A的值为字符的编码。
表示“X2y2z”的C语言表达式是x>=y。
C语言有效的预处理命令总是以开头。
常量’\鹏的数据类型是0已有定义“int b[10], *p=b, *q; q=&b⑸;",则表达式q-p的值是»在文件中,以符号常量EOF作为文本文件(字符流文件)的结束标记,EOF代表的值是O 若要声明一个类型名STR,使得定义语句STR s等价于char *s,则声明语句是。
结构化程序设计语言编写的程序由三种结构组成:顺序结构、和循环结构。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
表达式sizeof("key")的值是【】。
④③②①①1 ②2 ③3 ④4下面选项中,不能用作用户标识符的是【】。
①&a ②_00 ③FOR ④print已知有声明“int x=3, y=4, z;”,则执行语句“z=1/2*(x+y);”后,z的值是【】。
①0 ②3③3.5 ④4下列运算符中,优先级最低的是【】。
①* ②!=③+ ④=一元二次方程ax2+bx+c=0有两个相异实根的条件是a≠0且b2-4ac>0,下面选项中正确的表达式是【】。
①a!=0, b*b-4*a*c>0 ②a!=0||b*b-4*a*c>0③a&&b*b-4*a*c>0 ④!a&&b*b-4*a*c>0下面选项中,可以作为用户标识符的是【】。
①6_6 ②void③unsigned ④_0_已有定义“int n; float a, b;”,则执行语句“b=n=a=3.89;”后,b的值为【】。
①3 ②3.0③3.89 ④4.0下列运算符中,优先级最低的是【】。
①* ②!=③+ ④=表达式!(x>0&&y>0) 等价于【】。
①!(x>0)||!(y>0) ②!x>0||!y>0③!x>0&&!y>0 ④!(x>0)&&!(y>0)下面定义符号常量p为3.14中正确的是【】。
①#define p 3.14; ②#define p(3.14)③#define p=3.14 ④#define p 3.14在下面各组标识符中,均可以用作变量名的一组是【】。
①a02, Int ②table_1, a*.0③0_a, W13 ④for, point已知有声明“int x=3, y=4, z;”,则执行语句“z=1/3*(x+y);”后,z的值是【】。
①0 ②3 ③3.5 ④4已有定义“int a=4, b=5, c=6;”,则下列表达式中值为0的是【】。
①a&&b ②a<=b ③a||b&&c ④!(!c||1)在 C 程序中,用【】表示逻辑值“真”。
①小于0的数②非0的数③非1的数④大于0的数C源程序中的命令#include与#define是在【】阶段被处理的。
①预处理②编译③连接④执行下面定义符号常量p为3.14中正确的是【】。
①#define p 3.14; ②#define p(3.14)③#define p=3.14 ④#define p 3.14已有定义“int x=4, y=3, z=5;”,下面4个程序段中有3个程序段的执行效果是相同的,另一个执行效果不同的是【】。
①if(x>y) z=x, x=y, y=z; ②if(x>y){z=x, x=y, y=z;}③if(x>y) z=x; x=y; y=z; ④if(a>y){z=x; x=y; y=z;}下面关于continue和break语句的叙述中正确的是【】。
①continue和break语句都可以出现在switch语句中②continue和break语句都可以出现在循环语句的循环体中③在循环语句和switch语句之外允许出现continue和break语句④执行循环语句中的continue和break语句都将立即终止循环在while(e)语句中的e与下面条件表达式等价的是【】。
①e==0 ②e==1③e!=1 ④e!=0若函数调用时的实参为变量,则下面关于函数形参和实参的叙述中正确的是【】。
①实参和其对应的形参占用同一存储单元②形参不占用存储单元③相同名称的实参和形参占用同一存储单元④实参和其对应的形参占用不同的存储单元若变量已正确定义,语句“if(a>b) k=0; else k=1;”和【】等价。
①k=(a>b)?1:0; ②k=a>b;③k=a<=b; ④a<=b ? 0 : 1;下面关于continue和break语句的叙述中正确的是【】。
①continue和break语句都可以出现在switch语句中②continue和break语句都可以出现在循环语句的循环体中③在循环语句和switch语句之外允许出现continue和break语句④执行循环语句中的continue和break语句都将立即终止循环在C语言中while和do-while循环的主要区别是【】。
①do-while的循环体至少无条件执行一次②do-while允许从外部转到循环体内③while的循环控制条件比do-while的循环控制条件严格④do-while的循环体不能是复合语句关于函数返回值,下面叙述中正确的是【】。
①函数返回值的类型由函数体内return语句包含的表达式的类型决定②若函数体内没有return语句,则函数没有返回值③若函数体中有多个return语句,则函数的返回值是排列在最后面的return语句中表达式的值④函数返回值的类型由函数头部定义的函数类型决定已有函数fun的定义“int fun(int a, int b){ if(a<b)return (a, b);else return (b, a); }”,在main()函数中若调用函数f(3, 4),得到的返回值是【】。
①3 ②4③3和4 ④4和3已有预处理命令“#include <math.h>”和声明“int x=4, y;”,下面语句中语法正确的是【】。
①if(x%2=1)y=x; ②if(sqrt(x)%2)y=x;③if(x==1)y=x; ④if(x==1)y=&x;下面关于continue和break语句的叙述中正确的是【】。
①continue和break语句都可以出现在switch语句中②continue和break语句都可以出现在循环语句的循环体中③在循环语句和switch语句之外允许出现continue和break语句④执行循环语句中的continue和break语句都将立即终止循环下面关于循环语句的结论中错误的是【】。
①可以用while语句实现的循环,一定可以用for语句实现②可以用for语句实现的循环,一定可以用while语句实现③可以用do-while语句实现的循环,一定可以用while语句实现④do-while语句与while语句的区别仅是关键字“while”出现的位置不同C语言中函数返回值的类型是由【】决定的。
①return语句中的表达式类型②调用该函数的主函数类型③定义函数时所指定的函数类型④以上都可能已有函数fun的定义“void fun2(void) {printf("That’s great! ");}”,则调用fun2函数的正确形式是【】。
①fun2; ②fun2(); ③fun2(void); ④fun2(1);在C程序中,若对函数类型未加说明,则函数的隐含类型为【】。
①int ②double③void ④char下面函数中能正确计算n!(n<13)的是【】。
①long f(long n) ②long f(long n){ { if(n<=1)return 1;return n*f(n-1); else return n*f(n);} }③long f(long n) ④long f(long n){ static long s,i; { long s=1,i;for(i=1;i<=n;i++)s=s*i; for(i=1;i<=n;i++)s=s*i;return s; return s;} }设n=10,i=4,则赋值运算“n%=i+1”执行后n的值是【】。
①0 ②1③2 ④3已有定义“int a=2;”,下面表达式中值不等于8的是【】。
①a+=2,a*2 ②a+=a*=a③(a+7)/2*((a+1)%2+1) ④a*7.2/a+1下面表示中,不能用作C语言常量的是【】。
①0UL ②(long)110③1e0 ④'\x2c'下面关于return语句的叙述正确的是【】。
①一个自定义函数中必须有一条return语句②一个自定义函数中可以根据不同情况设置多条return语句③定义成void类型的函数中可以有带返回值的return语句④没有return语句的自定义函数在执行结束时不能返回到调用处已有定义“int a,b;",执行语句“a=(b=2*3,b*5),b+6;”后,变量a的值是【】。
①6 ②12③30 ④36表达式sizeof("\nsum=13\n") 的值是【】。
①8 ②9③10 ④11已有定义“int i, a=1; unsigned j;”,则下列语句执行时会出现无限循环的语句是【】。
①for(j=15; j>0; j-=2)a++; ②for(j=0; j<15; j+=2)a++;③for(i=0; i<15; i+=2)a++; ④for(i=15; i>0; i-=2)a++;下面定义中错误的是【】。
①int a=0xFF; ②double a=1.2e0.5;③long a=2L; ④char a='\72';C语言规定,变量作实参时,它和对应形参之间的数据传递方式是【】。
①地址传递②单向值传递③由实参传给形参,再由形参传回给实参④由用户指定传递方式若有“int k=4;”,计算表达式(j=k++)后,j和k的值分别为【】。
①j=3, k=3 ②j=3, k=4③j=4, k=4 ④j=4, k=5下列运算符中,优先级最高的是【】。
①-> ②++③&& ④=不用第三个变量,将a和b的值进行交换的操作是【】。
①a+=b;b-=a;a-=b; ②a+=b;b=a-b;a-=b;③b-=a;a-=b;a-=b ; ④b-=a;a=b-a;a+=b;下列表示中,不可作为C语言常数的是【】。
①010 ②1UL③'0x41' ④0xbe设有定义和声明如下:#define d 2int a=3; float b=3.14; char c='d';下面表达式中有语法错误的是【】。
①a++ ②b++③c++ ④d++若有枚举类型定义“enum vari{A1, A2, A3, A4=6, A5, A6};”,则枚举常量A2和A6代表的值分别是【】。
①1,6 ②1,8③2,6 ④2,8下面数组声明语句中正确的是【】。
①int n, a[n]; ②int a[];③int a[2][3]={{2},{1},{3}}; ④int a[ ][3]={{2},{1},{3}};下面函数定义中正确的是【】。