C语言考试填空题(全部答案)

合集下载

C语言填空测试题及答案

C语言填空测试题及答案

C语言填空测试题及答案1. 在C语言中,用于定义一个整型变量的关键字是______。

答案:int2. 以下哪个选项是C语言中的合法常量?A. 0x1AB. 1.23e-10C. 1.2.3D. 0b101答案:A3. 以下哪个运算符用于将一个浮点数转换为整数?A. %B. /C. +D. (int)答案:D4. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcat()B. strcmp()C. strcpy()D. strlen()答案:C5. 若有以下代码段:```cint a = 10, b = 20;void swap(int *x, int *y) {int temp = *x;*x = *y;*y = temp;}```调用 `swap(&a, &b);` 后,变量 `a` 和 `b` 的值分别是 ______ 和 ______。

答案:20 和 106. 以下哪个选项是C语言中的合法字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "HelloD. "Hello"答案:A7. 在C语言中,以下哪个关键字用于定义一个函数?A. structB. charC. voidD. int答案:C8. 以下哪个选项表示C语言中的逻辑与运算?A. &&B. ||C. !D. =答案:A9. 以下哪个函数用于计算一个字符串的长度?A. strcat()B. strcmp()C. strcpy()D. strlen()答案:D10. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A。

C语言考试填空题

C语言考试填空题

C 语言考试填空题1.一个C 语言程序中至少应该包含一个【】函数。

答案:main 有且只有一个2.a 是整型变量,则执行表达式a=25/3%3后a 的值为【】答案:23.int m=5,y=2;则表达式y+=y-=m*=y 的值为。

【】答案:-164.结构化程序由【】、【】、【】三种基本结构组成.答案:顺序、选择、循环5.已知a=10,b=15,c=1,d=2,e=0,则表达式c==(b>e )的值为【】。

答案:16.C 语言中,二维数组在内存中的存放方式为按【】优先存放.答案:答案:行行7.设a=3,b=4,c=5,则表达式!(a+b)+c-1&&b+c/2的值为【】答案:18.C 源程序的基本单位是【】。

答案:源程序的基本单位是【】。

答案:函数函数9.设C 语言中,int 类型数据占2个字节,则long 类型数据占【】个字节,short 类型数据占【】个字节.答案:4,210.按内存排列顺序,数组char a[2]中的所有元素是a[1]和【】.答案:a[0]11.int x;x=-3+4*5-6,则x 的值为【】.答案:1112.执行以下程序段后,s 的值是【】int a[]={5,3,7,2,1,5,3,10},s=0,k;for(k=0;k<8;k+=2)s+=*(a+k);答案:1613.在C语言中的实型变量分为两种类型,它们是float型和【】型.答案:double14.若已知a=10,b=20,则表达式!a<b的值为【】。

答案:115.为条件表达式z=x>y?a:b释义:【】答案:当x>y时,z=a;【】答案:当否则z=b;16.若要调用函数fabs(),必须包含头文件【】答案:math.h17.请写出数学式a/bc的C语言表达式【】。

答案:(a/b)*c或(a*c)/b18.已知a=10,b=15,c=1,d=2,e=0,则表达式(c==b)>e的值为【】.答案:019.条件“20<x<30或x<-100”的C语言表达式是【】。

C语言程序填空题及答案

C语言程序填空题及答案

