C语言程序设计填空题及答案复习用

合集下载

东大C语言及程序设计网考复习资料答案

东大C语言及程序设计网考复习资料答案

东北大学继续教育学院C语言及程序设计复习题第一部分(填空题):1.按照C语言规定的用户标识符命名规则,不能出现在标识符中的是()。

A.大写字母B.连接符C.数字字符D.下划线答案:B2.下面关于计算机正确的是( )。

A.计算机由硬件系统和软件系统两部分构成B.只要有硬件系统,计算机就能工作C.计算机只能处理文本信息D.计算机只能处理计算问题答案:A3.( )是c语言提供的合法的数据类型关键字。

A.IntB.longC.CharD.integer答案:B4.面向过程的高级语言包括( )。

A.C,JA V AB.C,BASICC.C++.NET,ASPD.C,VB答案:B5.软件按功能可以分为: 应用软件、系统软件和支撑软件(或工具软件)。

下面属于应用软件的是( )。

A.编译程序B. 操作系统C.教务管理系统D.汇编程序答案:C6.以下选项中关于C语言常量的叙述错误的是()。

A.所谓常量,是指在程序运行过程中,其值不能被改变的量B.常量分为整型常量、实型常量、字符常量和字符串常量C.常量可分为数值型常量和非数值型常量D.经常被使用的变量可以定义成常量答案:D7.下面描述中正确的是()。

A.C语言提供了专门的输入/输出语句B.C语言调用输入/输出函数时需要使用include命令包含头文件C.C语言可以直接使用输入/输出函数D.输入/输出函数所在的头文件是stdlib.h答案:B8.假设有char型变量c1,c2,执行下面程序段:c1=gatchar();c2=gatchar();printf(“c1=%c,c2=%c\n”,c1,c2);如果c1和c2的值分别为字符a和b,则从键盘正确的输入方式是()。

A.ab<回车>B.a<回车>b<回车>B.C.a<空格>b<回车> D.a<tab>b<回车>答案:A9.下面描述中正确的是()。

C语言程序设计期末复习题及答案(1)

C语言程序设计期末复习题及答案(1)
4. 设int i = 5;则语句while (i > = 1) i - -;执行后i的值为_0______。
5. n为整型,表达式n=1,n+2,n*5 的值是__5_______。
6. 已知:float x=8.53; 整形变量i=(int)x;则i=__8_____。
7. 已知:int x=5;语句y=x++*x++;执行完成后x=___7__,y=_25____。
int i, k, num;
gets(str1); gets(str2);
i=strlen(str1);
k=strlen(str2);
num=______? ____: ____;
printf("%d\n", num);
}
2. 下面程序是计算字符串中实际字符的个数,即实现和字符串处理函数strlen相同的功能,补充空白处的程序。
for (j=0;j<n-1-i;j++)
if (a[j]>a[j+1])
{c=a[j];a[j]=a[j+1];a[j+1]=c;}
}
2. 本题20分.总体程序完整性3分,结构体定义正确3分,结构体数组定义以及初始化正确6分,指针定义正确3分,输出判断正确3分,输出姓名地址2分。以下代码为参考代码,答案不唯一。
(B)在指针操作中,运算符“&”是取指针指向的对象的值。
(C)在指针操作中,运算符“*”的操作对象是一个地址。
(D)语句int *ip;定义了指针变量只能存放整型变量的地址。
14.判断字符串str1是否大于字符串str2,应当使用___d________。
(A)if (str1>str2)

C语言程序设计期末考试复习题及答案[]

C语言程序设计期末考试复习题及答案[]

C语言考试期末考试复习题及答案一、选择题(1) 一个C语言程序总是从(C )开始执行A) 书写顺序的第一个函数B) 书写顺序的第一条执行语句C) 主函数main()D) 不确定(2) 设int x=3,y=4,z=5,则下列表达式中的值为0的是( D )A) ‘x’&&’y’B) x||y+z&&y-z C) x<=yD) !((x<y)&&!z||1)(3) 执行以下程序段后,i的值是 ( C )int i=10。

