杭州师范大学C语言试题第7套
2022年浙江师范大学公共课《C语言》科目期末试卷B(有答案)
2022年浙江师范大学公共课《C语言》科目期末试卷B(有答案)一、填空题1、若有以下定义和语句,为使变量c1得到字符’A',变量c2得到字符’B’,正确的输入形式是_______。
char cl,c2;scanf("%4c%4c",&cl,8&c2);2、C语言的源程序必须通过【】和【】后,才能被计算机执行。
3、在C语言源程序中,一个变量代表【】。
4、若有定义语句:inte=1,f=4,g=2;float m=10.5,n=4.0,k;,则执行表达式k=(e+f)/g+sqrt((double)n)*1.2/g+m后k的值是_______。
5、若a是int型变量,则执行表达式a=25/3%3后a的值为_______6、设x为无符号整数。
表达式x^(~(~0<<n)<<(p+1-n)))的作用是将x 中从第p位开始的n位求反(1变0,0变1),其他位不变。
请按表达式的求值顺序写出分解步骤,并解释含义。
__________________________________7、函数swap(int x,inty)可完成对x和y值的交换。
在运行调用函数中的如下语句后,a[0]和a[1]的值分别为_______,原因是_______。
a[o]=1;a[1]=2;swap(a[o],a[1]);8、若有定义floata[3][5];则a数组所含数组元素个数是_______,a数组所占的字节数是_______。
9、若有定义:inta[3][4]={{1,2},{0},{4,6,8,10}};,则初始化后,a[1][2]得到的初值是_______,a[2][1]得到的初值是_______。
10、以下程序段通过指针变量q,但不移动q,将如图所示连续动态存储单元的值,从第一个元素起依次输出到终端屏幕。
请填空。
(假设程序段中的所有变量均已正确说明。
)for(k=0;k<10;k++) printf("%d,",_______); printf("\n");二、选择题11、下面4个选项中,是合法转义字符的选项是( )。
2022年杭州师范大学钱江学院公共课《C语言》科目期末试卷A(有答案)
2022年杭州师范大学钱江学院公共课《C语言》科目期末试卷A(有答案)一、填空题1、设x的二进制数是11001101,若想通过x&y运算使x中的低4位不变,高4位清零,则y的二进制数是_______。
2、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是3、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数________完成的。
4、若x和y都是double型变量,且x的初值为3.0,y的初值为2.0,则表达式.pow (y,fabs(x))的值为_______5、表达式x=6应当读做_______6、下面程序段的运行结果是_______。
char*s1="AbcdEf", *s2="aB";int t;s1++;t=(strcmp(s1,s2)>0);printf("%d\n",t);7、下面程序段的运行结果是_______。
x=2;do{printf("*");x--;)while(!x==0);8、已有定义int a;float b,x;char cl,c2;为使a=3、b=6.5、x=12.6、cl='a'、c2='A',正确的scanf函数调用语句是_______,数据输入的形式应为_______。
9、设有以下定义和语句,请在printf语句的_______中填上能够正确输出的变量及相应的格式说明。
union{int n;doublex;}num;num.n=10;num.x=10.5;printf("_______",_______);10、设有宏定义如下:#define MIN(x,y)(x)>(y)?(x):(y)#define T(x,y,r)x*r*y/4则执行以下语句后,s1的值为_______,s2的值为_______。
C语言程序设计历年统考试题集10套含答案
C语言程序设计试题集(第1套)请将第一、二、三、四题的答案写在答题页的相应题目的后面(写在别处不得分)。
一、单项选择题(每题2分,共20分)1、以下叙述不正确的是A)C程序由函数构成B) 一个C程序至少包含一个main函数C) main函数可以调用main函数D) main函数是每个程序执行的起始点2、C程序中能直接让机器执行的文件是A)编辑后的.c源文件 B)通过编译的.obj文件C)通过连接的.exe文件 D)编辑后的.bak文件3、假设定义变量如下:int x;float y;以下输入语句中哪个是正确的?A)scanf(“%f%d”,&y,&x); B)scanf(“%f%d”, y, x); C)scanf(“%f%f”,&y,&x); D)scanf(“%d%d”,&y,&x);4、已知:int a[][3]={1,2,3,4,5,6};则数组a的第一维的大小是A)2 B)3 C)4 D)无确定值5、.如果switch表达式是char 变量code,下面哪一个case子句是合法的。
A)case “3”:B) case ‘3’: C)case 3 : D)case =3:6、能正确表示”x的值在[1,10]和[200,210]范围内”的表达式是A)(x>=1)&&(x<=10)&&(x>=200)&&(x<=210)B) (x>=1) || (x<=10) || (x>=200) || (x<=210)C) (x>=1)&&(x<=10) || (x>=200)&&(x<=210)D) (x>=1) || (x<=10)&&(x>=200) || (x<=210)7、C语言中while和do-while 循环的主要区别是A)do-while循环至少无条件执行一次,而while循环可能一次也不执行B)while循环控制条件比do-while循环控制条件严格C)do-while循环允许从外部转到循环体内,而while循环不允许D)do-while的循环体可以是复合语句,而while循环不可以是复合语句 8、下面哪一项函数的头部是有效的?A)one(int a int b)B)int thisone(char x)C)char another(int a,b)D)double yetanother9、若有定义char x[ ]= "12345"; char y[ ]={ '1', '2', '3', '4', '5'};则A)x数组与y数组的长度相同B)x数组长度大于y的长度C)x 数组长度小于y数组长度 D)x数组等价于y 数组10、二维数组的第一个元素的行下标和列下标是A) 1,1 B)0,1 C)1,0 D) 0,0二、填空题(每空3分,共30分)1、如果a=4, b=3,那么,在执行语句a=b;之后,a、b的值分别是(1)2、语句:if(6>5)printf(“#”);printf(“$”);输出(2)3、for( sum=j=0; j<=10; ++j) sum += j; 循环结束后sum的值等于(3)4、长度为10的int类型数组和长度为3 的double类型数组,哪一个数组占用的内存空间多(4)5、字符数组a)char a[]=“one”;占多少内存字节(5)6、如果ch<‘A’或ch>‘Z’,那么,表达式ch>=‘A’&& ch<=‘Z’的值是(6)7、编写C语句,交换a、b的值(7)8、为了使用库函数getchar(),必须在程序中包含命令(8)9、设int numbers[5]={17,25,30,56,58};编写C的for语句,将数组numbers中的每个元素减去3。
C语言编程测试题(含答案)(基础教资)
《C语言程序设计》阶段性考核(90分钟)学号__________ 姓名_________ 得分_________程序设计题(本大题共7小题,选5题完成,3、5题必选,共100分)注意:将在vc++中调试通过的代码复制到每题“程序代码”下面,然后提交本文档即可,文档命名为“姓名.doc”,如张文.doc1、求出 10 到100内能同时被2、3、7整除的数,并输出。
程序代码:#include"stdio.h"void main(){//求出 10 到100内能同时被2、3、7整除的数,并输出int i;for(i=10;i<=100;i++){if(i%2==0&&i&3==0&&i%7==0)printf("%d ",i);}}2、输出Fibonacci 数列1,1, 2,3, 5, 8, 13……前42个数,并以每行5个数方式输出。
程序代码:#include"stdio.h"void main(){//输出Fibonacci 数列1,1, 2,3, 5, 8, 13……前42个数,并以每行5个数方式输出。
long int f[42];int i;f[0]=f[1]=1;for(i=2;i<42;i++)f[i]=f[i-1]+f[i-2];for(i=0;i<42;i++){if(i%5==0) printf("\n");printf("%10d",f[i]);}}3、编写程序,输入一个3×3的矩阵,求两个对角线元素中的最大值程序代码:#include"stdio.h"void main(){//编写程序,输入一个3×3的矩阵,求两个对角线元素中的最大值int a[3][3];int i,j,max;/*a[0][0] a[0][1] a[0][2] 1 2 3a[1][0] a[1][1] a[1][2] 4 5 6a[2][0] a[2][1] a[2][2] 7 8 9*///二重循环输入数组元素printf("请输入数组元素\n");for(i=0;i<3;i++)for(j=0;j<3;j++){scanf("%d",&a[i][j]);}//输出二维数组for(i=0;i<3;i++){for(j=0;j<3;j++){printf("%d ",a[i][j]);}printf("\n");}//求二维数组对角线最大值,i=j or i+j=2max=a[0][0];for(i=0;i<3;i++)for(j=0;j<3;j++){if(i==j||i+j==2){if(a[i][j]>max) max=a[i][j]; }}//输出最大值printf("max=%d\n",max);}4、编写程序,输入12个数,按照从后向前的顺序依次找出并输出其中能被7整除的所有整数以及这些整数的和,在屏幕上输出程序代码:#include"stdio.h"void main(){//4、编写程序,输入12个数,按照从后向前的顺序依次找出并输出其中能被7整除的所有整数以及这些整数的和,在屏幕上输出int a[12];printf("请输入数组元素\n");for(i=0;i<12;i++)scanf("%d",&a[i]);//注意,从后向前找,下标递减for(i=11;i>=0;i--)if(i%7==0){printf("%d ",a[i]);sum=sum+a[i];}printf("\n");printf("sum=%d\n",sum);}5、编写程序打印以下图形:(必须使用循环结构)1 23 4 56 7 8 9程序代码:#include"stdio.h"void main(){int a[4][4];int k=0,i,j;//输入数组元素printf("请输入数组:\n");for(i=0;i<4;i++)for(j=0;j<4;j++){scanf("%d",&a[i][j]);}//变量k累加赋值for(i=0;i<4;i++)for(j=0;j<=i;j++){a[i][j]=k++;//等同于a[i][j]=k; k=k+1;}//输出数组for(i=0;i<4;i++){for(j=0;j<=i;j++){printf("%d ",a[i][j]);}printf("\n");}}6、已知字符串char s[50]=”Iamstudent”,请编写程序将字符a插入到student之前,结果为“Iamastudent”,程序框架为:Void main(){ char s[50]=”Iamstudent”;………..}程序代码:#include"stdio.h"void main(){//6、已知字符串char s[50]="Iamstudent",请编写程序将字符a插入到student之前,结果为"Iamastudent"char s[50]="Iamstudent";int i;//字符串实际长度为10,数组下标为0~9的存储for(i=strlen(s)-1;s[i]!='s';i--)s[i+1]=s[i];//每个字符向后移一个s[i+1]=s[i];//'s'向后一定一个,‘s’的位置用来存放‘a’s[i]='a';printf("%s\n",s);}7、设计程序计算以下式子的值1+(1+2)+(1+2+3)+(1+2+3+4)+。
1试题 c语言试题以及答案
main()
{
int s;
float n,t,pi;
t=1; pi=0; n=1.0; s=1;
while(fabs(t)>1e-6)
{
pi=pi+t;
n=____;
s=-s;
t=____;
}
pi=____;
printf("pi=%10.6f \n",pi);
}
请在左边文本框当中输入正确答案
参考答案:n+2
请在左边文本框当中输入正确答案
参考答案:s/n
请在左边文本框当中输入正确答案
参考答案:pi*4
. 杭州师范大学
计算机技术基础(C程序设计)课程练习平台 .
学号: 12X2C0166CPP 姓名: 练习264 班级: 所有专业
注意:回答完所有试题之后,需要点击本页面最后的【交卷完成,退出系统】按钮。
题号 一 二 三 四 五
题型 判断题 单选题 程序填空题 程序阅读题 程序设计题
if(I+j= =2) s2=s2+a[I][j];
}
printf( "%d,%d\n", s1, s2) ;
}
A)、18 10 B)、18, 10 C)、10,18 D)、10 18
参考答案:B
第3题: 阅读程序,写出运行结果。
参考答案:对
对
错
第7题:在C语言中十六进制数100转换为十进制数为 256
参考答案:对
对
错
第8题:在标准C语言中,宏定义的结尾也要加“;”。
大学生C语言程序设计(第四版 谭洪强)实验7 答案
实验七 参考答案(参考答案)(1) (sy7-1.c )请编写函数fun ,它的功能是:计算并输出n (包括n )以内能被5 或9 整除的所有自然数的倒数之和。
例如,若主函数从键盘给n 输入20后,则输出为s=0.583333。
注意:n 的值要求不大于100。
算法分析:使用for 循环i ,遍历n 包含n 以内的所有整数,逐一判断每个i ,是否满足条件(能被5 或9 整除),如果满足,则把它的倒数累加到累加器里。
注意:i 的倒数要表示成:1.0/i;参考子函数如下:double fun(int n){double sum=0;int i;for(i=5;i<=n;i++)if(i%5==0||i%9==0)sum=sum+1.0/i;return sum;}(2) (sy7-2.c ) 请编写函数fun ,其功能是:根据以下公式计算s ,并计算结果作为函数值返回,n 通过形参传入。
n s ⋯++++⋯++++++=321132112111例如:若n 的值为11时,函数的值为1.83333算法分析:等式右边从第二项(i=2)开始,其分母等于前一项的分母加上i ;一共有n 项;求出每项的分母,然后把每项进行累加。
参考子函数如下:float fun(int n){float sum=1; //sum 中已经累加了第一项的值int i,m=1; //m 表示每项的分母;for(i=2;i<=n;i++){ m=m+i;sum=sum+1.0/m;}return sum;}(3) (sy7-3.c)请编写函数fun,其功能是:将两个两位数的正整数a、b 合并形成一个整数放在c 中。
合并的方式是:将 a 数的十位和个位依次放在c 数的十位和千位上,b 数的十位和个位数依次放在c 数的个位和百位上。
例如,当a=45,b=12,调用该函数后,c=5241。
算法分析:对一个两位数n,它的各位可以通过n%10求的,它的十位数可以通过n/10求的;所以分别用上述方法求的a和b的个位和十位,同时按照要求累加到c里。
4试题 c语言试题以及答案
第9题:只有在使用时才为该类型变量分配内存的存储类说明是 auto和 static
参考答案:错
对
错
第10题:在C语言中,合法的长整型常数是216D
参考答案:错
对
错
--------------------------------------------------------------------------------
str1[I]=’ ’;
str1[strlen(str1)-1]='\0';
}
}
A)、
*******
*****
***
*
B)、
*******
*****
***
*
C)、
*******
*****
#include <stdio.h>
#include <string.h>
void main()
{ char str1[ ]="*******";
for(int I=0;I<4; I++)
{
printf("%s\n",str1);
三、程序填空题
第1题:
读入一批正整数(以零或负数为结束标志),输出其中的素数。函数prime( int m)用于判断m是否为素数。素数就是只能被1和自身整除的正整数,1不是素数,2是素数。请为程序填空。
#include <stdio.h>
#include <math.h>
printf("%c,%d,%c,%d\n", c1,c1,c2,c2);
3试题 c语言试题以及答案
参考答案:错
对
错
第5题:在标准C中,“=”是判断两个数是否相等。
参考答案:错
对
错
第6题:在标准C语言中,指针函数参数传递是单向传递,且传递的是变量的地址
参考答案:对
对
错
第7题:EOF能够被识别为常量
参考答案:对
对
错
第8题:对于定义int *p赋初值;则初值是赋给P变量的。
参考答案:对
对
错
第9题:C语言中数据的存储结构是指数据的逻辑结构在内存中的表示
参考答案:对
第2题:下面程序的输出结果是:
#include<stdio.h>
int func( int a, int b)
{
int c;
c=a+b;
return c;
}
main()
{
int x=6, y=7, z=8, r;
r=func(x--+y--,z--);
A、for (;;x+=i);
B、while (1) x++
C、for (i=10;;i--) sum+=i;
D、for (;(c=getchar())!='\n';) printf("%c",c);
第10题:字符串指针变量中存入的是
参考答案:A
A、字符串的首地址
B、字符串
C、第一个字符
D、字符串变量
--------------------------------------------------------------------------------
电子学会C语言考级七级试题
C语言基础知识考试试题一、单项选择题1.!以下说法正确的是(D、)A、一个函数的函数体必要有执行部分,可没有变量定义B、一个函数的函数体必要有变量定义和执行部分,二者缺一可以C、以上都不对D、一个函数的函数体可没有变量定义和执行部分,函数可是空函数2.以下字符串是标识符的是(B、)(注:以字母或者下划线开头)A、9_studentB、_HJC、LINE1D、long3.以下说法正确的是(D、)A、在C语言程序中,要调用的函数必在main()函数中定义B、C语言程序总是从第一个定义的函数开始执行C、C语言程序中的main()函数必放在程序的开始部分D、C语言程序总是从main()函数开始执行4.以下说法正确的是(C、)A、main函数必放在C程序的最后B、main函数必放在C程序的开头C、main函数可放在C程序的中间部分,即在一些函数之前在另一些函数之后,但在执行C程序时是从main函数开始的D、main函数可放在C程序的中间部分,即在一些函数之前在另一个函数之后,但在执行C程序时是从程序开头执行的5.(A、)不是C语言提供的合法关键字()A、printB、switchC、defaultD、case6.在C语言中,每个语句和数据定义是用(D、)结束A、逗号B、句号C、括号D、分号7.以下说法正确的是(D、)A、C程序书写格式严格限制,一行内必写一个语句B、在执行C程序时不是从main函数开始的C、C程序书写格式严格限制,一行内必写一个语句,并且要有行号D、C程序书写格式自由,一个语句可分写在多行上8.如果有说明intx y不能够实现以下函数关系的程序段为()y=-1(x<0)y=0(x=0)y=1(x>0)A、y=-1elseif(x==0)y=0if(x!=0)elsey=1if(x>0)y=1elsey=0B、if(x<0)y=-1C、if(x>=0)if(x>=0)if(x>0)y=1{if(x>0)y=1}elsey=0elsey=-1elsey=-1D、y=09.C语言提供的合法关键字是(B、)A、printB、breakC、endD、funition10.如果要求在if后一对圆括号中表示a不等于0的关系则能正确表示这一关系的表达式是()A、!aB、a<>0C、aD、a=011.为了判断两个字符串s1和s2是否相等应当使用()A、if(s1=s2)B、if(s1==s2)C、if(strcmp(s1s2)==0)D、if(strcpy(s1s2))12.以下错误的描述为()A、在switch语句中使用break语句或者continue语句的作用相同B、break语句不能够用于循环语句和switch语句外的任何其他语句C、在循环语句中使用break语句是为了使流程跳出循环体提前结束循环D、在循环语句中使用continue语句是为了结束本次循环而不是终止整个循环13.(B、)是C程序的基本构成单位A、函数和过程C、子程序D、超文本过程14.C语言规定,必用(D、)作为主函数A、includeB、functionC、stdioD、main15.已知intj i=1执行语句“j=i++”后变量i的值为()A、2B、1C、-2D、–116.已知inti a执行语句“i=(a=2*3a*5)a+6”后变量i的值为()A、12B、6C、36D、3017.如果inti=10执行以下程序后变量i的正确结果为()switch(i){case0:i+=1case10:i+=1case11:i+=1default:i+=1}A、11B、10C、1318.C语言提供的合法关键字是(B、)A、procedureB、continueC、appendD、begin19.一个C程序可包含任意多个不同名的函数,但有且仅有一个(A、),一个C程序总是从(A、)开始执行。
杭州师范大学C语言试题第9套
for(I=0;__;I++) { printf("\n");
for(j=0;j<3;___)
{ p=___; printf("%10d",*p); } } }
请在左边文本框当中输入正确答案参考答案:I++
请在左边文本框当中输入正确答案参考答案:&a[I][j]
}
void inver(char str[])
{
char t;
int j,k;
for(j=0,k=strlen(str);j<(int)(strlen(str)/2);j++,k--)
{t=str[j];
str[j]=str[k-1];
str[k-1]=t;
}
}
{ int x,y;
scanf("%d",&x);
y=0) y=1;
else y=0;
printf("x=%d,y=%d\n",x,y);
}
A)、x=5, y= -1 B)、x=5, y=0 C)、x=5, y=1 D)、x==5, y==1答案:C
五、程序设计题
for(I=0;I<4;I++)
{ for(j=1;j<=I;j++) printf(" ");
n=7-2*I;
for(j=1;j<=n;j++) printf("%d",n);
printf("\n");
}
}
A)、7777777
杭州师范大学C语言试题第6套
一、判断题第1题:分号是C语句之间的分隔符,不是语句的一部分参考答案:错第2题:scanf 不能定义为用户标识符参考答案:对第3题:表达式“a∧00001111”的作用是将a的低四位取反,高四位不变。
对第4题:在if——else语句中,配对规则是else总是与最近的未配对的if配对。
参考答案:对第5题:在标准C中,语句必须以“;”结束。
参考答案:对第6题:在标准C语言中,链表和数组一样是一种动态数据类型。
参考答案:错第7题:标准C中并没有提供定义常量的方法。
参考答案:对第8题:表达式“3&5”的值为1。
参考答案:对第9题:用8位无符号二进制数能表示的最大十进制数为128 参考答案:错第10题:在标准C中,在使用函数printf输出数据时必须同函数中输出格式一致。
参考答案:对二、单选题选择正确的答案输入第1题:设x和y均为int型变量,则执行下的循环后,y值为for(y=1,x=1;y<=50;y++){if(x>=10)break;if(x%2==1){x+=5;continue;}x-=3;}参考答案:CA、2B、4C、6D、8第2题:以下正确的说法是:(建立函数的目的之一是)参考答案:BA、提高程序的执行效率B、提高程序的可读性C、减少程序的篇幅D、减少程序文件所占内存第3题:下面程序的输出是main(){int k=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}参考答案:DA、k=11,k=12,k=11B、k=11,k=13,k=13C、k=11,k=013,k=0xbD、k=11,k=13,k=b第4题:下面提供的一组函数中,用于按“数据块”的方式进行输入和输出的是参考答案:AA、fread(),fwrite()B、fscanf(),fprintf()C、fgets(),fputs()D、fgetc(),fputc()第5题:下列关于指针定义的描述,___________是错误的。
《C语言程序设计》试卷7参考答案
《C语言程序设计》试卷7参考答案试卷祥细批改一、选择题(每题2分,共40分)第1题:一个C程序的执行是从A. 本程序的main函数开始,到main函数结束。
B. 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。
C. 本程序的main函数开始,到本程序文件的最后一个函数结束。
D. 本程序文件的第一个函数开始,到本程序main 函数结束。
正确答案是:A 您选择的是:你没有做这道题第2题:#define能作简单的替代,用宏替代计算多顶式4*x+3*x+2的值,正确的宏定义是。
A. #define f(x) 4*x+3*x+2B. #define f 4*x3*x+2C. #define f(a) (4*a+3*a+2)D. #define (4*a+3*a+2) f(a)正确答案是:C 您选择的是:你没有做这道题第3题:下列运算符中优先级最高的是A. <B. +=C. &&D. !=正确答案是:A 您选择的是:你没有做这道题第4题:若有如下语句:int x=3;do { printf("%d\n" ,x -= 2);} while( ! ( -- x));则上面程序段结果是A. 输出的是1B. 输出的是1和-2C. 输出的是3和0D. 是死循环正确答案是:B 您选择的是:你没有做这道题第5题:若有说明:int a[10];则对a数组元素的正确引用是A. a[10]B. a[3.5]C. a[-5]D. a[10-10]正确答案是:D 您选择的是:你没有做这道题第6题:若有说明:int *p,m=5,n;以下正确的程序段是A. p=&nscanf`("%d",&p);B. p=&nscanf("%d",*p);C. scanf("%d",&n);*p=n;D. p=&n *p=m;正确答案是:D 您选择的是:你没有做这道题第7题:若以下变量均是整型,且num=Sum=7;则计算表达式Sum=num++,Sum++,++num;后Sum的值为A. 7 B. 8C. 9D. 10正确答案是:B 您选择的是:你没有做这道题第8题:以下叙述中不正确的是A. 预处理命令行都必须以#号开始B. 在程序中凡是以#号开始的语句行都是预处理命令行C. 程序在执行过程中对预处理命令进行处理D. 以下是正确的宏定义#define IBM_PC正确答案是:C 您选择的是:你没有做这道题第9题:以下关于运算符优先顺序的描述中正确的是A. 关系运算<算术运算符<赋值运算符<逻辑与运算符B. 逻辑与运算符<关系运算符<算术运算符<赋值运算符C. 赋值运算符<逻辑与运算符<关系运算符<算术运算符D. 算术运算符<关系运算符<赋值运算符<逻辑与运算符正确答案是:C 您选择的是:你没有做这道题第10题:以下叙述正确的是A. 可以把define和if定义为用户标识符B. 可以把define定义为用户标识符,但不能把if定义为用户标识符C. 可以把if定义为用户标识符,但不能把define定义为用户标识符D. define和if都不能定义为用户标识符正确答案是:B 您选择的是:你没有做这道题第11题:以下叙述正确的是A. 在C程序中,main函数必须位于程序的最前面B. C程序的每行中只能写一条语句C. C语言本身没有输入输出语句D. C程序进行编译的过程中,可发现注释中的拼写错误正确答案是:C 您选择的是:你没有做这道题第12题:以下叙述不正确的是A. 一个C源程序可由一个或多个函数组成B. 一个C源程序必须包含一个main函数C. C程序的基本组成单位是函数D. 在C语言中,注释说明只能位于一条语句的后面正确答案是:D 您选择的是:你没有做这道题第13题:一个C语言程序是由A. 一个主程序和若干子程序组成B. 函数组成C. 若干过程组成D. 若干子程序组成正确答案是:B 您选择的是:你没有做这道题第14题:若x,i,j,和k都是int型变量,则计算x=(i=4,j=16,k=32)表达式后,x的值为A. 4B. 16C. 32D. 52正确答案是:C 您选择的是:你没有做这道题第15题:C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符A. 必须为字母B. 必须为下划线C. 必须为字母或下划线D. 可以是字母、数字和下划线中任一种字符正确答案是:C 您选择的是:你没有做这道题第16题:下面四个选项中,均是合法整型常量的选项是A. 160 -0xffff 011B. -0xcdf 01a 0xeC. -01 986.012 0668D. -x48a 2e5 0x正确答案是:A 您选择的是:你没有做这道题第17题:以下不正确的叙述是A. 在C程序中,赋值运算符的优先级最低B. 在C程序中,APH和aph是两个不同的变量C. 若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变。
杭州师范大学825计算机基础2013-2018年考研专业课真题试卷
A. p 是一个指向一维数组的指针变量
B. p 是指针变量,指向一个 int 类型数据
C. p 是一个指向函数的指针,该函数返回一个 int 类型数据
D. 以上都不对
15、数组定义为 int a[3][2]={1, 2, 3, 4, 5, 6},数组元素( )的值为
6。
A. a[3][2] B. a[2][1] C. a[1][2] D. a[2][3] 16、如果定义 int a[10], *p=a; 则不与 a[5]等价的是( )。
C. 函数的定义可以嵌套,但函数的调用不可以嵌套
D. 函数的定义和函数的调用均可以嵌套
10、下面属于正确的宏定义的是( )。
2018 年 考试科目代码 825 考试科目名称 计算机基础 (本考试科目共 8 页,第 2 页)
杭州师范大学2018年考研专业课真题试卷(原版)
杭州师范大学硕士研究生入学考试命题纸
D. scanf("%d%s", b, &c);
3、设 a 为 5,执行下列语句后,b 的值不为 2 的是( )。
A. b = a / 2; B. b = 6 - (--a); C. b = a % 2; D. b = a > 3 ? 2 :
2; 4、若有定义:int a=3, b=4, c=5; 则以下表达式中值为 0 的是( )。
A. p++ B. &x++ C. *(p++) D. x++ 13、设 p1 和 p2 是指向同一个 int 型一维数组的指针变量,k 为 int 型变量,则
不能正确执行的语句是( )。
A. k=*p1+*p2; B. p2=k; C. p1=p2; D. k=*p1*(*p2); 14、语句:int (*p)(); 的含义是( )。
C语言程序设计试题及答案多套
. 《C语言程序设计》(卷)考核班级学生数印数考核方式闭卷考核时间 120 分钟一、基础知识(20项,共40分)1.一个C语言程序是由()组成的。
A.主程序 B.子程序 C.函数 D.过程2.转换说明符%x的输出形式是()。
A.十进制 B.八进制 C.十六进制 D.二进制3.若a、b均为int型变量,且a=100,则关于循环语句for(b=100;a!=b;++a,++b) printf ( “ ------------“) ;的正确说法是()。
A.循环体只执行一次 B.死循环C.循环体一次也不执行 D.输出-----------4.若x、y、z均为int 型变量,则执行下列语句后的z值为()。
x=1; y=2; z=3; z=(x>y)?z :y ; z = (z<y)?z:x;A.1 B.4 C.2 D.35.下面标识符中,合法的用户标识符为()。
A.P#Ad B.12a C.char D._int6.‘A’ + 3 的结果是()。
A.’A’ B.’D’的ASCⅡ码 C.65 D.37.语句char str[20];说明str是一个字符串,最多能表示()。
A.20个字符 B.19个字符 C.18个字符 D.21个字符8.将int 型变量n转换成float型变量的方法是()。
A.float n B.(float)n C.float(n) D.21个字符9.以下不正确的描述是()。
A.使用while和do-while循环时,循环变量初始化的操作应在循环语句之前完成B. while循环是先判断表达式后执行循环体语句C. do-while和for循环均是先执行循环体语句,后判断表达式D. for、while、do-while循环中的循环体均可以由空语句构成10.在循环中使用break 语句的功能是()。
A.使程序的执行跳出break所在的那一重循环B.使程序执行结束.C.跳出包含此break语句的所有循环D.终止本次循环,继续下次循环11.下面是一个初始化指针的语句:int *px = &a;其中指针变量的名字应该是()。
C语言第7章习题及实验参考答案~1
C语言第7章习题及实验参考答案~1第7章习题及参考答案1. 编程,从键盘上输入n个整数,按逆序输出这些数。
参考程序:#include#define N 5void main(){int i,t,a[N];for(i=0;i<n;i++)< p="">scanf("%d",&a[i]);for(i=0;i<n;i++)< p="">printf("%5d ",a[i]);printf("\n");for(i=0;i<="" p="">{t=a[i];a[i]=a[N-i-1];a[N-i-1]=t;}for(i=0;i<n;i++)< p="">printf("%5d ",a[i]);}2. 编程,已知某同学某门课程的平时、实习、测验和期末成绩,求该同学该门课程的总评成绩。
其中,平时、实习、测验和期末分别占10%、20%、20%、50%。
参考程序:#includevoid main(){int i ;float tot,a[4];for(i=0;i<4;i++)scanf("%f",&a[i]);tot=0.1*a[0]+0.2*a[1]+0.2*a[2]+0.5*a[3];printf("%f ",tot);}3. 编程,输入n个整数,将最小值与第一个数交换,最大值与最后一个数交换,然后输出交换后的n个数。
参考程序:# include "stdio.h"#define N 10void main(){int term[N];int i,max,min;for(i=1;i<n,i++)< p="">scanf("%d",&term[i]);max=0;min=0;for(i=1;i<10;i++){if (term[i]< term[min])min=i;if (term[i]> term[max])max=i;}if(term[min]!=term[0]){ t=term[min]; term[min]= term[0]; term[0]=t;}if(term[max]!=term[N-1]){ t=term[max]; term[max]= term[N-1]; term[N-1]=t;}for(i=1;i<n,i++)< p="">printf("%d",trem[i]);}4. 编程,已有一个已排好序的数组(由小到大),今输入另一个数,要求仍然有序。
2022年浙江省杭州市全国计算机等级考试C语言程序设计预测试题(含答案)
2022年浙江省杭州市全国计算机等级考试C语言程序设计预测试题(含答案) 学校:________ 班级:________ 姓名:________ 考号:________一、单选题(12题)1.数据管理技术发展的三个阶段中,()没有专门的软件对数据进行管理。
I.人工管理阶段II.文件系统阶段Ⅲ.数据库阶段A.A.仅IB.仅ⅢC.I和IID.II和Ⅲ2.下列叙述中错误的是( )。
A.线性表是由n个元素组成的一个有限序列B.线性表是一种线性结构C.线性表的所有结点有且仅有一个前件和后件D.线性表可以是空表3.以下叙述中错误的是()。
A.C语言编写的函数源程序,其文件名后缀可以是CB.C语言编写的函数都可以作为一个独立的源程序文件C.C语言编写的每个函数都可以进行独立的编译并执行D.一个C语言程序只能有一个主函数4. fscanf函数的正确调用形式是()A.fscanf(fp,格式字符串,输出表列);B.fscanf(格式字符串,输出表列,fp);C.fscanf(格式字符串,文件指针,输出表列),D.fscanf(文件指针,格式字符串,输入表列);5.有以下程序:#include<stdio.h>void fun(int*s){ static int i=0;do{s[J]=s[J]+s[j+I];}while(++j<2);}main(){ int k.a[l0]={1,2,3,4,5};for(k=1;k<3;k++)fun(a);for(k=0;k<5;k++)pfintf("%d",a[k]);printf("\n");}程序运行后的输出结果是()。
A.12345 B.23445 C.34756 D.357456.7.在最坏情况下比较次数相同的是()。
A.冒泡排序与快速排序B.简单插入排序与希尔排序C.简单选择排序与堆排序D.快速排序与希尔排序8. 表示关系a≤b≤c的C语言表达式为( )。
大学生计算机二级C语言考试题库(第1-10套)
所属年份:2010.9;2011.3;2012.3;下列给定程序中,函数fun 的功能是:计算如下公式()()()12222213572462n n s n -⨯+=-+-⨯…-1直到()()3221102n n -⨯+≤⨯,并且把计算结果作为函数值返回。
例如,若形参e 的值为1e -3,则函数返回值为0.551690。
请在下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
注意:部分源程序在文件BLANK1.C 中。
不得增行或删行,也不得更改程序的结构!、所属年份:2010.9;2011.3;2012.3;下列给定程序中函数fun 的功能是:求出如下分数序列的前n 项之和。
和值通过函数值返回。
23581321,,,,,,1235813…例如,若n =5,则应输出8.391667。
请改正程序中的错误,使其得出正确的结果。
注意:部分源程序在文件MODI1.C 中,不得增行或删行,也不得更改的程序的结构! 所属年份:2010.9;2011.3;2012.3;请编写函数fun ,其功能是:找出2×M 整型二维数组中最大元素的值,并将此值返回调用函数。
注意:部分源程序在文件PROG1.C 中。
请勿改动主函数main 和其它函数中的任何内容,仅在函数fun 的花括号中填入你编写的若干语句。
【参考答案】(1)3.0或(double)3 (2)> (3) (t +1)【参考答案】(1)double fun(int n)(2)s =s +(double)a/b ;【参考答案】int fun (int a[][M]){int i,j,max=a[0][0];for(i=0;i<2;i++)for(j=0;j<M;j++)if(max<a[i][j])max=a[i][j];return max;}所属年份:2010.9;2012.3下列给定程序中,函数fun 的功能是:计算如下公式前n 项的和并作为函数值返回。
杭州师范大学C语言试题第7套
一、判断题第1题:C语言是一种结构化程序设计语言。
参考答案:对第2题:函数调用可以作为独立的语句存在参考答案:对第3题:在C语言中使用位段时,一个位段可以在不同的存储单元中。
错第4题:在switch语句中,case后可不加“{、}”。
参考答案:对第5题:在标准C中,while后表达式只能是逻辑或关系表达式。
错第6题:在C语言中,定义结构体变量时可以省略关健字struct。
错第7题:在标准C中并不区分英文字符的大小写。
参考答案:错第8题:二进制文件打开后可以先读文件的末尾,而顺序文件不可以对第9题:单目运算符++的运算对象可以是char型变量和int型变量,但不能是float 型变量参考答案:对第10题:“--”运算符的优先级比“-”运算符的优先级低。
参考答案:错二、单选题选择正确的答案输入第1题:若有以下说明:int w[3][4]={{0,1},{2,4},{5,8}};int(*p)[4]=w;则数值为4的数组元素的表达式是参考答案:DA、*w[1]+1B、p++,*(p+1)C、w[2][2]D、p[1][1]第2题:若有说明:int i,j=7,*p=&i;,则与i=j;等价的语句是参考答案:BA、i= *p;B、*p=*&j;C、i=&j;D、i=* *p;第3题:设i是int型变量,f是float型变量,为了把100和765.12分别给i和f,用下面的语句:scanf("i=%d,f=%f",&i,&f);正确的输入是参考答案:BA、100<空格>765.12<回车>B、i=100,f=765.12<回车>C、100<回车>765.12<回车>D、x=100<回车>,y=765.12<回车>第4题:若fp是指向某文件的指针,且已读到该文件的末尾,则C语言函数feof(fp)的返回值是参考答案:BA、EOFB、1C、非零值D、NULL第5题:以下程序的输出结果是main(){int i,k,a[10],p[3];for (i=0;i<10;i++)a[i]=i;for (i=0;i<3;i++)p[i]=a[i*(i+1)];for (i=0;i<3;i++)k=p[i]*2;printf("%d\n",k);}参考答案:CA、10B、11C、12D、13第6题:C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是:参考答案:BA、地址传递B、单向值传递C、由实参传给形参,再由形参传回给实参D、由用户指定传递方式第7题:C语言中以追加方式打开一个文件应选择_______________参数参考答案:DA、“r”B、“w”C、“rb”D、“a”第8题:在C程序中,若对函数类型未加说明,则函数的隐含类型为_____。
浙江师范大学《C语言程序设计》考试卷
浙江师范大学《C语言程序设计》考试卷(2007——2008学年第 2 学期)考试形式笔试(闭卷)使用学生全校07级理科(非行知)专业考试时间120分钟出卷时间2008 年05月31日说明:考生应将全部答案都写在答题纸上,否则作无效处理。
试题1(每小题2分,共8分)阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序说明】输入一行字符,统计并输出英文字符、阿拉伯字母字符和其他字符的个数。
【运行示例】请输入一个字符串:f(x,y)=3*x*x+5*y+b英文字符阿拉伯字母字符其他字符7 2 9【程序】#include <>void main(){(1) ch;int charnum=0,digitnum=0,other=0;printf("请输入一个字符串:\n");while( (2) '\n'){if (3)charnum++;(4) (ch>='0' && ch<='9')digitnum++;elseother++;}printf("英文字符\t阿拉伯字母字符\t其他字符\n");printf("%d\t%d\t%d\n",charnum,digitnum,other);}(1)A、* B、floatC、charD、double(2)A、(ch=getchar())!= B、ch=getchar()!=C、(ch=getchar())=D、ch=getchar()=(3)A、(ch>='a' && ch<='z' && ch>='A' && ch<='Z')B、(ch>='a' && ch<='z' || ch>='A' && ch<='Z')C、(ch>=’a’ && ch<=’Z’)D、(ch>=’A’ && ch<=’z’)(4)A、else B、elseifC、else ifD、if试题2(每小题2分,共8分)阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、判断题第1题:C语言是一种结构化程序设计语言。
参考答案:对第2题:函数调用可以作为独立的语句存在参考答案:对第3题:在C语言中使用位段时,一个位段可以在不同的存储单元中。
错第4题:在switch语句中,case后可不加“{、}”。
参考答案:对第5题:在标准C中,while后表达式只能是逻辑或关系表达式。
错第6题:在C语言中,定义结构体变量时可以省略关健字struct。
错第7题:在标准C中并不区分英文字符的大小写。
参考答案:错第8题:二进制文件打开后可以先读文件的末尾,而顺序文件不可以对第9题:单目运算符++的运算对象可以是char型变量和int型变量,但不能是float 型变量参考答案:对第10题:“--”运算符的优先级比“-”运算符的优先级低。
参考答案:错二、单选题选择正确的答案输入第1题:若有以下说明:int w[3][4]={{0,1},{2,4},{5,8}};int(*p)[4]=w;则数值为4的数组元素的表达式是参考答案:DA、*w[1]+1B、p++,*(p+1)C、w[2][2]D、p[1][1]第2题:若有说明:int i,j=7,*p=&i;,则与i=j;等价的语句是参考答案:BA、i= *p;B、*p=*&j;C、i=&j;D、i=* *p;第3题:设i是int型变量,f是float型变量,为了把100和765.12分别给i和f,用下面的语句:scanf("i=%d,f=%f",&i,&f);正确的输入是参考答案:BA、100<空格>765.12<回车>B、i=100,f=765.12<回车>C、100<回车>765.12<回车>D、x=100<回车>,y=765.12<回车>第4题:若fp是指向某文件的指针,且已读到该文件的末尾,则C语言函数feof(fp)的返回值是参考答案:BA、EOFB、1C、非零值D、NULL第5题:以下程序的输出结果是main(){int i,k,a[10],p[3];for (i=0;i<10;i++)a[i]=i;for (i=0;i<3;i++)p[i]=a[i*(i+1)];for (i=0;i<3;i++)k=p[i]*2;printf("%d\n",k);}参考答案:CA、10B、11C、12D、13第6题:C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是:参考答案:BA、地址传递B、单向值传递C、由实参传给形参,再由形参传回给实参D、由用户指定传递方式第7题:C语言中以追加方式打开一个文件应选择_______________参数参考答案:DA、“r”B、“w”C、“rb”D、“a”第8题:在C程序中,若对函数类型未加说明,则函数的隐含类型为_____。
参考答案:AA、intB、doubleC、voidD、char第9题:Break语句的正确的用法是参考答案:BA、无论在任何情况下,都中断程序的执行,退出到系统下一层。
B、在多重循环中,只能退出最靠近的那一层循环语句。
C、跳出多重循环。
D、只能修改控制变量。
第10题:当顺序执行了文件关闭操作时,fclose函数的返回值是:参考答案:CA、-1B、tureC、0D、1三、程序填空题第1题:设计一个程序完成以下功能:若从键盘输入英文字母,则原样输出;输入其他字符不理会,直到输入Q键结束。
]#include "stdio.h"main(){char ch;do{ch =____;if (____)break;else if(_____)putchar(ch);}while(1);}参考答案:getchar()参考答案:ch == 'Q'或ch == 'q'参考答案:ch >= 'a' && ch <= 'z'|| ch >= 'A' && ch <= 'Z'第2题:以下程序中,fun函数的功能是求3行4列二维数组每行元素中的最大值,放在数组br中,主函数完成输出3行的最大值元素,请填空。
void fun(int ar[][4],int *br){int I,j,x;for(I=0;I<3;I++){x=ar[I][0];for(j=1;j<4;j++)if(___) x=ar[I][j];____=x;}}void main(){int a[3][4]={{12,41,36,28},{19,33,15,27},{3,27,19,1}};int b[3],I;____;for(I=0;I<3;I++)printf("%4d",___);printf("\n");}请在左边文本框当中输入正确答案参考答案:a[I][j]>x请在左边文本框当中输入正确答案参考答案:br[I]请在左边文本框当中输入正确答案参考答案:fun(a,b)请在左边文本框当中输入正确答案参考答案:b[I] 第3题:根据下式计算s的值,要求精确到最后一项的绝对值小于10的-6次方。
#include <stdio.h>#include <math.h>void main( ){int flag = 1, t = 1;double s=0,item=1;____;____;while( fabs(item)>=1e-6 ){item = flag * 1.0 / t;s = s + item;____;t = t + 2;}printf ( "s = %f\n", s);}请在左边文本框当中输入正确答案参考答案:s=0请在左边文本框当中输入正确答案参考答案:item=1请在左边文本框当中输入正确答案参考答案:flag=-flag四、程序阅读题第1题:阅读程序,写出运行结果。
#include <stdio.h>void main(){ int a[8]={1,0,1,0,1,0,1,0}, I;for(I=2;I<8;I++)a[I]+=a[I-1]+a[I-2];for(I=0;I<8;I++)printf("%3d",a[I]);printf("\n");}A)、1 0 1 0 1 0 1 0 B)、1 0 2 2 5 7 13 20 C)、1 1 2 3 5 8 13 21D)、1, 0, 1, 0, 1, 0, 1, 0参考答案:B第2题:阅读下列程序,写出程序运行的输出结果.#include <stdio.h>pw( int x , int n){ int j , p=1 ;for(j=1 ; j<=n ; j++)p=p*x ;return(p) ;}void main( ){ int j;for(j=0 ; j<3 ; j++)printf("%d,%d,%d\n", j, pw(2, j), pw(-3, j)) ;}A)、0,1,11,2,32,4,9B)、0, 2, 31, 4, 92, 8, 27C)、0, 1, 11, 2, -32, 4, -9D)、0,1,11,2,-32,4,9参考答案:D第3题:阅读下列程序,写出程序运行的输出结果。
#include <stdio.h>void main( ){ char c1, c2 ;c1='a'+'6'-'2' ;c2='a'+'6'-'3' ;printf("%c,%c\n",c2,c1) ;}A)、d, e B)、a, b C)、4, 3 D)、程序错误,没有结果输出参考答案:A第4题:阅读下列程序,写出程序运行的输出结果。
#include <stdio.h>void main( ){ char *p;char s[ ]=”ABCD” ;for(p=s;p<s+4;p++)printf(“%c,%s\n”, *p,p);}A)、A,ABCDB,BCDC,CDD,DB)、A,ABCDB,BCDC,CDC)、A,ABCDB,BCDD)、A,ABCD参考答案:A第5题:阅读程序,写出运行结果。
#include <stdio.h>void main( ){ int a=1,s=0;switch(a){ case 1: s+=1;case 2: s+=2;default : s+=3;}printf("s=%d,",s);}A)、s=1 B)、s=3 C)、s=6 D)、s=0参考答案:C五、程序设计题第1题:三个整数a、b、c,由键盘输入,从大到小依次放入a,b,c中输出。
参考答案:#include<stdio.h>main(){int a,b,c,temp;printf("请输入3个整数:");scanf("%d,%d,%d",&a,&b,&c);if(a<b){temp=a;a=b;b=temp;}if(a<c){ temp=a;a=c;c=temp;}if(b<c){ temp=b;b=c;c=temp;}printf("%d,%d,%d",a,b,c);}第2题:输入一数组,元素个数为20,统计出其中的奇数和偶数,并分别放入两个数组中,并分别求出她们的和。
输入输出都应有相应的提示。
参考答案:#include<stdio.h>main(){int sum[20],nq[20],ne[20],j,k,l,sumq,sume;k=0;l=0;sumq=0;sume=0;for(j=0;j<20;j++){scanf("%d",&sum[j]);if(sum[j]%2==0){ne[k]=sum[j];sume=sume+sum[j];k++;}else{nq[l]=sum[j];sumq=sumq+sum[j];l++;}}printf("偶数序列为:");for(j=0;j<k;j++)printf("%3d",ne[j]);printf("%5d\n",sume);printf("奇数序列为:");for(j=0;j<l;j++)printf("%3d",nq[j]);printf("%5d",sumq);}第3题:打印出如下所示的杨辉三角形(要求打印出10行)。