程序填空题1、#include<stdio.h>voidmain(){intn,k=0;scanf("%d",&n);while(_____1_____)//1)n2)n!=0;{k++;_____2_____;n=n/10}printf("%d\n",k);}2、#include<stdio.h>#include<math.h>#definef(x)x*x-5*x+sin(x)voidmain(){intx;floatmax;______1______//max=f(1);for(x=2;x<=10;x++)______2______//if(f(i)>max)max=f(i);printf("%f\n",max);}3、#include<stdio.h>voidmain(){charc;c=getchar();if(______1______)//c>='a'&&c<'v' c=c+5;elseif(c>='v'&&c<='z')______2______//c=c-21;putchar(c);}4、#include<stdio.h>voidDec2Bin(intm){intbin[32],j;for(j=0;m!=0;j++){bin[j]=______1______;//m%2m=m/2;}for(;j!=0;j--)printf("%d",______2______);//bin[j-1] }voidmain(){intn;scanf("%d",&n);Dec2Bin(n);}5、#include<stdio.h>#include<math.h>voidmain(){intn,s=0;scanf("%d",&n);______1______//n=(n>0n:-n);2)n=fabs(n); while(n!=0){______2______//s=s+n%10;n=n/10;}printf("%d\n",s);}6、/#include<stdio.h>voidswap(______1______)//int*pa,int*pb {/*交换两个数的位置*/inttemp;temp=*pa;*pa=*pb;*pb=temp;}voidmain(){inta,b,c,temp;scanf("%d%d%d",&a,&b,&c);if(a>b)swap(&a,&b);if(b>c)swap(&b,&c);if(______2______)//a>bswap(&a,&b);printf("%d,%d,%d",a,b,c);}7、#include<stdio.h>_______1______//longf(intn);voidmain(){printf("%ld\n",f(30));}longf(intn){if(______2______)//n==1||n==2 return1;elsereturnf(n-1)+f(n-2);}8、#include<stdio.h>voidmain(){chars[80];inti,j;gets(s);for(i=j=0;______1______;i++)//s[i]!=’\0’if(s[i]!='c'){s[j]=s[i];______2______//j++;}s[j]='\0';puts(s);}9、#include<stdio.h>structSTUDENT{charname[16];intmath;intenglish;intcomputer;intaverage;};voidGetAverage(structSTUDENT*pst)/*计算平均成绩*/intsum=0;sum=______1______;//sum+pst->math+pst->English+pst->compute rpst->average=sum/3;}voidmain(){inti;structSTUDENTst[4]={{"Jessica",98,95,90},{"Mike",80,80,90}, {"Linda",87,76,70},{"Peter",90,100,99}};for(i=0;i<4;i++){GetAverage(______2______);//&st[i]}printf("Name\tMath\tEnglish\tCompu\tAverage\n");for(i=0;i<4;i++){printf("%s\t%d\t%d\t%d\t%d\n",st[i].name,st[i].math,st[i].e nglish,st[i].computer,st[i].average);}10、#include<stdio.h>#include<math.h>longf(longn){longm,y=0;m=fabs(n);while(m!=0){y=y*10+m%10;____1____//m=m/10;}if(n>=0)returny;else_____2_____//return(-y);}voidmain(){printf("%ld\t",f(12345));printf("%ld\n",f(-34567)); }11、#include<stdio.h>floatf(float,float*,int);voidmain(){floatb[5]={1.1,2.2,3.3,4.4,5.5};printf("%f\n",f(1.7,b,5));}floatf(_______1________)//floatx,floata[],intn {floaty=a[0],t=1;inti;for(i=1;i<n;i++){t=t*x;y=y+a[i]*t;}_____2_____//returny}12、#include<stdio.h>#include<string.h>#include<ctype.h>voidf(char*s){inti=0;while(s[i]!='\0'){if(isdigit(s[i]))____1____(s+i,s+i+1);//strcpy ___2___i++;}//else}voidmain(){charstr[80];gets(str);f(str);puts(str);}13、#include<stdio.h>#include<ctype.h>voidmain(){chara[80];intn[3]={0},i;gets(a);________1________//for(i=0;a[i]!=’\0’;i++){if(tolower(a[i])>='a'&&tolower(a[i])<='z')/*统计字母个数*/n[0]++;elseif(________2________)/*统计数字个数*////a[i]>='0'&&a[i]<='9'n[1]++;elsen[2]++;}for(i=0;i<3;i++)printf("%d\n",n[i]);}14、#include<stdio.h>#include<math.h>voidmain(){inti,a,b,c;for(i=100;i<=999;i++){a=i/100;_______1_______//b=i%100/10;c=i%10;if(________2________)//i==a*a*a+b*b*b+c*c*cprintf("%disaArmstrongnumber!\n",i);}}15、#include<stdio.h>voidmain(){inta[10],b[10],i;printf("\nInput10numbers:");for(i=0;i<10;i++)/*数组输入*/scanf("%d",&a[i]);for(i=1;i<10;i++)b[i]=______1______;/*计算b数组中的元素*///a[i]+a[i-1] for(i=1;i<10;i++){printf("%3d",b[i]);if(______2______)printf("\n");/*每行打印3个数据*///i%3==0 }}。

大一学生c语言考试题及答案

大一学生c语言考试题及答案

大一学生c语言考试题及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个选项是合法的整型常量?A. 0x123B. 123.0C. 0123D. 0x12.3答案:A2. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A3. 下列哪个运算符不能用于数组?A. []B. +C. *D. /答案:D4. 在C语言中,以下哪个选项不是控制语句?A. ifC. forD. sizeof答案:D5. 若有定义:int a=5; float b=2.5; 则表达式 a%b 的值是多少?A. 0B. 0.0C. 2D. 编译错误答案:D6. 在C语言中,以下哪个函数用于计算字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A7. 下列哪个选项是正确的C语言变量声明?A. int $a;B. int _a;C. int 2b;D. int a-b;答案:B8. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?B. strncpy()C. strcat()D. strcmp()答案:A9. C语言中,以下哪个选项不是标准输入输出库函数?A. printf()B. scanf()C. fgets()D. malloc()答案:D10. 若有定义:int a=10; 则执行语句 a+=a*=a; 后,变量a的值是多少?A. 100B. 200C. 1000D. 0答案:A二、填空题(每题2分,共20分)1. 在C语言中,字符常量可以用单引号括起来,例如 'A','1',' ' 等,其中 ' ' 表示______。

答案:空格2. C语言中,若要声明一个指向整型的指针变量,可以使用以下语法:int *______;答案:p3. 在C语言中,若要声明一个具有10个元素的整型数组,可以使用以下语法:int ______[10];答案:arr4. 在C语言中,若要声明一个函数,该函数返回整型值,并且接受两个整型参数,可以使用以下语法:int ______(int a, int b);答案:func5. 在C语言中,若要声明一个结构体变量,可以使用以下语法:struct ______ st;答案:StructType6. 在C语言中,若要声明一个枚举类型,可以使用以下语法:enum ______ {E1, E2, E3};答案:EnumType7. 在C语言中,若要声明一个联合体变量,可以使用以下语法:union ______ u;答案:UnionType8. 在C语言中,若要声明一个浮点型数组,可以使用以下语法:float ______[5];答案:arr9. 在C语言中,若要声明一个二维数组,可以使用以下语法:int ______[3][4];答案:arr10. 在C语言中,若要声明一个具有10个元素的字符数组,可以使用以下语法:char ______[10];答案:str三、简答题(每题10分,共20分)1. 请简述C语言中数组和指针的区别。

C语言程序填空题加答案