switch(i+1){ case 10: i++。

break。

case 11: ++i。

case 12: ++i。

break。

default : i=i+1。

}A) 11 B) 13 C) 12 D) 14(4) 语句while(!e)。

中的条件!e等价于 ( A )A) e==0 B)e!=1 C) e!=0D) 运行时出错(5) 用 int a[4]={1,2}。

对数组进行初始化后,数组元素a[3]的值是 ( B )A) 随机值B) 0 C) 1D) F(6) 在执行char str[10]=“china\0”; strlen(str)的结果是( A )A)5 B) 6 D) 7 D 9(7) 若有定义,char *p=”computer”。

则语句printf(“%c”,*(p+2))运行结果是 ( B )A) 随机值B) m C)o D) omputer(8) 在以下函数调用语句中fun1(x,10,(x,10),fun2(y,10,(y,10)))。

函数fun1参数的个数为 ( B )A) 8 B) 4C) 5 D) 编译出错(9) 在说明一个结构体变量时系统分配给它的存储空间是( D )A)该结构体中第一个成员变量所需存储空间 B) 该结构体中最后一个成员变量所需存储空间C)该结构体中占用最大存储空间的成员变量所需存储空间D) 该结构体中所有成员变量所需存储空间的总和1. 用C语言编写的代码程序( B )A)可立即执行 B)是一个源程序 C)经过编译即可执行 D)经过编译解释才能执行2. C语言中用于结构化程序设计的三种基本结构是( A )A)顺序结构、选择结构、循环结构 B)if、switch、break C)for、while、do-while D)if、for、continue3. 以下定义语句中正确的是( C )A)char a='A'b='B'。

C语言程序设计期末考试复习题及答案

C语言程序设计期末考试复习题及答案
5.在函数调用过程中,如果函数funA调用了函数 funB,函数funB又调用了函数funA,则 ( B )
A)称为函数的直接递归调用 B)称为函数的间接递归调用
C)称为函数的循环调用 D)C语言中不允许这样的递归调用
6.以下叙述中正确的是 ( A )
{ char a='a',b;
printf("%c,",++a);
printf("%c\n",b=a++);}
程序运行后的输出结果是a)b,b B)b,c C)a,b D)a,c
9.有以下函数定义:(c)
void fun(int n, double x) { …… }
1 main()
2 { int x;
3 if (x=90) printf(“right”);
4 else printf(“error”);
}
行号: 改为: main()
2 { char s[]=”china”;
(4) main()
{ int a,b;
a=5;
b=8;
p(a,b);
p(a+b,a);
}
p(int x,int y)
{
y=x+y;
printf(“%d %d”,x,y);
}
程序的运行结果是:
A)for(i=1,p=1;i<=5;i++) p*=i;B)for(i=1;i<=5;i++){ p=1; p*=i;}
C)i=1;p=1;while(i<=5){p*=i; i++;}D)i=1;p=1;do{p*=i; i++; }while(i<=5);

C语言程序设计选择填空习题及答案

C语言程序设计选择填空习题及答案

习题一一、选择题1.C程序的基本单位是(A)。

A.函数B.文件C.语句D.字符2.C程序中的变量(B)。

A.不用说明B.先说明后引用C.先引用后说明D.引用和说明顺序无关3.变量的说明在(B)。

A.执行语句之后B.执行语句之前C.执行语句当中D.位置无关4.C语言是一种(C)。

A.机器语言B.符号语言C.高级语言D.面向对象的语言二、填空题1.一个C程序总是从主函数开始执行。

2.结构化程序由顺序、选择、循环三种基本结构构成。

3.一个C程序只有一个名为main的主函数。

4.C程序中的每个语句以分号结束。

5.C程序中,函数由函数首部和函数体组成。

6.每个基本结构有一个入口和一个出口,没有死循环和死语句。

7.算法是计算机解决问题所依据的步骤。

习题二一、选择题1.下列数据中属于字符串常量的是( B)。

A.ABC B."ABC" C.'abc' D.'A'2.在计算机内存中,'\n'占用的字节数是( C)。