C语言程序填空题加答案
printf("%d",a); 19、 【 break 】语句强行结束循环,转向执行循 环语句的下一条语句.
20、 在for(表达式1;表达式2;表达式3) 语句中 表达式1执行了【 1 】次. 21、 执行以下程序后,输出'$'号的个数是【 6 】. main() { int i,j;
for(i=1; i<5; i++) for(j=2; j<=i; j++) putchar('$'); } 22、 执行下列程序段后,s的值是【 15 】. int k, s; for(k=s=0; k<10&&s<=10; s+=k)k++; 23、 用while和do-while循环时,循环变量初始化的操作 应在while和do-while语句之【 前 】完成.
for(i=1;i<=5;i++) {f=f*【 i 】;s=s+f;}
8、 下面一段程序的功能是计算两个正整数(保存在int 型变量m和n中)的最大公约数, 并将结果保存到变量gcd中. for(;r=m%n;m=n,n=r);gcd=【 n 】; 9、 下面一段程序段的功能是显示10到20之间的偶数.
19、 当a=3,b=2,c=1;时,执行以下程序段后,b的值为
【1
】.
if(a>b) a=b;
if(b>c) b=c;
else c=b;
c=a;
20、 当a=1,b=2,c=3时,执行以下程序段后,a的值为
【 3 】.
if (a>c)
b=a;ch语句中每一个case后面的常量表达式的值

c语言考试题及答案

c语言考试题及答案

c语言考试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述中,错误的是:A. C语言是一种高级语言B. C语言可以直接被计算机执行C. C语言具有结构化的特点D. C语言具有跨平台的特性答案:B2. C语言中,用于定义一个整型变量的关键字是:A. intB. floatC. doubleD. char答案:A3. 在C语言中,以下哪个运算符用于取模运算?A. %B. /C. *D. -答案:A4. 下列关于数组的描述中,正确的是:A. 数组必须在程序开始时初始化B. 数组的元素可以是不同的数据类型C. 数组的索引从1开始D. 数组的声明必须指定数组的大小答案:D5. 在C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. functionD. define答案:B6. C语言中,用于表示逻辑“与”操作的运算符是:A. &&B. ||C. !D. &答案:A7. 下列哪个选项是C语言中合法的注释?A. // 这是一个注释B. /* 这是一个注释 */C. // 这是一个注释/* 这是一个注释 */D. /* 这是一个注释 */答案:A8. C语言中,用于定义一个空指针的值是:A. NULLB. 0C. falseD. none答案:A9. 下列关于指针的描述中,错误的是:A. 指针可以存储变量的地址B. 指针可以存储函数的地址C. 指针可以存储数组的索引D. 指针可以存储指针的地址答案:C10. 在C语言中,用于定义一个字符型指针的声明是:A. char *ptr;B. int *ptr;C. float *ptr;D. double *ptr;答案:A二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型数组的语法是:______ int array[10];。

答案:int2. 如果一个变量的值是10,那么表达式sizeof(&var)的结果是:______。

C语言填空练习题答案

C语言填空练习题答案
(题号:666)int x=y=4,z=2;x=y==z; 则x的值为【0】.
(题号:674)int x=2,y=3,z=4; 则表达式!(x+y)>z的值为【0】.
(题号:661)int x=2;z=-x+++1; 则x的值为【3】.
(题号:657)int x; x=(3+4)%5-6, 则x的值为【-4】.
(题号:668)int x=4,y=z=2;z=x==(y=z); 则z的值为【0】.
(题号:676)int x=2,y=2,z=0; 则表达式x==y>z的值为【0】.
(题号:576)int a=1,b=2,c=3; 执行语句a += b *= c;后a的值是【7】.
(题号:233)int a=1,b=2,c=3; 执行语句a=b=c;后a的值是【3】.
R
(题号:616)如果函数不要求带回值,可用【void】来定义函数返回值为空.
(题号:509)若a是int型变量,且a的初值为6,则计算表达式 a+=a-=a*a 后a的值为【-60】.
(题号:516)若s是int型变量,且s=6,则下面表达式的值是【1】.s%2+(s+1)%2
(题号:421)若输入字符串:abcde<回车>,则以下while循环体将执行 【0】 次.While((ch=getchar())=='e') printf("*");
(题号:540)若有以下定义和语句: int a[5]={1,3,5,7,9},*p;p=&a[2]; 则++(*p)的值是【6】.
(题号:334)若有以下数组a,数组元素:a[0]~a[9],其值为 9 4 12 8 2 10 7 5 1 3该数组中下标最大的元素的值是【3】.

C语言期末复习填空题部分(含答案)

C语言期末复习填空题部分(含答案)

期末复习填空题部分一、填空题1 设x为int型变量,写出描述“x是偶数与y是奇数”的表达式是 x%2==0 && y%2==1 。

2 以下程序的输出结果是 -27 。

#include<stdio.h>void main(){ char c;c=0345;printf("%d\n",c);}3 设有语句int a=3;,则执行了语句 a+=a-=a*a后,变量a的值是 -12 。

4 若float x;以下程序段的输出结果是 5.142000x=3.1415926;printf("%f\n",(int)(x*1000+0.5)/(float)1000);5 下面的程序运行时从键盘上输入1234567890<回车>,程序的输出结果是a=123,b=456.0,c=789。

#include<stdio.h>void main(){int a;float b,c;scanf("%3d%3f%3f",&a,&b,&c);printf("a=%d,b=%.1f,c=%.0f",a,b,c);}6 若输入字符串:abcdefg<回车>,则以下while循环体将执行 0 次。

while((ch=getchar())=='g') printf("*");7 下面程序的输出结果是_67,D__。

main(){ char ch1,ch2;ch1='A'+'5'-'3'; ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}8 执行下面的语句:printf("%d\n",(a=3*5,a*4,a+5));,输出是 20 。

C语言程序设计期末考试试题含答案

C语言程序设计期末考试试题含答案

C语言程序设计期末考试试题含答案一、选择题(每题 3 分,共 30 分)1、以下选项中,不是 C 语言关键字的是()A intB floatC classD char答案:C解析:在 C 语言中,class 不是关键字,int、float 和 char 都是常见的数据类型关键字。

2、以下变量定义中,正确的是()A int a=b=5;B char a='A';C float a=55, b=66;D double a; b;答案:C解析:A 选项中不能在定义时连续赋值;B 选项应该是 char a ='A';注意单引号;D 选项应该是 double a, b; 中间用逗号分隔。