A.4 B.3 C.1 D.23.字符串"ABC"在内存中占用的字节数是( D)。

A.6 B.8 C.3 D.44.在C语言中,合法的长整型常数是( B)。

A.568701400 B.0L C.0.03546287 D.2.654e115.char型常量在内存中存放的是( A)。

A.ASCII代码值B.BCD代码值C.十进制代码值D.内码值6.下列各项中正确的标识符是( D)。

A.?bb B.a=8 C. b.βD.b_47.下列不正确的转义字符是( D)。

A.\\ B.\ 0 C.\" D.0x48.设整型变量a、b的值均为5,则表达式(m=n=a++)/(n=b-2)的值为( B)。

A.0 B.1 C.2 D.39.设a的值为5,执行下列语句后,b的值不为2的是( C)。

A.b=a/2 B.b=6-(--a) C.b=a%2 D.b=(float)a/210.执行语句x=(a=3,b=a--)后,x、a、b的值依次是( 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 语言程序设计习题-填空题
x=7; x+=x-=x+x; 习题 33-参考答案 -14 习题 34(填空题)[知识点:表达式] 若 a 和 b 均为 int 型变量,则以下语句的功能是______。 a+=b;b=a-b;a-=b; 习题 34-参考答案 交换 a、b 变量的值 习题 35(填空题)[知识点:顺序结构] 有一输入函数 scanf("%d",k);则不能使 float 类型变量 k 得到正确数值的原因是______。 习题 35-参考答案 格式字符不正确, 缺少&符号 习题 36(填空题)[知识点:顺序结构] 若有以下定义和语句,为使变量 c1 得到字符'A',变量 c2 得到字符'B',正确的格式输入形式是______。 char c1,c2; scanf("%4c%4c",&c1,&c2); 习题 36-参考答案 A□□□B□□□ 习题 37(填空题)[知识点:顺序结构] 执行以下程序时,若从第一列开始输入数据,为使变量 a=3,b=7,x=8.5, y=71.82, c1='A',c2='a',正确的数据输入形式是 ______。 int a,b;float x,y;char c1,c2; scanf("a=%d b=%d",&a,&b); scanf("x=%f y=%f",&x,&y; scanf("c1=%c c2=%c",&c1,&c2); 习题 37-参考答案 a=3□b=7x=8.5□y=71.82c1=A□c2=a<CR> 习题 38(选择题)[知识点:表达式] 若 int a=3,b=2,c=1,f;表达式 f=a>b>c 的值是______。 习题 38-参考答案 0 习题 39(填空题)[知识点:顺序结构] 以下程序的运行结果是______。 #include <stdio.h> main() {int x=1,y,z; x*=3+2; printf("%d\t",x); x*=y=z=5; printf("%d\t",x); x=y==z; printf("%d\n",x); } 习题 39-参考答案 5□□□□□□□25□□□□□□1(制表符为 7 个) 习题 40(填空题)[知识点:表达式] 设 y 为 int 型变量,请写出描述“y 是奇数”的表达式______。 习题 40-参考答案 y%2==1、y%2!=0、y%2、(y-1)%2==0、!(y%2==0) 4 / 25

《c语言程序设计》试题库及答案

《c语言程序设计》试题库及答案

《c语言程序设计》试题库及答案一、选择题1. 下列哪个选项是C语言的标准库函数?A. printfB. scanfC. mainD. All of the above答案:D2. C语言中,用于定义字符串的字符数组的语法是什么?A. char str[] = "Hello";B. char str[] = {"Hello"};C. char str = "Hello";D. char str[] = 'Hello';答案:A3. 在C语言中,以下哪个关键字用于定义一个函数?A. intB. functionC. defD. void答案:A二、填空题1. 在C语言中,定义一个整型变量的正确方式是:________。

答案:int variable_name;2. C语言中,用于计算两个数的和的运算符是:______。

答案:+3. 如果要在C语言中声明一个指向整型的指针,应该使用:________。

答案:int *pointer_name;三、简答题1. 请简述C语言中数组和指针的区别。

答案:数组是一组相同类型的元素的集合,可以通过索引访问每个元素。

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

数组名可以被用作指向数组首元素的指针,但数组本身是一个固定大小的实体,而指针可以被重新赋值为其他地址。

2. 解释C语言中的结构体(struct)是什么?答案:结构体是一种用户定义的数据类型,它允许将不同的数据类型组合成一个单一的数据结构。

它使得可以创建包含多种数据类型的复杂数据结构。

四、编程题1. 编写一个C语言程序,实现计算两个整数的和,并输出结果。

```c#include <stdio.h>int main() {int num1, num2, sum;printf("Enter two integers: ");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("The sum is: %d\n", sum);return 0;}```2. 编写一个C语言程序,实现将一个字符串反转,并输出结果。

大学计算机c语言程序设计(填空题)

大学计算机c语言程序设计(填空题)

一、填空共219题第1题题号:422设有以下结构类型说明和变量定义,则变量a在内存所占字节数是【1】 .Struct stud{ char num[6];int s[4];double ave;} a,*p;答案:1). 22第2题题号:533设x和y均为int型变量,则以下for循环中的scanf语句最多可执行的次数是【1】.for (x=0,y=0;y!=123&&x<3;x++)scanf ("%d",&y);答案:1). 3第3题题号:496静态变量和外部变量的初始化是在【1】阶段完成的,而自动变量的赋值是在【2】时进行的.答案:1). 编译2). 函数调用第4题题号:96已知a=13,b=6, a&b的十进制数值为【1】.答案:1). 4第5题题号:398程序段int k=10; while(k=0) k=k-1循环体语句执行【1】次.答案:1). 0第6题题号:651设w=5;w+= -2;则w的值为【1】.答案:1). 3第7题题号:258下面程序段的输出结果是【1】.int a=12; a=a&0377;pritnf("%d\n",a);答案:1). 12第8题题号:457设a,b,c,t为整型变量,初值为a=3,b=4,c=5,执行完语句t=!(a+b)+c-1&&b+c/2后,t的值是【1】.答案:1). 1第9题题号:402设a取二进制数00101101,若想通过a^b运算使a的高4位取反,低4位不变,则b的二进制数是【1】.答案:1). 11110000第10题题号:311若所用变量均已正确定义,则执行下面程序段后的值是【1】.for(i=0 ; i<2 ; i++ ) printf("YES"); printf("\n");答案:1). YESYES第11题题号:663int x=2;z=++x+1; 则z的值为【1】.答案:1). 4第12题题号:1442设有int x=11,则表达式(x++ * 1/3)的值是【1】。

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

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

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

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

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

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

#include<>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 。

9 下列程序的输出结果是3,2 -1 。

c语言程序填空含答案

c语言程序填空含答案

c语言程序填空含答案在学习C语言的过程中,掌握程序填空的技巧是非常关键的。

程序填空题目可以帮助我们加深对C语言语法和逻辑的理解,并锻炼我们的编程思维能力。

在本文中,将为大家提供一些C语言程序填空题及其答案,希望对大家的学习有所帮助。

1. 下面是一个求最大公约数的C语言程序,请填写缺失的代码。

```c#include <stdio.h>int gcd(int a, int b) {if (b == 0) {return a;} else {return gcd(b, a % b);}}int main() {int num1, num2;printf("请输入两个正整数:");scanf("%d%d", &num1, &num2);printf("最大公约数为:%d", gcd(num1, num2)); return 0;}```答案:```c#include <stdio.h>int gcd(int a, int b) {if (b == 0) {return a;} else {return gcd(b, a % b);}}int main() {int num1, num2;printf("请输入两个正整数:");scanf("%d%d", &num1, &num2);printf("最大公约数为:%d", gcd(num1, num2));return 0;}```2. 下面是一个计算平均数的C语言程序,请填写缺失的代码。

```c#include <stdio.h>double average(int arr[], int length) {int sum = 0;for (int i = 0; i < length; i++) {sum += arr[i];}return sum / length;}int main() {int numbers[] = {5, 10, 15, 20, 25};int length = sizeof(numbers) / sizeof(numbers[0]);printf("平均数为:%.2f", average(numbers, length));return 0;}答案:```c#include <stdio.h>double average(int arr[], int length) {int sum = 0;for (int i = 0; i < length; i++) {sum += arr[i];}return (double)sum / length;}int main() {int numbers[] = {5, 10, 15, 20, 25};int length = sizeof(numbers) / sizeof(numbers[0]);printf("平均数为:%.2f", average(numbers, length));return 0;}```3. 下面是一个字符串反转的C语言程序,请填写缺失的代码。