3、以下程序段的输出结果是()```cint a = 5, b = 4, c = 6;if (a > b && a > c)printf("a 最大\n");else if (b > a && b > c)printf("b 最大\n");elseprintf("c 最大\n");```A a 最大B b 最大C c 最大D 编译错误答案:C解析:因为 5 不大于 6,所以执行 else 部分,输出“c 最大”。

4、以下循环语句执行的次数是()```cfor (int i = 0; i < 5; i++){printf("%d ", i);}```A 4 次B 5 次C 6 次D 无限次答案:B解析:从 0 到 4 ,一共 5 次。

5、以下数组定义中,正确的是()A int a5 ={1, 2, 3, 4, 5, 6};B int a ={1, 2, 3};C int a5 ={1, 2};D int a3 =(1, 2, 3);答案:B解析:A 选项数组长度为 5,却初始化了 6 个元素;C 选项只初始化了前两个元素,后面三个元素默认为 0;D 选项初始化方式错误,应该用花括号。

C语言试题及答案

C语言试题及答案

一、填空题(每空 2分,共 20分)1、C程序是由函数构成的,其中有且只能有 1 个主函数,每个C程序总是从它开始执行,并且以 ; 作为结束符。

2、C语言中三大基本结构有:顺序结构、选择循环、。

3、‘A’+3的结果是 68 。

4、若已定义x和y为double类型,则表达式x=1,y=x+3/2 的值是 2.5 。

5、C语言中逻辑运算符 ! 的优先级高于算术运算符。

6、符号“a”和‘a’的区别是”a”为字符串,占两个字节空间,’a’为字符,占1个字节空间。

7、C语言的预处理语句以____#_____开头。

8、有如下输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是a=1,b=3,c=2。

二、选择题(每 2分,共 20 分)1、下列叙述中错误的是( D )。

A、 if语句允许用户选择是否执行某个操作。

B、 if else 语句允许用户选择执行两个操作中的某个操作。

C、 switch语句允许用户选择执行多个操作中的某个操作D、多分支选择结构只能使用switch语句实现2、以下不正确的C语言标识符是( D )A、ABCB、abcC、a_bcD、ab.c3、按照C语言规定的用户标识符命名规则,不能出现在标识符中的是( B )。

A、大写字母B、连接符C、数字字符D、下划线4、将int型变量n转换成float型变量的方法是( B )。

A、float nB、(float)nC、float(n)D、(int)n5、( A )是构成C语言的基本单位。

A、函数B、子函数C、过程D、子过程6、下面关于运算符优先顺序的描述中正确的是(B )。

A、关系运算符< 算术运算符< 赋值运算符< 逻辑与运算符B、逻辑运算符< 关系运算符< 算术运算符< 赋值运算符C、赋值运算符< 逻辑与运算符< 关系运算符< 算术运算符D、算术运算符< 关系运算符< 赋值运算符< 逻辑与运算符7、在C语言中,要求参加运算的数必须是整数的运算符是( C )。

C语言程序设计期末考试试题含答案

C语言程序设计期末考试试题含答案

C语言程序设计期末考试试题含答案一、选择题(每题 2 分,共 40 分)1、以下选项中,不是 C 语言关键字的是()A intB floatC charD string答案:D解释:string 不是 C 语言的关键字,C 语言中表示字符串通常使用字符数组。

2、以下能正确表示八进制整数的是()A 0o123B 0123C 0x123D 123答案:B解释:在 C 语言中,八进制整数以数字 0 开头,所以 0123 是八进制整数。

3、以下变量定义中,合法的是()A int a=b=1;B char a='\0';C float 2a;D double a&;答案:B解释:A 选项中不能连续赋值;C 选项变量名不能以数字开头;D 选项变量名不能包含特殊字符&。

4、若有定义:int a=5, b=2; 则表达式 a/b 的值是()A 25B 2C 20D 3答案:B解释:C 语言中,两个整数相除结果为整数,舍去小数部分。

5、若有定义:int a5 ={1, 2, 3, 4, 5};则 a2的值是()A 2B 3C 4D 5答案:B解释:数组下标从 0 开始,所以 a2对应的值是 3 。

6、以下关于函数的叙述中,正确的是()A 函数可以嵌套定义B 函数可以嵌套调用C 函数可以没有返回值D 以上都不对答案:C解释:函数不能嵌套定义,但可以嵌套调用。

函数可以没有返回值,此时函数类型为 void 。

7、若有以下函数定义:```cint fun(int a, int b){return a + b;}```则调用 fun(1, 2)的返回值是()A 1B 2C 3D 4答案:C解释:函数 fun 实现了两个整数的相加,所以 fun(1, 2)的返回值是3 。

8、以下关于指针的叙述中,错误的是()A 指针可以指向变量B 指针可以指向数组C 指针可以指向函数D 指针不可以进行加减运算答案:D解释:指针可以进行加减运算,但运算的结果要根据指针所指向的数据类型来确定。

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

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

c语言期末考试填空题题库及详解答案1. C语言是一种______语言,它支持______和______两种编程范式。

答案:高级,过程式,面向对象2. 在C语言中,变量的声明必须在程序的______部分进行。

答案:开始3. C语言标准库中,用于输入输出的头文件分别是______和______。

答案:<stdio.h>,<stdlib.h>4. 一个C语言程序的执行从______函数开始,到______函数结束。

答案:main,main5. C语言中,字符常量可以用单引号括起来,例如'A'表示______。

答案:字符A6. 在C语言中,整数类型int的范围是______到______。

答案:-32767,32767(在16位系统中)7. 表达式 (a > b) ? (a) : (b) 是一个______表达式,用于返回a 和b中的______值。

答案:三元,较大8. C语言中,数组的索引从______开始。

答案:09. 函数声明必须在函数定义之前,或者在______中声明。

答案:头文件10. C语言中,指针是一种变量,它存储了另一个变量的______。

答案:内存地址11. 字符串在C语言中以______字符结尾。

答案:'\0'12. 在C语言中,使用______关键字可以定义一个函数。

答案:void 或其他数据类型13. C语言中,结构体是一种______数据类型,它允许将多个不同类型的数据项组合成一个单一的类型。

答案:复合14. 动态内存分配使用的函数是______,______和______。

答案:malloc,calloc,realloc15. C语言中,______关键字用于定义一个全局变量。

答案:extern16. 在C语言中,______运算符用于计算两个数的乘积。

答案:*17. 函数的参数可以是______、______或______。

(完整版)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语言中,用于定义变量的关键字是______。

答案:int2. 下列哪个选项是C语言中合法的字符串常量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, World!"D. "Hello, World!"答案:A3. 在C语言中,用于定义一个函数的关键字是______。

答案:void4. 下列哪个选项是C语言中的逻辑运算符?A. %B. ||C. &&D. ==答案:C5. 在C语言中,用于声明一个指针变量的语法是______。

答案:int *p;6. 下列哪个选项是C语言中正确的循环结构?A. forB. whileC. do-whileD. All of the above答案:D7. 在C语言中,用于定义一个结构体的关键字是______。

答案:struct8. 下列哪个选项是C语言中用于文件操作的函数?A. printf()B. scanf()C. fopen()D. fclose()答案:C9. 在C语言中,用于定义一个枚举类型的关键字是______。

答案:enum10. 下列哪个选项是C语言中用于动态内存分配的函数?A. malloc()B. free()C. Both A and BD. None of the above答案:C11. 在C语言中,用于定义一个联合体的关键字是______。

答案:union12. 下列哪个选项是C语言中用于输入输出的库?A. math.hB. stdio.hC. string.hD. time.h答案:B13. 在C语言中,用于定义一个宏的预处理命令是______。

答案:#define14. 下列哪个选项是C语言中用于数组的声明?A. int arr[10];B. int *arr;C. int arr[];D. All of the above答案:D15. 在C语言中,用于定义一个二维数组的语法是______。

C语言练习题-填空题(带答案)

C语言练习题-填空题(带答案)