C语言程序设计填空题及答案复习用

C语言程序设计填空题及答案复习用

导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。

这类习题的设计就是要引导读者逐步掌握编程的方法。

本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。

在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。

【3.1】下面程序的功能是不用第三个变量,实现两个数的对调操作。

#include <stdio.h>main(){ int a,b;scanf("%d%d",&a,&b);printf("a=%d,b=%d\n",a,b);a= ①;b= ②;a= ③;printf("a=%d,b=%d\n",a,b);}【3.2】下面程序的功能是根据近似公式:π2/6≈ #include <math.h>double pi(long n){ double s=0.0;long i;for(i=1;i<=n;i++)s=s+ ①;return( ②);}【3.3】下面的程序的功能是求一维数组中的最小元素。

findmin(int *s,int t,int *k){ int p;for(p=0,*k=p;p<t;p++)if(s[p]<s[*k])①;}main(){ int a[10],i,*k=&i;for(i=0;i<10;i++)scanf("%d",&a[i]);findmin(a,10,k);printf("%d,%d\n",*k,a[*k]);}【3.4】下面程序的功能是计算1-3+5-7+ …… -99+101的值。

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语言考试填空题(全部答案)

计算机程序设计基础(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.下列程序的功能是从输入的整数中,统计大于零的整数个数和小于零的整数个数。

C 语言程序设计复习题(答案已填写)(填空)

C  语言程序设计复习题(答案已填写)(填空)

C++语言程序设计复习题(答案已填写)(填空)C++语言程序设计复习题(答案已填写)一、单项选择题1. C++源程序文件的默认扩展名为( A )。

A. cppB. exeC. objD. lik2. 由C++源程序文件编译而成的目标文件的默认扩展名为( C )。

A. cppB. exeC. objD. lik3. 由C++目标文件连接而成的可执行文件的默认扩展名为( B )。

A. cppB. exeC. objD. lik4. C++程序从上机到得到结果的几个操作步骤依次是( B )。

A. 编译、编辑、连接、运行B. 编辑、编译、连接、运行C. 编译、运行、编辑、连接D. 编辑、运行、编辑、连接5. 以下标识符中不全是保留字的是(B )。

A. case for intB. default then whileC. bool class longD. goto return char6. 能作为C++程序的基本单位是( C )。

A. 字符B. 语句C. 函数D. 源程序文件7. 程序中主函数的名字为(A )。

A. mainB. MAINC. MainD. 任意标识符8. C++程序的基本模块为(D )。

A. 表达式B. 标识符C. 语句D. 函数9. 可用作C++语言用户标识符的一组标识符是( B )。

A. void define +WORDB. a3_b3 _123 YNC. for -abc CaseD. 2a DO sizeof10. 存储以下数据,占用存储字节最多的是(D )。

A. 0B. ‘0’C. “0”D. 0.011. 程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用( D )符号作为分隔符。

A. 空格或逗号B. 逗号或回车C. 逗号或分号D. 空格或回车12. 设”int a=12;”,则执行完语句”a+=a*a;”后,a的值是( C )。

A. 12B. 144C. 156D. 28813. 假设在程序中a、b、c 均被定义成整型,所赋的值都大于1,则下列能正确表示代数式的表达式是( D )。

《C语言程序设计》复习题有答案1

《C语言程序设计》复习题有答案1

《C语言程序设计》复习题有答案1《C语言程序设计》复习题一、填空题1、 C 语言的源程序必须通过编译和链接后,才能被计算机执行。

2、 C 语言的源程序必须通过编译和连接后,才能被计算机执行。

3、C语言中的标示符可分为关键字、拥护标示符和预定义标识符3类。

4、C语言中的标示符可分为关键字、用户标识符和预定义标示符3类。

5、在C语言中,用关键字 float 定义单精度实型变量。

6、在C语言中,用关键字 double 定义双精度实型变量。

7、在C语言中,用关键字 char 定义字符型变量。

8、在C语言的赋值表达式中,赋值好左边必须是变量。

9、设C语言中的一个int型数据在内存中占2个字节,则int型数据的取值范围为-32768--32768 。

10、若有定义语句:int s=6;则表达式s%2+(s+1)%2的值为 1 。

11、若a是int型变量,且a的初值为6,则执行表达式a+=a-=a*a后a的值为-60 。

12、若a是int型变量,则执行表达式a=25/3%3后a的值为 2 。

13、在程序运行过程中,其值不能被改变的量称为常量。

14、C程序中定义的变量,代表内存中的一个存储单元。

15、C语言中,int类型数据字符占内存 2 个字节。

16、C语言中,char类型数据占内存 1 个字节。

17、C语言的字符常量是用单引号括起来的一个字符。

18、语句printf(“\n”);的作用是换行输出。

19、10/3的结果是3 。

20、10%3的结果是 1 。

21、C语句的最后用;结束。

22、要使用putchar函数,在#include命令行中应包含的头文件是#include。

23、要使用getchar函数,在#include命令行中应包含的头文件是#include。

24、为表示关系|x|≥9;应使用的C语言表达式是x<=-9 || x>=9 。

25、为表示关系|x|≤9;应使用的C语言表达式是x>=-9&&x<=9 。

C语言程序填空题加答案

C语言程序填空题加答案

5、 若a和b都是int型变量,函数scanf("%3d%2d",&a,&b) 对应的键盘输入数据是:2618223<回车> 则该函数执行后,变量b的值等于【 82 】. 6、 若c是char型变量,c的初值为-1,则函数printf("%u",c) 的输出结果为【 65535 】. 假设int型数据占2个字节. 7、 若有如下输入函数:scanf("%d%d%d",&a,&b,&c); 则可以使用空格、【 换行符 或 \n 或 回车换行符 或 回车 或 回车】 符 或制表符 作为输入数据的间隔符。 8、 C语言的输入输出功能通过调用库【 函数 】实 现. 9、 表达式 'A' - 'D' 的值等于【 -3 】.
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语句之【 前 】完成.
33、 (!x)==(x!=0)的值为【 0 】. 34、 对应scanf("a=%d,b=%d",&a,&b);语句的输入a为 a=3,b=7 】. 3,b为7的键盘输入格式是【 35、 当a=0,b=2,c=3时,则表达式a+b>0 && b==c的值 是【 0 】. 36、 设x,y,z均为int型变量;请写出描述"x或y中有一个 小于z"的表达式【 x<z||y<z 】. 37、 当a=0,b=2,c=4时,则表达式c+b>0 && !b==a的值 是【 1 】. 38、 在使用printf()函数时,如果字符串的长度、或整型 数位数超过说明的长宽, 将按其【 实际 】长度输出. 39、 使用格式符%m.nf输出一个实数时,若小数部分位 数超过了说明的小数位宽度n时, 则第n+1位要进行 【 四舍五入 】.

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语言程序设计复习参考答案

《C语言程序设计》复习参考答案(总21页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--第一章【随堂练习1-2】1.下面哪些标识符属于合法的用户自定义标识符:Main、void、_num、my$、a*、N4、3m、a-2答:合法的用户自定义标识符是:Main、_num、N42.结合【例】指出程序代码中所用到的标识符哪些是关键字,哪些是预定义标识符,哪些是用户自定义标识符。

答:关键字:void、int预定义标识符:include、main、printf、scanf用户自定义标识符:a、b、c3.分析【例】中函数的结构,包括函数首部(函数返回值类型、函数名、形式参数)、函数体语句(说明语句、可执行语句)。

答:函数首部: void main( ),其中函数返回值类型为void、函数名为main、形式参数无;函数体语句:{}内的语句为函数体,其中:说明语句为int a,b,c;,其余为可执行语句。

3.标识符是用来标识程序中的某个对象名字的字符序列。

C语言把标识符分为三类,即关键字、预定义标识符、用户自定义标识符。

对于用户自定义标识符的命名C语言规定:(1)所有的用户标识符必须先定义后使用;(2)用户标识符由字母(A~Z,a~z)、数字(0~9)、下划线“_”组成,并且首字符不能是数字;(3)区分大小写;(4)不能用关键字作为用户自定义标识符,通常不使用预定义标识符作为用户自定义标识符。

4.理论上讲,程序开发过程分为四个步骤,分别为:(1)编辑源程序(2)编译源程序,生成目标程序(3)连接目标程序及其相关模块,生成可执行文件(4)运行可执行文件一.单元练习一.选择题1.构成C语言程序的基本单位是()。

A.框架B.预处理 C.函数D.语句2.在程序开发过程中,把文本文件格式源程序转化为二进制格式的目标程序的过程称之为()。

A.编辑 B.编译 C.连接 D.运行3.关于主函数,下列说法不正确的是()。

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

C语言程序设计填空题及答案复习用公司内部编号:(GOOD-TMMT-MMUT-UUPTY-UUYY-DTTI-导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。

这类习题的设计就是要引导读者逐步掌握编程的方法。

本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。

在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。

【】下面程序的功能是不用第三个变量,实现两个数的对调操作。

#include <>main(){ int a,b;scanf("%d%d",&a,&b);printf("a=%d,b=%d\n",a,b);a= ①;b= ②;a= ③;printf("a=%d,b=%d\n",a,b);}【】下面程序的功能是根据近似公式:π2/6≈1/12+1/22+1/32+ ……+1/n2,求π值。

#include <>double pi(long n){ double s=;long i;for(i=1;i<=n;i++)s=s+ ①;return( ② );}【】下面的程序的功能是求一维数组中的最小元素。

findmin(int *s,intt,int *k){ int p;for(p=0,*k=p;p<t;p++)if(s[p]<s[*k])①;}main(){ int a[10],i,*k=&i;for(i=0;i<10;i++)scanf("%d",&a[i]);findmin(a,10,k);printf("%d,%d\n",*k,a[*k]);}【】下面程序的功能是计算1-3+5-7+ …… -99+101的值。

main(){ int i,t=1,s=0;for(i=1;i<=101;i+=2){ ①;s=s+t;②;}printf("%d\n",s);}【】有以下程序段:s=;for(k=1;k<=n;k++)s=s+(k*(k+1));printf("%f\n",s);填空完成下述程序,使之与上述程序的功能完全相同。

s=;①;k=0;do{ s=s+d;②;d=(k*(k+1));}while( ③ );printf("%f\n",s);【】下面程序的功能是从键盘上输入若干学生的学习成绩,统计并输出最高成绩和最低成绩,当输入为负数时结束输入。

main(){ float x,amax,amin;scanf("%f",&x);amax=x;amin=x;while( ① ){ if(x>amax) amax=x;if( ② ) amin=x;scanf("%f",&x);}printf("\namax=%f\namin=%f\n",amax,amin);}【】下面程序的功能是将形参x的值转换为二进制数,所得的二进制数放在一个一维数组中返回,二进制数的最低位放在下标为0的元素中。

fun(int x,int b[]){ int k=0,r;do{ r=x% ①;b[k++]=r;x/= ②;}while(x);}【】下面程序的功能是输出1到100之间每位数的乘积大于每位数的和的数。

例如数字26,数位上数字的乘积12大于数字之和8。

main(){ int n,k=1,s=0,m;for(n=1;n<=100;n++){ k=1;s=0;①;while( ② ){ k*=m%10;s+=m%10;③;}if(k>s)printf("%d",n);}}【】下面程序的功能是统计用0至9之间的不同的数字组成的三位数的个数。

main(){ int i,j,k,count=0;for(i=1;i<=9;i++)for(j=0;j<=9;j++)if( ① ) continue;else for(k=0;k<=9;k++)if( ② ) count++;printf("%d",count);}【】下面程序的功能是输出100以内的个位数为6、且能被3整除的所有数。

main(){ int i,j;for(i=0;①;i++){ j=i*10+6;if( ② ) countinue;printf("%d",j);}} 【】下面程序的功能是用辗转相除法求两个正整数m和n的最大公约数。

hcf(int m,int n){ int r;if(m<n){ r=m;①;n=r;}r=m%n;while( ② ){ m=n;n=r;r=m%n;}③;}【】下面程序的功能是使用冒泡法对输入的10个浮点数从小到大进行排序。

排好序的10个数分两行输出。

程序如下:#include <>main(){ ①;int i,j;printf("Input 10numbers please\n");for(i=0;②;i++ )scanf("%f", &a[i]);printf("\n");for(i=2;③;i++ )for(j=0;④;j++ )if( ⑤ ){ x=a[j];⑥;a[j+1]=x;}printf("The sorted 10numbers;\n");for(i=0;⑦;i++ ){ if( ⑧ )printf("\n");printf("%f\t",a[i]);}printf("\n");}【】下面程序的功能是读入20个整数,统计非负数个数,并计算非负数之和。

#include ""main(){ inti,a[20],s,count;s=count=0;for(i=0;i<20;i++ )scanf("%d", ① );for(i=0;i<20;i++){ if(a[i]<0)②;s+=a[i];count++;}printf("s=%d\tcount=%d\n",s,count);}【】下面程序的功能是删除字符串s中的空格。

#include <>main(){ char *s="Beijing ligong daxue";int i,j;for(i=j=0;s[i]!='\0';i++)if(s[i]!= ' ') ①;else ②;s[j]= '\0';printf("%s",s);}【】下面程序的功能是将字符串s中所有的字符'c'删除。

请选择填空。

#include<>main( ){ char s[80];int i,j;gets(s);for(i=j=0;s[i]!='\0';i++ )if(s[i]!= 'c') ①;s[j]= '\0';puts(s);}【】下面程序的功能是输出两个字符串中对应相等的字符。

请选择填空。

#include <>charx[]="programming";char y[]="Fortran";main(){ int i=0;while(x[i]!= '\0' &&y[i]!= '\0')if(x[i]==y[i])printf("%c", ① );elsei++;}【】下面程序的功能是将字符串s中的每个字符按升序的规则插到数组a中,字符串a已排好序。

#include <>main(){ chara[20]="cehiknqtw";char s[]="fbla";int i,k,j;for(k=0;s[k]!= '\0';k++ ){ j=0;while(s[k]>=a[j] &&a[j]!= '\0' )j++;for( ① )②;a[j]=s[k];}puts(a);}【】下面程序的功能是对键盘输入的两个字符串进行比较,然后输出两个字符串中第一个不相同字符的ASCII码之差。

例如:输入的两个字符串分别为"abcdefg"和"abceef",则输出为-1。

#include <>main(){ charstr1[100],str2[100],c;int i,s;printf("Enter string 1: "); gets(str1);printf("Enter string 2: "); gets(str2);i=0;while((str1[i] ==str2[i] && str1[i]!=① ))i++;s= ②;printf("%d\n", s);}【】下面的函数expand在将字符串s复制到字符串t时,将其中的换行符和制表符转换为可见的转义字符表示,即用'\n'表示换行符,用'\t'表示制表符。

expand(char s[],chart[]){ int i,j;for(i=j=0;s[i]!='\0';i++ )switch (s[i]){ case '\n': t[ ① ] =②;t[j++] = 'n';break;case '\t': t[ ③ ] =④;t[j++] = 't';break;default: t[ ⑤ ] =s[i];break;}t[j] = ⑥;}【】下面的函数index(char s[], chart[])检查字符串s中是否包含字符串t,若包含,则返回t在s中的开始位置(下标值),否则送回-1。

相关文档
最新文档