试卷编号: 66所属语言: C 语言试卷方案:平时练习- 填空试卷总分: 240 分共有题型: 1 种━━━━━━━━━━━━━━━━一、填空共 240 题(共计 240 分)━━━━━━━━━━━━━━━━第 1题(1.0分)题号 :301已知 i=5, 写出语句 a=i++; 执行后整型变量 a 的值是【 1】. =======( 答案 1)======= 5第 2题(1.0分)题号 :476结构化程序中 , 有三种结构 : 顺序结构 , 【1】 , 循环结构 .=======( 答案 1)=======条件选择结构=========或=========选择结构=========或=========分支结构第 3 题(1.0 分)题号:473C程序中有且仅有一个【1】函数 .=======( 答案 1)=======主=========或=========main第 4 题(1.0 分)题号:475程序流程图只有一个起点和【=======( 答案 1)=======1】个终点.1=========或=========一=========或=========1 个=========或=========一个第 5 题(1.0 分)题号:477一个用 C 语言编写的程序在运行时, 如果没有发生任何异常情况的最后一条语句或该函数中的return语句后,程序才会终止运行=======( 答案 1)=======, 则只有在执行了【.1】函数主=========或========= main第6题(1.0 C 语言程序由【分)题号 :474 1】组成 .=======( 答案 1)=======函数第 7题(1.0分)题号 :300执行下列语句后 ,z的值是【 1】 .int x=4,y=25,z=5; z=y/x*z;=======( 答案 1)=======30第 8题(1.0分)题号 :298C语言表达式 !(3<6)||(4<9)的值是【 1】.=======( 答案 1)=======1第 9题(1.0分)题号 :299设a,b,t 为整型变量 , 初值为 a=7,b=9, 执行完语句 t=(a>b)?a:b 后 ,t 的值是【 1】 . =======( 答案 1)=======9第 10 题(1.0 分)题号:485执行 "printf("%d,%d",i,j,k,m);"后将在屏幕上输出【1】个整数.=======( 答案1)=======2第 11 题(1.0 分)题号:480C语言中一个单精度浮点型数据占【=======( 答案 1)=======1】个字节.4第 12 题(1.0已知字母 a 的分)ASCII题号 :479码为十进制数97,且设ch为字符型变量 , 则表达式ch='a'+'8'-'3'的值为【1】 .=======( 答案1)=======f第 13 题(1.0 分)题号:490已知有声明float d=1;double f=1;long g;制形式输出printf参数表中第二个参数说明符是【 1】 .=======( 答案 1)=======和语句printf(" ",g=10+'i'+(int)d*f);,为了正确地以十进( 表达式 ) 的值 , 则在第一个参数中的下划线位置处应填写的格式转换%ld第 14 题(1.0 分)题号:483在C 语言的源程序中若出现常量 "1L", 则该常量的类型是【 1】 .=======( 答案 1)=======长整型=========或=========long int第 15 题(1.0 分)题号 :481C语言中为整型数据(int) 分配【 1】个字节的存储空间 .=======( 答案 1)=======2第 16 题(1.0 分)题号 :491在 TC 中 , 语句序列 int k=-1;printf("%u",k);的输出结果为【1】 . =======( 答案 1)=======65535第 17 题(1.0 分)题号:482在Turbo C2.0 系统中 , 若将实型常数 1.5 存储在内存中 , 它占用【 1】个字节 . =======( 答案 1)=======8第 18题(1.0分)题号 :486C语言中 , 逻辑值 " 真" 用【 1】表示 .=======( 答案 1)=======1第 19题(1.0分)题号 :478整型变量 x 的值为 23, 语句 "printf( ″ %o\\n ″ ,x);"的输出结果为【1】 . =======( 答案 1)=======27\n第 20题(1.0分)题号 :484在C 语言中 , 字符型数据在内存中以【 1】码形式存放 .=======( 答案 1)=======ASCII=========或=========美国标准信息交换第 21 题(1.0 分)题号:489从变量的作用域角度分有全局变量和【1】 .=======( 答案 1)=======局部变量=========或=========局部第 22 题(1.0分)题号 :488变量从存储的时间来分可分为【1】和动态变量 .=======( 答案1)=======静态变量第 23 题(1.0 分)题号:487register存储类型变量分配内存.只有在程序运行时才为【1】存储类型和=======( 答案 1)=======auto=========或=========自动第 24 题(1.0 分)题号:492现有语句 #define a 5+3,则表达式2*a的结果为【1】 .=======( 答案 1)=======13第 25 题(1.0 分)题号:516s=3,s++,s; 这个语句执行完后,s 的值为【 1】 .=======( 答案 1)=======4第 26 题(1.0 分)题号:525设有下面的程序段int x= 0,y=0;t=x&&++y; 执行语句后y 的值为【 1】.=======( 答案1)=======第27题(1.0分)题号 :512设int a=5,b=2;float c=32.8;,表达式b*(int)c%a的值为【1】 . =======( 答案1)=======4第 28 题(1.0分)题号 :524设 x,y,z均为=======( 答案int 型变量 , 请写出描述1)======="x或 y 中有一个小于z" 的表达式【1】.x<z||y<z第 29 题(1.0 分)题号:514若已知 a=10,b=20, 则 !a<b 的值为【1】. =======( 答案1)=======1第 30 题(1.0 分)表达式a=3,a++,--a 题号 :518的值为【1】 .=======( 答案 1)=======3第 31 题(1.0分)题号 :500C语言中逻辑值 ' 真 ' 用【 1】表示 .=======( 答案 1)=======1第 32 题(1.0分)题号 :494若 x 为 int 型 , 请以最简单的形式写出与逻辑表达式!x 等价的 C 语言关系表达式【1】 .=======( 答案 1)=======x==0第 33 题(1.0分)题号 :526表达式 !10! = 1的值是【 1】 .=======( 答案 1)=======1第 34 题(1.0 分)题号:520若a 为 int 型变量 , 则下面表达式的值为【 1】 .(a=4*5,a*2),a+6=======( 答案 1)=======26第 35 题(1.0 分)题号 :499关系、算术、赋值三种运算符的运算优先顺序由高到低为【1】、【 2】、【3】 .=======( 答案 1)=======算术=======( 答案 2)=======关系=======( 答案 3)=======赋值第 36 题(1.0 分)题号 :498已知 char w; int x; float y; double z;则表达式 :w*x+z-y 所求得的数据类型为【1】 . =======( 答案 1)=======double第 37题(1.0分)题号 :510已知 :a=1,b=2,表达式 a>b?a:b+1的值是【 1】 .3第 38题(1.0分)题号 :493判断变量a、 b 的值均不为0 的 C 表达式为【 1】 .=======( 答案 1)=======a*b!=0=========或=========a*b第 39 题(1.0 分)题号:507以下十个运算符+ ! << != , ?: && = || %=======( 答案 1)=======中优先级别最高和最低的分别是【1】和【 2】 . !=======( 答案 2)=======,第 40 题(1.0 分)表达式 3>2>1 的值是【题号 :511 1】 .=======( 答案1)=======第 41 题(1.0 分)题号:508C语言中的表达式只能由三种字符组成=======( 答案 1)=======, 他们是字母、数字和【1】 .下划线=========或=========_第 42 题(1.0 int a=2,b=3;分)表达式题号 :517a>b?a++,++b的值为【1】.答案:=======( 答案 1)=======4第 43 题(1.0 分)题号:519执行语句序列 "char x=3,y=6,z;z=x^y<<2;"后,z 的二进制值为【1】 .答案:=======( 答案 1)=======00011011第 44 题(1.0 分)题号:496设有程序段int x= 4,y=4;t=++x||++y;执行语句后y 的值为【1】 .答案:=======( 答案 1)=======4第 45 题(1.0 分)题号 :506若有定义 :int b=7;float a=2.5,c=4.7;则表达式 a+(int)(b/3*(int)(a+c)/2)%4的值为【 1】 .答案:=======( 答案 1)=======5.5第 46 题(1.0分)题号 :509计算 a、 b 中最小值的条件表达式为【1】 .答案:=======( 答案 1)=======a<b?a:b第 47 题(1.0 分)题号:515设a 和 b 均为 int 整型变量 , 且 a=5,b=7, 则以下表达式的值为【 1】 .1.0+a/b答案:=======( 答案 1)=======1.0=========或=========1第 48 题(1.0 分)题号:522若x 为 int 型变量 , 执行以下语句后 x 值是【 1】 . x=3; x+=x-=x+x;答案:=======( 答案 1)=======-6第 49 题(1.0分)题号 :513条件 "20<x<30或 x<-100" 的 C 语言表达式是【1】 .答案:=======( 答案 1)=======((x>20)&&(x<30))||(x<-100)=========或=========x>20&&x<30||x<-100第 50 题(1.0 分)题号:502第 51 题(1.0 分)题号:505设a、 b、 c 为整型数 , 且 a=3,b=5,c=2, 则执行完以下语句 :a*=16+(b++)-(++c);后,a 的值是【 1】 .答案:=======( 答案 1)=======54第 52 题(1.0 分)题号:495设 x,y,z均为int型变量,请写出描述"x,y和z 中有两个为负数" 的表达式【 1】答案:=======( 答案 1)=======((x<0)&&(y<0))||((x<0)&&(z<0))||((y<0)&&(z<0))第 53 题(1.0 分)题号:503若有定义 :int a=2,b=3; floatx=3.5,y=2.5;则表达式 (float)(a+b)/2+(int)x%(int)y的值为【 1】 .=======( 答案 1)=======3.5第 54 题(1.0 分)题号:521当a=1,b=1,c=1 时 , 表达式 a<b<c 的值是【 1】 .答案:=======( 答案 1)=======1第 55 题(1.0 分)题号:504若a=1,b=4,c=3, 则表达式 a&&b+c||b-c 的值为【 1】.答案:=======( 答案 1)=======1第 56 题(1.0 分)执行语句 "a=5+(c=6);"答案:题号 :501后,变量a、 c的值依次为【1】、【 2】。

C语言填空题以及答案

C语言填空题以及答案

C语言填空题以及答案1. 题目一:将数组a中的元素按从小到大的顺序进行排序,并输出排序后的数组。

答案:```c#include <stdio.h>void bubbleSort(int arr[], int n) {for(int i = 0; i < n-1; i++) {for(int j = 0; j < n-i-1; j++) {if(arr[j] > arr[j+1]) {int temp = arr[j];arr[j] = arr[j+1];arr[j+1] = temp;}}}}int main(void) {int a[] = {5, 2, 9, 1, 3};int n = sizeof(a) / sizeof(a[0]);bubbleSort(a, n);printf("Sorted array: ");for(int i = 0; i < n; i++) {printf("%d ", a[i]);}return 0;}```2. 题目二:编写一个函数,判断一个数是否为素数,并在主函数中调用该函数。

答案:```c#include <stdio.h>int isPrime(int num) {if (num <= 1) {return 0;}for (int i = 2; i * i <= num; i++) {if (num % i == 0) {return 0;}}return 1;}int main(void) {int num;printf("Enter a number: ");scanf("%d", &num);if (isPrime(num)) {printf("%d is a prime number.", num);} else {printf("%d is not a prime number.", num); }return 0;}```3. 题目三:编写一个递归函数,计算斐波那契数列的第n个数,并在主函数中调用该函数。

c语言笔试题(答案)

c语言笔试题(答案)

笔试题一、填空题(每个空4分,共28分)1)struct tagABC{char name[10];char sex;long sno;float score[4];}*pAbc;(四字节对齐)pAbc=NULL;那么,执行pAbc+=2;之后pAbc的值为(64 )2)如下代码,最终value的值是(8)int *p1,*p2;int value;p1=(int*)0×400;p2=(int*)0×408;value = p2-p1;3)如下代码,printf的结果为(2)#include〈stdio.h〉#include〈string.h〉void main(void){char acNew[20]= “\\0\0”;printf(“%d\n”,strlen(acNew));}4) 有如下程序段,运行该程序的输出结果是(33)main (){int y=3,x=3,z=1;printf(“%d%d\n”,(++x,y++),z+2);}5)设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后,n的值为(2)6)struct tagAAA{Unsigned char ucId:1;Unsigned char ucPara0:2;Unsigned char ucState:6;Unsigned char ucTail:4;Unsigned char ucAvail;Unsigned char unTail2:4;Unsigned long ulData;}AAA_S问:AAA_S在字节对齐分别为1,4情况下,占用的空间大小分别是多少?( 9)(12 )二、选择题(每题2分,共34分)1)若有说明int(*p)[3];以下叙述正确的是( D )A:p是指针数组B:(*p)[3]和*p[3]等价C:p是指向一维数组中任何一个元素的指针D:p是指向含有3个整型元素的一维数组的指针2)以下关于单元测试的描述,哪些是对的?(D)A:黑盒测试针对软件的功能,不考虑功能的实现细节;B:白盒测试针对源代码的测试,从程序功能的具体实现上找错;C:路径覆盖是黑盒测试的一种方法,编写测试用例使程序的每条语句都能走到;D:条件覆盖是百盒测试的一种方法, 编写测试用例使程序的每个判断的各种情况都能到3)以下可以用于任务间通信的有(ABCD)A:共享内存 B:信号量C:消息队列和管道 D:socket调用4)有关结构,以下哪些描述是对的?(BC)A:为了测试方便,尽量把一个结构的功能设计得多一些B:不同结构间的关系不要过于复杂C:结构中的各元素应代表同一事务的不同侧面,而不应把描述没有关系或关系很弱的不同事务的元素放到同一结构中D:结构中元素的布局与排列顺序可以随意设计5)关于强制类型转化,下面说法正确的是(ABCD)A:当目的结构的空间大于源结构的空间时,要重点关注内存访问超过源结构范围的情形,可能越界;B:当目的结构的空间小于源结构的空间时,要重点关注对目的结构赋值不能完全覆盖源结构范围的情形,可能遗漏;C:结构体之间的强制类型转换时,其成员字段的数据类型的差异也是要格外小心的; D:与结构体之间的强制类型转换相比,基本数据结构的强制类型转换更容易出现上面描述的情况,使用的时候,一定要慎之又慎;6)正确的使用assert,软件系统不会对人为原因造成的错误进行处理。

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

计算机程序设计基础(C语言)程序填空练习题程序填空:阅读程序。

在划线处填写适当的表达式或语句,使程序完整并符合题目要求1.输入一个字符,判断该字符是数字、字母、空格还是其他字符。

main( ) 参考答案:{ char ch;ch=getchar();if( ) ch>='a'&&ch<='z'|| ch>='A'&&ch<='Z' printf("It is an English character\n");else if( ) ch>='0'&&ch<='9'printf("It is a digit character\n");else if( ) ch==' 'printf("It is a space character\n");elseprintf("It is other character\n"); }2.10个学生成绩按交换法排序。

main(){ float score[10], temp1;int i, j;printf("Please enter score:\n");for (i=0; i<10; i++)scanf("%f",&score[i]);for (i=0; i<9; i++)for (j=i+1; j<10; j++)if (score[j] > score[i]){ temp1=score[j];score[j]=score[i];score[i]=temp1;}printf("Sorted results:\n");for (i=0; i<10; i++)printf("%4.0f\n", score[i]); }11.排序函数:用交换法按成绩由高到低对学生成绩重新排序void Sort(float score[ ],int n){ int i, j;float temp1;for (i=0; i<n-1; i++){ for (j=i+1; j<n; j++)if ( ) score[j] > score[i]{ temp1 = score[j];; score[j]=score[i];score[i] = temp1;}}}自定义一函数求n!, 编写程序输入n,输出n!.#include<stdio.h>long jc(int n){ int i=1;long p=1;while (i <= n){ p=p*i;i++; }} return p;main(){ int n;printf("Please enter n:");scanf("%d", &n);printf("%d! = %ld\n", n, ); jc(n)}4.下列程序的功能是从输入的整数中,统计大于零的整数个数和小于零的整数个数。

用输入0来结束输入,用i,j来放统计数。

#include<stdio.h>main(){ n,i=0,j=0; intprintf(“input a integer,0 for end\n”);scanf(“%d”,&n);while() n!=0{ if(n>0) i= ; i+1if(n<0) j= ; j+1; } scanf("%d",&n);printf(“i=%4d,j=%4d\n”,i,j);}5.下面程序的功能是在a数组中查找与x值相同的元素所在位置。

数据从a[1]元素开始存放。

#include<stdio.h>main(){ int a[11],i,x;printf("input 10 integers:");for(i=1;i<=10;i++)scanf("%d", ); &a[i]printf("input the number you want to find x:");scanf("%d",&x);a[0]=x;i=10;while(x!= ) a[i]; i--;if( ) x==a[i]printf("the pos of x is %d\n",i);elseprintf("can not find x!\n");}1.程序的功能是在a数组中查找与x值相同的元素所在位置。

#include <stdio.h>main(){ int a[10],i,x;printf(“input 10 integers:”);for(i=0;i<10;i++) scanf(“%d”,&a[i]);printf(“input the number you want to find x:”);scanf(“%d”,&x);for (i=0;i<10;i++)if(a[i]==x); break;if( )printf(“the pos of x is:%d\n”,i+1); a[i]==x else printf(“can not find x!\n”);}6.下面程序的功能是将一个字符串str的内容颠倒过来。

#include “string.h”main(){ int i,j, ;char str[]={“1234567”};for(i=0,j=strlen(str)-1; ;i++,j--) i<=strlen(str)/2 { k=str[i]; ; str[j]=k;} str[i]=str[j]; printf("\n%s",str);}7. 下面函数实现strlen函数的功能,即计算指针p所指向的字符串中的实际字符个数。

#include <string.h>unsigned int MyStrlen(char *p){ int len;len = 0;for (; *p != ‘\0’ ; p++){; len++;}return len ;}main(){ char str[]={"12345678"};printf("\n%d",MyStrlen(str));}8.下面是判断一个数是否为素数的函数#include <stdio.h>#include <math.h>int IsPrimeNumber( ) int number{ int i;if (number <= 1)return 0 ;for (i=2; i<sqrt(number); i++){if (( ) == 0) number%i return 0;}return 1;}main(){ int n;scanf("%d",&n);if(IsPrimeNumber(n))printf("%d is a prime number",n);elseprintf("%d is not a prime number",n);}9.编程计算1+3+5+。

+101的值#include <stdio.h>main(){ int i, sum = 0;for (i = 1; ; ) i<=101; i=i+2 sum = sum + i;printf("sum=%d\n", sum);}12.编程计算1+3+5…+99的值main(){ int i, sum = 0;i=1;while ( ) i<=99;{ sum = sum + i;; } i=i+2;printf("sum=%d\n", sum);}10.输入一个学生的成绩(在0~100分之间),进行五级评分并显示。

main ( ){int score;scanf ("%d",&score);if (score>=0&& score<=100)switch (__________________) score/10 {case 10:case 9: printf (" Excellent \ n");break;case 8: printf ("Good \n");break;case 7: printf ("Middle \n"); break;case 6: printf ("Pass \n"); ________; break;default: printf ("No pass \n"); }}14.用指针作函数参数,对输入的两个整数按大小顺序输出。

void swap(int *p1,int *p2){ int p;p= ; *p1= ; *p1 *p2= p; *p2}main(){ int a,b;scanf("%d,%d",&a,&b);if(a<b) swap( ); &a,&bprintf("\n%d,%d\n",a,b);}15.从键盘输入一个字符,判断它是否是英文字母。

#include <stdio.h>void main(){char c;printf("input a character:");c=getchar();if(c>= &&c<= || c>=‘a’ &&c<= ‘z’) ‘A’‘Z’printf("Yes\n");elseprintf("No");}*16. 以下使用数组来处理打印斐波那契数列的前20项的程序。

打印时,每行打印10个数字。

斐波那契数列的格式为:当n=0时,f[0]=0,当n=1时,f[1]=1,当n>1时,f[n]=f[n-1]+f[n-2]#include “stdio.h”main( ){ int fbn[20];int line=0, j ;fbnq[0]=0;fbnq[1]=1;for(j= ; j<20; j++) 2; fbnq[j]=fbnq[j-1]+fbnq[j-2] ;for(j=0; j<20; j++){ printf(“%d”,fbnq[j]);line++;if(line==10){ line=0;printf(“\n”);}}*18.下面的函数是一个求阶乘的递归调用函数。

相关文档
最新文档