C语言》课程期末考试-第四套

合集下载

期末c语言试题及答案

期末c语言试题及答案

期末c语言试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项不是C语言中的关键字?A. intB. charC. voidD. for答案:C2. C语言中,用于定义单精度浮点型变量的关键字是?A. floatB. doubleC. intD. char答案:A3. 在C语言中,以下哪个运算符用于取模?A. %B. /C. *D. -答案:A4. 下列哪个选项不是C语言中的控制语句?A. ifB. switchC. whileD. do-while答案:B5. C语言中,用于定义一个结构体的关键字是?A. structB. unionC. enumD. typedef答案:A6. 在C语言中,以下哪个函数用于将字符串连接到另一个字符串的末尾?A. strcatB. strcpyC. strcmpD. strlen答案:A7. 下列哪个选项不是C语言中的标准库函数?A. printfB. scanfC. mallocD. strcpy答案:D8. 在C语言中,以下哪个关键字用于定义一个函数?A. functionB. defC. voidD. int答案:C9. C语言中,用于定义一个枚举类型的关键字是?A. enumB. structC. unionD. typedef答案:A10. 在C语言中,以下哪个选项用于定义一个指针?A. *B. &C. %D. #答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型变量的关键字是________。

答案:int2. C语言中,用于定义一个字符型变量的关键字是________。

答案:char3. C语言中,用于定义一个双精度浮点型变量的关键字是________。

答案:double4. C语言中,用于定义一个布尔型变量的关键字是________。

答案:_Bool5. C语言中,用于定义一个数组的关键字是________。

2024年6月青少年软件编程C语言等级考试试卷四级真题

2024年6月青少年软件编程C语言等级考试试卷四级真题

2024年6月青少年软件编程C语言等级考试试卷四级真题分数:100 题数:41.人以群分(25分)。

社交网络中我们给每个人定义了一个“活跃度”,现希望根据这个指标把人群分为两大类,即外向型(outgoing,即活跃度高的)和内向型(introverted,即活跃度低的)。

要求两类人群的规模尽可能接近,而他们的总活跃度差距尽可能拉开。

输入:第一行给出一个正整数N(2≤N≤105)。

随后一行给出N个正整数,分别是每个人的活跃度,其间以空格分隔。

题目保证这些数字以及它们的和都不会超过231。

输出:按下列格式输出:,其中N1是外向型人的个数;N2是内向型人的个数;N3是两群人总活跃度之差的绝对值。

2.那就别担心了(25分)。

下图转自“英式没品笑话百科”的新浪微博——所以无论有没有遇到难题,其实都不用担心。

博主将这种逻辑推演称为“逻辑自洽”,即从某个命题出发的所有推理路径都会将结论引导到同一个最终命题(开玩笑的,千万别以为这是真正的逻辑自洽的定义……)。

现给定一个更为复杂的逻辑推理图,本题就请你检查从一个给定命题到另一个命题的推理是否是“逻辑自洽”的,以及存在多少种不同的推理路径。

例如上图,从“你遇到难题了吗?”到“那就别担心了”就是一种“逻辑自洽”的推理,一共有3条不同的推理路径。

输入:首先在一行中给出两个正整数N(1<N≤500)和M,分别为命题个数和推理个数。

这里我们假设命题从1到N编号。

接下来M行,每行给出一对命题之间的推理关系,即两个命题的编号S1 S2,表示可以从S1推出S2。

题目保证任意两命题之间只存在最多一种推理关系,且任一命题不能循环自证(即从该命题出发推出该命题自己)。

最后一行给出待检验的两个命题的编号A B。

输出:在一行中首先输出从A到B有多少种不同的推理路径,然后输出Yes如果推理是“逻辑自洽”的,或No如果不是。

题目保证输出数据不超过109。

3.凑零钱(25分)。

韩梅梅喜欢满宇宙到处逛街。

大学c语言期末考试题库试题及答案

大学c语言期末考试题库试题及答案

大学c语言期末考试题库试题及答案在即将到来的大学C语言期末考试中,同学们可能会遇到各种类型的题目。

以下是一些典型的试题及其答案,供同学们复习参考。

1. 以下哪个选项是C语言中的关键字?A. intB. IntegerC. INTD. integer答案:A. int2. 若有定义:int a = 10; 则表达式 a++ 的值是多少?A. 9B. 10C. 11D. 无法确定答案:B. 103. 在C语言中,以下哪个函数用于计算字符串的长度?A. strlen()B. length()C. str_length()D. string_length()答案:A. strlen()4. 若有以下代码片段:```cint x = 5;printf("%d", x++);```执行后输出的结果是?A. 4B. 5C. 6D. 无法确定答案:B. 55. 在C语言中,以下哪个选项表示“逻辑与”操作?A. &&B. ||C. !D. &答案:A. &&6. 若有以下代码:```cint a = 3, b = 4, c;c = a + b;```则变量 c 的值是多少?A. 7B. 3C. 4D. 无法确定答案:A. 77. 在C语言中,以下哪个选项是正确的二维数组声明?A. int array[2,3];B. int array[2][3];C. int array[2][3][4];D. int array[][];答案:B. int array[2][3];8. 若有以下函数定义:```cint add(int x, int y) {return x + y;}```则调用 add(5, 3) 时,返回的值是多少?A. 2B. 5C. 8D. 无法确定答案:C. 89. 在C语言中,以下哪个选项表示“不等于”的比较运算符?A. ==B. !=C. =D. <=答案:B. !=10. 若有以下代码:```cchar str[] = "Hello";str[0] = 'h';```执行后,str 数组的内容是什么?A. "hello"B. "Hello"C. "helloworld"D. "hEllo"答案:A. "hello"这些题目覆盖了C语言的基础知识点,包括关键字、变量、函数、数组以及基本的控制结构。

青岛科技大学c语言期末考试题(第四套)

青岛科技大学c语言期末考试题(第四套)

第四套试题一、选择题(20个小题,每小题2分,共40分):1、以下不正确的C语言标识符是____。

A.ABC B.abc C.a_bc D.ab.c2、设a,b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,值为0的表达式是____。

A.‘a’&&‘b’ B.a<=b C.a||b+c&&b-c D.!((a<b)&&!c||1) 3、若有以下定义和语句:char c1=‘b’,c2=‘e’;printf(“%d,%c\n”,c2-c1,c2-‘a’+‘A’);则输出结果是____。

A.2,M B.3,EC.2,e D.输入项与对应的格式控制不一致,输出结果不确定4、当运行以下程序时,在键盘上从第一列开始输入9876543210<CR>(此处<CR>代表Enter),则程序的输出结果是____。

main( ){ int a;float b,c;scanf(“%2d%3f%4f”,&a,&b,&c);printf(“\na=%d,b=%f,c=%f\n”,a,b,c);}A.a=98,b=765,c=4321 B.a=10,b=432,c=8765C.a=98,b=765.000000,c=4321.000000D.a=98,b=765.0,c=4321.05、设有如下函数定义:int f(char *s){ char *p=s;while(*p!=‘\0’) p++;return (p-s);}如果在主程序中用下面的语句调用上述函数,则输出结果为____。

printf(“%d\n”,f(“goodbye!”));A.3 B.6 C.8 D.06、以下程序的输出结果是____。

main( ){ int w=4,x=3,y=2,z=1;pr intf(“%d\n”,(w<x?w:z<y?z:x));}A.1 B.2 C.3 D.47、以下程序段的输出结果是____。

c本科目4试题及答案

c本科目4试题及答案

c本科目4试题及答案一、选择题(每题2分,共20分)1. 以下哪个选项是C语言中合法的变量名?A. 123abcB. intC. _myVarD. my-variable答案:C2. C语言中,用于定义一个整型变量的关键字是?A. intB. floatC. charD. double答案:A3. 在C语言中,表示逻辑“与”的运算符是?A. &&B. ||C. =D. ==答案:A4. 下列哪个函数用于计算数组中元素的总和?A. sum()B. count()C. average()D. max()答案:A5. 在C语言中,如何表示一个无返回值的函数?A. voidB. intC. charD. float答案:A6. C语言中,哪个关键字用于声明一个函数?A. functionB. defC. voidD. return答案:C7. 以下哪个选项是C语言中正确的注释方式?A. // 这是注释B. /* 这是注释 */C. <! 这是注释 -->D. <!-- 这是注释 -->答案:A8. 在C语言中,哪个运算符用于比较两个数是否相等?A. ==B. !=C. >D. <答案:A9. C语言中,用于定义一个浮点型变量的关键字是?A. intB. floatC. charD. double答案:B10. 在C语言中,哪个函数用于输出字符串到控制台?A. printf()B. scanf()C. coutD. cin答案:A二、填空题(每题2分,共20分)1. 在C语言中,用于定义一个字符型变量的关键字是______。

答案:char2. C语言中,用于定义一个双精度浮点型变量的关键字是______。

答案:double3. 在C语言中,用于定义一个布尔型变量的关键字是______。

答案:_Bool4. C语言中,用于定义一个字符串的关键字是______。

青少年软件编程(C语言)等级考试试卷(四级)202012

青少年软件编程(C语言)等级考试试卷(四级)202012

青少年软件编程(C语言)等级考试试卷(四级)分数:100 题数:4一、编程题(共4题,共100分)1.开餐馆试题编号:-016试题类型:编程题标准答案:试题难度:一般试题解析:#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int f[1010],a[1010],v[1010];int main(){ int t,o,i,j,k,n,m,maxn;cin>>t;for(o=1;o<=t;o++){ cin>>n>>k;for(i=1;i<=n;i++) cin>>a[i];for(i=1;i<=n;i++) cin>>v[i];memset(f,0,sizeof(f));f[1]=v[1];for(i=2;i<=n;i++){ maxn=0;for(j=1;j<i;j++)if(f[j]>maxn&&a[i]-a[j]>k) maxn=f[j];f[i]=v[i]+maxn;}maxn=0;for(i=1;i<=n;i++) maxn=max(maxn,f[i]);cout<<maxn<<endl;}return 0;}2.邮票收集试题编号:-017试题类型:编程题标准答案:试题难度:一般试题解析:#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int a[1010],f[1010];int main(){ int n,k,i,j;cin>>n>>k;while(n!=0&&k!=0){ for(i=1;i<=n;i++) cin>>a[i];for(i=1;i<=k;i++) f[i]=1000000000;f[0]=0;for(i=1;i<=n;i++)for(j=a[i];j<=k;j++)f[j]=min(f[j],f[j-a[i]]+1);if(f[k]!=1000000000) cout<<f[k]<<endl;else cout<<-1<<endl;cin>>n>>k;}return 0;}3.带通配符的字符串匹配试题编号:-018试题类型:编程题标准答案:试题难度:一般试题解析:#include<iostream>#include<cstdio>#include<algorithm>#include<cmath>#include<string>#include<cstring>using namespace std;int f[3005][3005]={0},q[3005]={0},prt[3005][3005]={0};string st1,st2;int gcd(int a,int b){ if(b==0)return a;return gcd(b,a%b);}void Get(int x,int y){ if(x==0&&y==0)return;int lx=x-1,ly=prt[x][y];if(st1[x]=='*'&&y!=ly){q[++q[0]]=y-ly;}Get(lx,ly);}int main(){ cin>>st1>>st2;int i,j,k,bj,div,ans=0,len1=st1.length(),len2=st2.length();st1=' '+st1;st2=' '+st2;f[0][0]=1;for(i=1;i<=len1;i++)for(j=0;j<=len2;j++){if(st1[i]=='?'||st1[i]==st2[j]){f[i][j]=f[i-1][j-1];if(f[i][j])prt[i][j]=j-1;}else if(st1[i]=='*'){for(k=j,bj=0;k>=0;k--)if(f[i-1][k]){bj=1;break;}if(bj){f[i][j]=1;prt[i][j]=k;}}}if(f[len1][len2]){cout<<"matched\n";}else cout<<"not matched";return 0;}4.删除数字试题编号:-019试题类型:编程题标准答案:试题难度:一般试题解析:#include<iostream>#include<cstdio>#include<cstring>using namespace std;struct node{ int data,lenth;int next;}a[1010];int main(){ int t,n,i,j,p,maxn,o;cin>>t;for(o=1;o<=t;o++){ cin>>n;for(i=1;i<=n;i++)cin>>a[i].data;a[n].lenth=1;a[n].next=0;for(i=n-1;i>=1;i--){ maxn=p=0;for(j=i+1;j<=n;j++)if((a[j].lenth>maxn)&&(a[i].data<a[j].data)){p=j;maxn=a[j].lenth;} a[i].lenth=maxn+1;a[i].next=p;}maxn=j=0;for(i=1;i<=n;i++)if(a[i].lenth>maxn){maxn=a[i].lenth;j=i;}cout<<maxn<<endl;}return 0;}。

c语言程序期末考试试题及答案

c语言程序期末考试试题及答案

c语言程序期末考试试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义函数?A. structB. staticC. voidD. function答案:C2. 下列哪个选项不是C语言中的基本数据类型?A. intB. floatC. charD. string答案:D3. 在C语言中,以下哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A4. 下列哪个选项是正确的C语言注释方式?A. // 这是注释B. /* 这是注释 */C. //* 这是注释D. /* 这是注释 */答案:B5. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A6. 在C语言中,以下哪个关键字用于定义一个指针?A. intB. charC. floatD. *答案:D7. 在C语言中,以下哪个选项是正确的数组声明方式?A. int arr[5] = {1, 2, 3};B. int arr[] = {1, 2, 3};C. int arr[5] = {1, 2};D. int arr = {1, 2, 3};答案:A8. 在C语言中,以下哪个选项是正确的条件语句?A. if (condition)B. if (condition) { }C. if (condition) { } else { }D. All of the above答案:D9. 在C语言中,以下哪个选项是正确的循环语句?A. for (int i = 0; i < 10; i++)B. while (condition)C. do { } while (condition);D. All of the above答案:D10. 在C语言中,以下哪个函数用于计算两个数的和?A. printf()B. scanf()C. sum()D. None of the above答案:D二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量的正确方式是:`int ____;`答案:变量名2. 要输出一个字符串,应该使用函数:`____`答案:printf3. 要读取一个字符,应该使用函数:`____`答案:scanf4. 在C语言中,数组的索引从____开始。

C语言期末考试试卷及答案4

C语言期末考试试卷及答案4

一、单项选择题 (本大题共20小题,每小题1分,共20分)1. 构成一个可执行的C程序的是A. 一个主函数和若干个非主函数B. 若干个主函数和若干个非主函数C. 一个主函数和最多一个非主函数 C. 若干个主函数和最多一个非主函数2. 下面那一个是合法的C语言标识符: ()A. abcB. longC. 4thD. a-33. 用十进制数表示表达式“12|012”的运算结果是()A. 1B. 0C. 14D. 124. 以下哪一个不是C语言合法的运算符()A. *B. &C. @D. +5. 按照结构化程序设计的概念,C语言程序设计的基本单位是( )A. 过程B. 函数C. 子程序D. 语句6. 下面哪个表达式的值为4. ( )A. 11/3B. 11.0/3C. (float)11/3D. (int)(11.0/3+0.5)7.下面C代码的输出结果是()int answer,result;answer=100;result=answer-10;printf(“The result is %d”, result+5);A. The result is 90B. The result is 95C. The result is 10D. The result is 1008. 设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;}A. 2.B. 4C. 6D. 89.有如下程序,输出结果是()main(){float x=4.0,y;if(x<0.0)y=0.0;else if(x<8.0) y=1.0/x;else y=1.0;printf(“%f\n”,y);}A. 0.000000 C. 0.500000 D. 1.00000010.合法的数组定义是()A. int a[]={“String”};B. int a[5]={0,1,2,3,4,5}C. char a={“String”};D. char a[]={0,1,2,3,4,5}11.语句printf(“%d\n”,strlen(“ats\n\\g”));的输出结果是()A. 5B. 6C. 7 D 812.设有定义:char s[20]={“Good morning”}; 则s所占的字节数为:A. 20B. 12C. 13D. 2113. C语言规定,函数返回值的类型由什么决定( )A return语句中的表达式类型B 调用该函数时的主调函数类型C 调用该函数时的形参类型D 在定义该函数时所指定的函数类型14.C语言中函数的隐含存储类型是A. autoB. staticC. externD. 无存储类型15.以下函数的功能是交换x和y的值,不正确的是:A.funa(int *x,int *y)B. funb(int x,int y){ int *p; { int t;*p=*x;*x=*y;*y=*p;} t=x;x=y;y=t;}C.func(int *x,int *y)D. fund(int *x,int *y){ int p; { *x=*x+*y;*y=*x-*y; *x=*x-*y;p=*x;*x=*y;*y=p; }}16.设有以下宏定义,则执行语句 z=2*(N+Y(5+1)); 后,z的值为()#define N 3#define Y(n) ((N+1)*n)A. 出错B. 42C. 48D. 5417.以下程序的输出结果是()#define ADD(x) (x)+(x)main(){ int a=4,b=6,c=7,d=ADD(a+b)*c;printf(“d=%d”,d); }A d=70B d=140C d=280D d=8018.设有定义语句struct {int x; int y;} d[2]={{1,3},{2,7}}; 则printf(“%d\n”, d[0].y/d[0].x*d[1].x); 的输出是()A. 0B. 1C. 3D. 619. 设int b[20]; 则对b数组元素的错误引用是:A. b[5]B. *(b+1)C. b[20%2]D. b(5)20.若文件型指针fp已指向某文件的末尾,则函数feof(fp)返回值是()A. 0B. –1C. 非零值D. NULL二、填空题 (本大题共10小题,每小题2分,共20分)1.若自定义函数要求返回一个值,则应在该函数体中有一条_______________语句,若自定义函数要求不返回值,则应该在定义该函数时的返回类型是__________________.2. 当a=3,b=4,c=5时,写出下列各式的值。

2023年9月青少年软件编程C语言等级考试试卷四级真题(含答案)

2023年9月青少年软件编程C语言等级考试试卷四级真题(含答案)

2023年9月青少年软件编程C语言等级考试试卷四级(含答案)分数:100题数:4一、编程题(共4题,共100分)第1题.酒鬼Santo刚刚与房东打赌赢得了一间在New Clondike的大客厅。

今天,他来到这个大客厅欣赏他的奖品。

房东摆出了一行瓶子在酒吧上。

瓶子里都装有不同体积的酒。

令Santo高兴的是,瓶子中的酒都有不同的味道。

房东说道:“你可以喝尽可能多的酒,但是一旦打开酒盖你就必须把它喝完,喝完一瓶后把它放回原处。

还有一件最重要的事,你必须从左至右依次喝,并且不能连续超过三瓶,不然会给你带来坏运气。

”现在可怜的Santo站在酒吧前努力的想着,他到底应该喝哪几瓶才能使喝的酒最多呢?请帮助他找出他应该喝的酒瓶号,因为思考让他感到不安。

时间限制:2000内存限制:131072输入:第一行一个整数N,有N个酒瓶,N<=700接下有N行,第I+1行的数字代表酒瓶I中酒的体积。

输出:一个数字,喝的酒的最大总体积,遵守以上规则,使得三个连续瓶子中至少一个瓶子是满的。

样例输入:661013981样例输出:33参考答案:#include<bits/stdc++.h>using namespace std;int f[701][5];int main(){int n;int a[1000];cin>>n;for(int i=1;i<=n;i++){cin>>a[i];}for(int i=1;i<=n;i++){f[i][0]=f[i-1][3];int mx=f[i][0];for(int j=1;j<=2;j++){f[i][j]=f[i-1][j-1]+a[i];mx=max(mx,f[i][j]);}f[i][3]=mx;}cout<<f[n][3];}第2题.大盗阿福阿福是一名经验丰富的大盗,趁着月黑风高,阿福打算今晚洗劫一条街上的店铺。

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

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

c语言期末考试题及答案详解C语言期末考试题及答案详解一、选择题(每题2分,共20分)1. 下列哪个关键字用于定义C语言的函数?A. classB. functionC. voidD. int答案:D2. C语言中,哪个运算符用于取模?A. /B. %C. *D. -答案:B3. 在C语言中,哪个关键字用于声明一个变量为静态存储类别?A. staticB. autoC. registerD. extern答案:A4. 下列哪个不是C语言的控制语句?A. ifB. switchC. forD. loop答案:D5. 在C语言中,哪个函数用于将整数转换为字符串?A. atoiB. itoaC. atolD. tolower答案:B6. C语言中,哪个函数用于计算两个数的绝对值?A. fabsB. absC. fmodD. pow答案:B7. 在C语言中,哪个关键字用于声明一个函数的返回类型?A. returnB. typeC. valueD. type_of答案:A8. 下列哪个不是C语言的数组类型?A. intB. charC. floatD. string答案:D9. C语言中,哪个关键字用于定义一个结构体?A. structB. unionC. enumD. class答案:A10. 在C语言中,哪个函数用于打开一个文件?A. fopenB. fcloseC. freadD. fwrite答案:A二、填空题(每空2分,共20分)1. C语言中,一个完整的程序至少包含一个________函数。

答案:main2. 定义一个字符数组char str[10],使用________运算符可以给数组赋值。

答案:=3. 在C语言中,使用________关键字可以进行条件判断。

答案:if4. 一个C语言程序在编译时,首先会被预处理器处理,其中________指令用于包含头文件。

答案:#include5. C语言中,使用________函数可以输出格式化的字符串。

C语言第四套题

C语言第四套题

C语言第四套题一、选择题1、下列数据结构中,属于非线性结构的是()。

A) 循环队列B) 带链队列C) 二叉树D) 带链栈参考答案:C【解析】树是简单的非线性结构,所以二叉树作为树的一种也是一种非线性结构。

2、下列数据结构中,能够按照"先进后出"原则存取数据的是()。

A) 循环队列B) 栈C) 队列D) 二叉树参考答案:B【解析】栈是按先进后出的原则组织数据的。

队列是先进先出的原则组织数据3、对于循环队列,下列叙述中正确的是()。

A) 队头指针是固定不变的B) 队头指针一定大于队尾指针C) 队头指针一定小于队尾指针D) 队头指针可以大于队尾指针,也可以小于队尾指针参考答案:D【解析】循环队列的队头指针与队尾指针都不是固定的,随着入队与出队操作要进行变化。

因为是循环利用的队列结构所以对头指针有时可能大于队尾指针有时也可能小于队尾指针。

4、算法的空间复杂度是指()。

A) 算法在执行过程中所需要的计算机存储空间B) 算法所处理的数据量C) 算法程序中的语句或指令条数D) 算法在执行过程中所需要的临时工作单元数参考答案:A【解析】算法的空间复杂度是指算法在执行过程中所需要的内存空间。

所以选择A)。

5、软件设计中划分模块的一个准则是()。

A) 低内聚低耦合B) 高内聚低耦合C) 低内聚高耦合D) 高内聚高耦合参考答案:B【解析】一般较优秀的软件设计,应尽量做到高内聚,低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。

6、下列选项中不属于结构化程序设计原则的是()。

A) 可封装B) 自顶向下C) 模块化D) 逐步求精参考答案:A【解析】结构化程序设计的思想包括:自顶向下、逐步求精、模块化、限制使用goto语句,所以选择A)。

7、软件详细设计生产的图如下:该图是()A) N-S图B) PAD图C) 程序流程图D) E-R图参考答案:C【解析】N-S图提出了用方框图来代替传统的程序流程图,所以A)不对。

大学c语言的期末试题及答案

大学c语言的期末试题及答案

大学c语言的期末试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述中,错误的是()。

A. C语言是一种高级语言B. C语言可以直接在计算机上运行C. C语言具有结构化的特点D. C语言具有丰富的数据类型答案:B2. 在C语言中,用于定义一个整型变量的关键字是()。

A. intB. floatC. charD. double答案:A3. C语言中,用于输入输出的库函数是()。

A. <stdio.h>B. <math.h>C. <stdlib.h>D. <string.h>答案:A4. 下列选项中,不属于C语言运算符的是()。

A. %C. :D. <答案:C5. 在C语言中,用于定义一个字符数组的关键字是()。

A. intB. floatC. charD. double答案:C6. 下列关于C语言函数的描述中,正确的是()。

A. 函数必须有返回值B. 函数可以没有参数C. 函数的返回值类型不能是数组D. 函数的返回值类型必须是int答案:B7. 在C语言中,用于定义一个浮点型变量的关键字是()。

A. intB. floatC. charD. double答案:B8. C语言中,用于定义一个字符串常量的关键字是()。

B. stringC. strD. text答案:A9. 下列关于C语言指针的描述中,错误的是()。

A. 指针可以存储地址B. 指针可以存储值C. 指针可以作为函数的参数D. 指针可以作为函数的返回值答案:B10. 在C语言中,用于定义一个布尔型变量的关键字是()。

A. boolB. intC. charD. float答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用____关键字来定义一个静态变量。

答案:static2. C语言中,使用____关键字来定义一个全局变量。

答案:extern3. 在C语言中,____运算符用于取地址。

C语言试卷第4套 含答案

C语言试卷第4套 含答案

第四套一、判断题第1题:只有在使用时才为该类型变量分配内存的存储类说明是auto和static (错)第2题:在标准C语言中,枚举元素作为常量,它们是有确定的值的,它们的值按顺序从0开始依次增加且不可以改变。

参考答案:错第3题:在C语言中,合法的长整型常数是216D 。

参考答案:错第4题:在标准C中,语句必须以“;”结束。

参考答案:对第5题:定义char *string=”string?”是将字符串的值赋给指针变量string。

参考答案:错第6题:函数调用在main之后出现必须先定义后使用。

参考答案:对第7题:在C语言中,存储一个汉字的国标码所需要的字节数为2 。

参考答案:对第8题:在标准C语言中,共用体变量中的各成员可以分布在不同的存储空间中。

(错)第9题:在标准C中,所有关系运算符的优先级都相同。

参考答案:错第10题:C语言中的文本文件以ASCII码形式存储数据。

参考答案:对二、选择题(请选择正确的选项)第1题:当a=1,b=3,c=5,d=4时,执行下面语句后,x的值为if(a<b)if(c<d) x=1; elseif(a<c)if(b<d)x=2;else x=3;else x=6;else x=7; 参考答案:BA、1B、2C、3D、6第2题:若fp是指向某文件的指针,且已读到该文件的末尾,则C语言函数feof(fp)的返回值是参考答案:BA、EOFB、1C、非D、NULL第3题:下面程序段的运行结果是:int n=0; while(n++<=2); printf("%d",n) 参考答案:C A、2 B、3 C、4 D、有语法错第4题:C语言规定,函数返回值的类型是由参考答案:D A、return语句中的表达式类型所决定B、调用该函数时的主函数类型所决定C、调用该函数时系统临时决定D、在定义该函数时所指定的函数类型所决定第5题:下面程序的输出是#include "stdio.h"#include "string.h"main(){char s[ ]="Hangzhou China";printf("%d,%d\n",sizeof(s),strlen(s));} 参考答案:AA、15,14B、15,15C、14,14D、14,15第6题:循环for(i=1,j=6; ++i!=--j; ) s=i+j; 将执行参考答案:DA、2次B、3次C、4次D、以上均不是第7题:在函数间传递数据的四种方式中,不能把被调函数的数据带回到主调函数的是参考答案:A A、值传递B、地址传递C、返回值传递D、全局外部变量第8题:若x是整型变量,pb是整型指针变量,则正确的赋值表达式是参考答案:A A、pb=&x B、pb=x; C、*pb=&x; D、*pb=*x第9题:表示关系x≤y≤z的c语言表达式为参考答案:AA、(x<=y)&&(y<=z)B、(x<=y)and(y<=z)C、(x<=y<=z)D、(x<=y)&(y<=z)第10题:一个C语言程序是由参考答案:B A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成三、填空题(请把正确的选项填入试题前的空格中)第1题:2、下列程序利用函数求两个数的最大值,请在____处补上必要的代码:_____;main(){float a,b,c;scanf("%f,%f",&a,&b);c = max (a,b);printf("max = %f\n",c);}float max(float x, float y){float z;_____;return(z) ;}参考答案:float max(float,float)参考答案:z = x>y ? X : y第2题:读入一批正整数(以零或负数为结束标志),输出其中的素数。

c本科四试题及答案

c本科四试题及答案

c本科四试题及答案试题一:1. 在计算机科学中,什么是算法?请给出一个具体的例子。

2. 请简要解释什么是二进制,为什么计算机使用二进制表示数据。

3. 描述一下计算机内存的工作原理。

4. 请解释什么是操作系统,并列出至少三个常见的操作系统。

5. 什么是数据库?请列举三种常见的数据库软件。

答案一:1. 算法是一系列解决问题的规则和步骤。

例如,冒泡排序是一种常见的排序算法,它通过比较相邻的元素并交换它们的位置来将一个数组按升序排列。

2. 二进制是一种使用0和1表示数值的计算机数制系统。

计算机使用二进制表示数据是因为电子设备可以更好地处理和存储二进制信号。

3. 计算机内存是用于存储和读取数据的一块物理硬件。

它工作原理是将数据存储在内存单元中,每个内存单元都有一个唯一的地址,可以通过地址来读取和写入数据。

4. 操作系统是管理计算机硬件和软件资源的程序。

常见的操作系统包括Windows、Mac OS和Linux。

5. 数据库是用于存储和管理数据的软件系统。

常见的数据库软件包括MySQL、Oracle和Microsoft SQL Server。

试题二:1. 什么是物联网?请列举三个应用场景。

2. 描述一下人工智能的概念以及它在现实世界中的应用。

3. 请简要解释什么是区块链技术,并说明其优势。

4. 什么是云计算?列举三个云计算的实际应用。

5. 请列举三种常见的网络安全威胁,并简要描述每种威胁的特点。

答案二:1. 物联网是指将传感器、设备、网络和计算系统连接起来,实现设备间的信息交互和智能控制的网络。

应用场景包括智能家居、智能交通系统和智能农业等。

2. 人工智能是指通过计算机模拟人类智能的能力。

它在现实世界中的应用包括语音助手(如Siri)、无人驾驶汽车和人脸识别技术等。

3. 区块链技术是一种分布式数据库技术,通过将数据分散存储在多个计算机节点上,并使用密码学技术保护数据安全。

其优势包括去中心化、安全性高和透明度等。

C语言》课程期末考试第四套

C语言》课程期末考试第四套

C语⾔》课程期末考试第四套第四套期末考试题第⼀部分选择题单项选择题(本⼤题共20⼩题,每⼩题1分,共20分)在每⼩题列出地四个选项中只有⼀个选项是符合题⽬要求地,请将正确选项前地字母填在题后地括内1. 在计算机上可以直接运⾏地程序是_____________.A. ⾼级语⾔程序B.汇编语⾔程序C.机器语⾔程序D. C语⾔程序2. 不属于C语⾔地是__________.A. forB. gotoC. ifD. loop3. 正确地C语⾔⾃定义标识符是__________.A. num(10)B. file_bakC. continueD. class+24. 字符串”m\x43\\\np\102q”地长度是__________.A. 7B. 9C. 15D. 165. 设 int x=8, y, z; 执⾏y=z=x++; x=y==z后,变量x地值是__________.A. 0B. 1C. 8D. 96. 对于输⼊语句scanf(“%f,%f”, &a, &b); 要使变量a、b地值分别为1.78和2.48,则正确地输⼊是__________.A. 1.78, 2.48 后跟回车B. 1.78 2.48 后跟回车C. 1.782.48 后跟回车D. 1.78;2.48 后跟回车7. 设int a=8, b=7, c=6, x=1; 执⾏语句if(a>6) if(b>7) if(c>8) x=2; else x=3;后x地值是__________.A. 0B. 1C. 2D. 38. 执⾏下列程序段x=9;while(x>7) { printf(“*”); x--; }后输出地结果是__________.A. ****B. ***C. **D. *9. 定义⼀个具有10个元素地整数型数组,应当使⽤语句__________.A. int a[10];B. int a[2,5];C. int a[];D. int *a[10];10. 设char str1[10]=”ABCDE”, str2[10]=”xyz”;则执⾏语句printf(“%d”, strlen(strcpy(str1, str2)));后地输出结果是__________.A. 9B. 8C. 5D. 311. 设int x[]={1,3,5,7,9,11,13}, *p=x;则不能正确引⽤数组元素地表达式是__________.A. *(p--)B. *(--p)C. *(p++)D. *(++p)12. 设int x[]={1,2,3,4}, y, *p=&x[1];则执⾏语句 y=(*--p)++; 后变量y地值为__________.B. 2C. 3D.413. 函数调⽤时,下列说法中不正确地是__________.A. 若⽤值传递⽅式,则形式参数不予分配内存B. 实际参数和形式参数可以同名C. 主调函数和被调⽤函数可以不在同⼀个⽂件中D. 函数间传递数据可以使⽤全局变量14. 执⾏下列程序int fun(int x1, int x2){ int x; x1>x2 ? (x=3) : (x=4); return (x+x1); }main(){ printf(“%d\n”, fun(7,8)); }后输出地结果.A. 9B. 10C. 11D. 1215. 设typedef union {long x[2]; short y[4][5]; char z[10];} TYPE1;TYPE1 u1;则printf(“%d\n”, sizeof(u1)); 地输出是__________.A. 8B. 10C. 40D. 5816. 下列数据类型中不属于构造类型地是__________.A. 数组型B. 结构型C. 共⽤型D. 枚举型17. 存储整型数据-7856时,在⼆进制⽂件和⽂本⽂件中占⽤地字节数分别是__________.A. 2,2B. 2,5C. 5,518. 以只写⽅式打开⼀个⼆进制⽂件,应该选择地使⽤⽅式是__________.A. “a+”B. “w+”C. “rb”D. “wb”19. 计算平⽅数时不可能引起⼆义性地宏定义是A. #define SQR(x) x*xB. #define SQR(x) (x)*(x)C. #define SQR(x) (x*x)D. #define SQR(x) ((x)*(x))20. 执⾏下列程序#define M(a,b) (a)>(b) ? (a):(b)main(){ int i=10, j=15; printf(“%d\n”, 10*m(i,j)); }后输出地结果是__________.A. 10B. 15C. 100D. 150第⼆部分⾮选择题⼆、填空题(本⼤题共10⼩题,每⼩题2分,共20分)21. 以下分别是算术、位、关系和逻辑运算符+ & < !其优先级最低地是__________.22. 设int x=4; 表达式x+=x*=x+1地值是__________.23. 设int a, b=10;执⾏a=b<<2+1; 后a 地值是__________.24. 设short k=-1; 执⾏printf(“%o”,k); 输出为__________.25. 设int j,k; 执⾏for(j=k=0; j-11; k+=j++);后k 地值是__________.26. 函数调⽤时,若形、实参数均为数组,则其传递⽅式是__________.27. 在C 语⾔中,__________类型变量地所有成员以覆盖⽅式共享存储单元.28. 设FILE *fp; 关闭fp ⽂件地操作语句是__________.29. 设float *p, m=2.718; 根据下列图⽰,建⽴指针变量p 和变量m 之间地关系地赋值语句是__________.30. 设 int a[3][4], *p=a[1]; 该指针变量p 指向地元素是__________.三、程序分析题(本⼤题共5⼩题,每⼩题5分,共25分)阅读下列程序,将输出结果写到各题右侧地空⽩处31. int a=200;main(){ int i;for(i=1; i<=5; i++) {a++; printf(“%d,”, a); s();}}void s(){ static int a=20;a++; printf(“%d \n”, a);}32. #include “stdio.h”main(){ char c;c=getchar();if(c>=’a’ && c<=’w’ || c>=’A’ && c<=’W’) c=c+3;else if(c>=’x’ && c<=’z’ || c>=’X’ && c<=’Z’) c=c -23; printf(“%c \n”, c);}设从键盘上输⼊Next33. #define N 7main(){ int i, j, temp, a[N]={1, 2, 3, 4, 5, 6, 7};for(i=0; imj=N-1-i;temp=a[i]; a[i]=a[j]; a[j]=temp;}for(i=0; i}34. struct porb{ char *name; int count;} x[]={“Li ning”, 19, “Lang ping”, 21, “Zhu jian hua”, 20}; main(){ int i;for(i=0; i<3; i++)printf(“%s: %d \n”, x[i].name, x[i].count);}35. main(){ union {short a; char ch;} M;M.a=100; M.ch=’A’;printf(“%d,%d,%c \n”, sizeof(M), M.a, M.ch);}四、程序填充题(本⼤题共3⼩题,每⼩题6分,共18分)阅读下列程序,将横线处缺少地部分补上,使其能正确运⾏.36. 下⾯数pi()地功能是根据下列公式求π值(直到最后⼀上于10-6为⽌).(9)473523173523152313112++??+?++=π double pi(){ double s=0.0, t=1.0; int n;for(__________; t>=__________; n++) {s+=t; t=n*t/(2*n+1);}return(2.0*__________);}37. 将⼀字符串中地⼩写英⽂字母改成⼤写.main(){ int i=0; char str[80];scanf(“%s”, str);while(__________) {if(__________) str[i]-=’a’-‘A’;__________;}printf(“%s \n”, str);}38. 使⽤结构型计算复数x 和y 地和.main(){ struct comp {float re, im;};__________ x,y,z;scanf(“%f%f%f%f”, &x.re, &x.im, &y.re, &y.im);z.re=__________; z.im=__________;printf(“%6.2f, %6.2f\n”, z.re, z.im);}五、程序设计题(本⼤题共3⼩题,第39⼩题5分,第40、41⼩题各6分,共17分)39. 编写⼀程序,输出如下图形.* * * * ** * * * ** * * * ** * * * *40. 编写⼀程序,从键盘输⼊10个实数,计算输出算术平均值.41. 编写⼀个模拟简单计算器地程序,计算表达式:a1 op a2地值,要求a1、op、a2从键盘输⼊.其中a1、a2(作除数时不能为0)为数值,op为运算符+、-、*、/.版权申明本⽂部分内容,包括⽂字、图⽚、以及设计等在⽹上搜集整理.版权为个⼈所有This article includes some parts, including text, pictures, and design. Copyright is personal ownership.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途⽤户可将本⽂地内容或服务⽤于个⼈学习、研究或欣赏,以及其他⾮商业性或⾮盈利性⽤途,但同时应遵守著作权法及其他相关法律地规定,不得侵犯本⽹站及相关权利⼈地合法权利.除此以外,将本⽂任何内容或服务⽤于其他⽤途时,须征得本⼈及相关权利⼈地书⾯许可,并⽀付报酬.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途Users may use the contents or services of this article for personal study, research or appreciation, and othernon-commercial or non-profit purposes, but at the same time, they shall abide by the provisions of copyright law and other relevant laws, and shall not infringe upon the legitimate rights of this website and its relevant obligees. In addition, when any content or service of this article is used for other purposes, written permission and remuneration shall be obtained from the person concerned and the relevant obligee.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途转载或引⽤本⽂内容必须是以新闻性或资料性公共免费信息为使⽤⽬地地合理、善意引⽤,不得对本⽂内容原意进⾏曲解、修改,并⾃负版权等法律责任.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途Reproduction or quotation of the content of this article must be reasonable and good-faith citation for the use of news or informative public free information. It shall not misinterpret or modify the original intention of the content of this article, and shall bear legal liability such as copyright.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途本⽂部分内容,包括⽂字、图⽚、以及设计等在⽹上搜集整理.版权为个⼈所有This article includes some parts, including text, pictures, and design. Copyright is personal ownership.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途⽤户可将本⽂地内容或服务⽤于个⼈学习、研究或欣赏,以及其他⾮商业性或⾮盈利性⽤途,但同时应遵守著作权法及其他相关法律地规定,不得侵犯本⽹站及相关权利⼈地合法权利.除此以外,将本⽂任何内容或服务⽤于其他⽤途时,须征得本⼈及相关权利⼈地书⾯许可,并⽀付报酬.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途Users may use the contents or services of this article for personal study, research or appreciation, and othernon-commercial or non-profit purposes, but at the same time, they shall abide by the provisions of copyright law and other relevant laws, and shall not infringe upon the legitimate rights of this website and its relevant obligees. In addition, when any content or service of this article is used for other purposes, written permission and remuneration shall be obtained from the person concerned and the relevant obligee.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途转载或引⽤本⽂内容必须是以新闻性或资料性公共免费信息为使⽤⽬地地合理、善意引⽤,不得对本⽂内容原意进⾏曲解、修改,并⾃负版权等法律责任.⽂档来源⽹络及个⼈整理,勿⽤作商业⽤途Reproduction or quotation of the content of this article must be reasonable and good-faith citation for the use of news or informative public free information. It shall not misinterpret or modify the original intention of the content of this article, and shall bear legal liability such as copyright.⽂档来源⽹络及个⼈整理。

C语言期末考试试题4答案

C语言期末考试试题4答案

一、单选题(1~5题每题1分6~20每题2分共35分)1 ~5 :BCAAA 6~ 10 :CCBAC11~15:DDAAB 16~20 :CBBAD二、填空题(8 题共16分)1。

X%2==02。

整型实型3. 10 04. 45。

&&||三、判断题(10题 10分)1.F 2。

T 3。

F 4。

T 5.T 6.F 7.F 8.F 9.F 10.F四、程序填空(5空10分)【1】: x>=0 (或则其他判断x非负的语句)【2】: x〈amin【3】: f1+f2;【4】: i%5==0【5】: f2 = f;五、分析结果(3题共9分)1.122. 2 4 43.a=200,b=100六、编程题(2题20分)1、求2——100的质数.(8分)范例程序:#includemain(){int i,j;for(i=2;i<=100;i++){j=2;while(j〈=i/2){if(i%j==0)break;elsej++;}if(j>i/2)printf(“%d ”,j);}}2、从键盘上输入任意一些字符,统计字母的个数、数字的个数以及其他字符的个数(除数字和字母以外的字符均属于其他字符),当键盘上敲入’$’时结束。

(12分)范例程序:#include〈stdio。

h〉main(){int numbers = 0,num_char =0,num_other =0;char input;printf(“Please enter :/n”);while((input = getchar())!=’$’){switch(input){case ‘0’:case ‘1' :case ‘2’ :case ‘3’ :case ‘4' :case ‘5' :case ‘6’case ‘7’:case ‘8’:case ‘9’:numbers++;break;default: if(( input>=’A’ && input<=’Z’)|| (input>='a’&& input〈=’z’))num_char++;elsenum_other++;}}printf(“numbers is :%d,char is %d ,other is %d”,numbers,num_chai,num_other);}。

c语言程序设计(第四版)考试题

c语言程序设计(第四版)考试题

C程序设计(第四版)期末考试题本卷共有4道大题:一、单项选择题(20道小题,共20分)1、以下对C语言函数的有关描述中,正确的是()(1分)A、在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参B、C函数既可以嵌套定义又可以递归调用C、函数必须有返回值,否则不能使用函数D、C程序中有关调用关系的所有函数必须放在同一个源程序文件中2、strcpy库函数用于复制一个字符串。

若有以下定义:char*str1="copy",str2[10],*str3="hijklmn";char*str4,*str5="abcd";则对strcpy库函数的错误调用是()(1分)A、strcpy(str2,str1)B、strcpy(str3,str1)C、strcpy(str4,str1)D、strcpy(str5,str1)3、设有以下语句:char str[4][12]={"aaa","bbb","ccc","ddd"};char*strp[4];int i;for(i=0;i<4;i++)strp[i]=str[i];若0<=k<4,下列选项中对字符串的非法引用是()(1分)A、strpB、str[k]C、strp[k]D、*strp4、以下各选项企图说明一种新的类型名,其中正确的是()(1分)A、typedef v1int;B、typedef v2=int;C、typedef v1int v3;D、typedef v4:int;5、若以下定义和语句:int a[]={1,2,3,4,5,6,7,8,9,0};int*p,i;p=a;0<i<10,则对数组元素地址的正确表示是()(1分)A、&(a+1)B、a++C、&pD、&p[i]6、C语言标准库函数"fgets(string,n,fp)"的功能是()(1分)A、从文件fp中读取长度为n的字符串存入指针string指向的内存B、从文件fp中读取长度不超过n-1的字符串存入指针string指向的内存C、从文件fp中读取n个字符串存入指针string指向的内存D、从文件fp中读取不超过长度为n的字符串存入指针string指向的内存7、以下叙述中不正确的是()(1分)A、在函数中,通过return语句传回函数值B、在函数中,可以有多条return语句C、在C中,main后的一对圆括号中也可以带有形参D、在C中,调用函数,必需在一条独立的语句中完成8、若有以下定义:char a;int b;float c;double d;则表达式a*b+d-c值的类型为()(1分)A、floatB、intC、charD、double9、以下叙述中正确的是()(1分)A、输入项可以是一个实型常量,如:scanf("%f",3.5);B、只有格式控制,没有输入项,也能正确输入数据到内存,例如:scanf("a=%d,b=%d");C、当输入一个实型数据时,格式控制部分可以规定小数点后的位数,例如:scanf("%4.2f",&d);D、当输入数据时,必须指明变量地址,例如:scanf("%f",&f);10、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是()(1分)A、INPUT x、y、z;B、scanf("%d%d%d",&x,&y,&z);C、scanf("%d%d%d",x,y,z);D、read("%d%d%d",&x,&y,&z);11、若变量都已正确定义,a=2;b=3;printf(a>b?"***a=%d":"###b=%d",a,b);则程序段()(1分)A、没有正确的输出格式控制B、输出为:***a=2C、输出为:###b=2D、输出为:***a=2###b=212、设有如下的变量定义:int i=8,k,a,b;unsigned long w=5;double x=1.42,y=5.2;则以下符合C 语言语法的表达式是()(1分)A、a=a-=(b=4)*(a=3)B、x%(--3);C、a=a*3=2D、y=float(i)13、假设所有变量均为整型,表达式(a=2,b=5,a>b?a++:b++,a+b)的值是()(1分)A、7B、8C、9D、214、以下标识符中,不能作为合法的C用户定义标识符的是()(1分)A、ForB、printC、WORDD、sizeof15、以下合法的赋值语句是()(1分)A、x=y=100B、d--;C、x+y;D、c=int(a+b);16、在下列选项中,没有构成死循环的程序是()(1分)A、int i=100;whine(1){i=i%1001;if(i>100)break;}B、for(;;);C、int k=1000;do{k;}while(k>=1000);D、int s=36;while(s);--s;17、设a=1,b=2,c=3,d=4,则表达式:a<b?a:c<d?b:d的结果为()(1分)A、4B、3C、2D、118、假定w、x、y、z、m均为int型变量,有如下程序段:w=1;x=2;y=3;z=4;m=(w<x)?w:x;m=(m<y)?m:y;m=(m<z)?m:z;则该程序运行后,m的值是()(1分)A、4B、3C、2D、119、有定义语句:int a=4,b=5,c=6,x;,则以下选项中各程序段执行后,x的值不为6的是()(1分)A、if(a<6)x=6;else if(a<5)x=5;else x=4;B、if(a<6)x=6;if(a<5)x=4;if(b<c)x=c;C、if(a<b)x=b;if(a<4)x=4;if(c<a)x=a;D、if(c<a)x=4;else if(b<a)x=5;else x=6;20、在宏定义#define PI3.14159中,用宏名PI代替一个()(1分)A、单精度数B、双数度数C、常量D、字符串二、填空题(12道小题,共40分)1、计算机中内存储器的最小存储单位是字节,一个整数占个字节(2分)--------------------------------------------------------------------------------2、一个算法应该具有以下特点:、确定性、有零个或多个输入、有一个或多个输出、有效性(2分)--------------------------------------------------------------------------------3、唯一的一个三目运算符是(2分)--------------------------------------------------------------------------------4、printf("%5.3f\n",123456.12345);输出为(2分)--------------------------------------------------------------------------------5、描述命题“A小于B或小于C”的表达式为(2分)--------------------------------------------------------------------------------6、int i=0,s=0,a[10];while(i<10)s+=a[i++];等价于int i,s,a[10];for()(2分)--------------------------------------------------------------------------------7、已知一数组:a[0]=10,a[1]=20,a[2]=30,a[3]=40,a[4]=50,s是int型指针,s已指向a[4],现要使s指向a[2],则s=(2分)--------------------------------------------------------------------------------8、变量分为全局和局部两种,变量离开了其所定义的函数,其存储单元就会被释放。

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

第四套期末考试题第一部分选择题单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括内1. 在计算机上可以直接运行的程序是_____________。

A. 高级语言程序B.汇编语言程序C.机器语言程序D. C语言程序2. 不属于C语言的是__________。

A. forB. gotoC. ifD. loop3. 正确的C语言自定义标识符是__________。

A. num(10)B. file_bakC. continueD. class+24. 字符串”m\x43\\\np\102q”的长度是__________。

A. 7B. 9C. 15D. 165. 设 int x=8, y, z; 执行y=z=x++; x=y==z后,变量x的值是__________。

A. 0B. 1C. 8D. 96. 对于输入语句scanf(“%f,%f”, &a, &b); 要使变量a、b的值分别为1.78和2.48,则正确的输入是__________。

A. 1.78, 2.48 后跟回车B. 1.78 2.48 后跟回车C. 1.782.48 后跟回车D. 1.78;2.48 后跟回车7. 设int a=8, b=7, c=6, x=1; 执行语句if(a>6) if(b>7) if(c>8) x=2; else x=3;后x的值是__________。

A. 0B. 1C. 2D. 38. 执行下列程序段x=9;while(x>7) { printf(“*”); x--; }后输出的结果是__________。

A. ****B. ***C. **D. *9. 定义一个具有10个元素的整数型数组,应当使用语句__________。

A. int a[10];B. int a[2,5];C. int a[];D. int *a[10];10. 设char str1[10]=”ABCDE”, str2[10]=”xyz”;则执行语句printf(“%d”, strlen(strcpy(str1, str2)));后的输出结果是__________。

A. 9B. 8C. 5D. 311. 设int x[]={1,3,5,7,9,11,13}, *p=x;则不能正确引用数组元素的表达式是__________。

A. *(p--)B. *(--p)C. *(p++)D. *(++p)12. 设int x[]={1,2,3,4}, y, *p=&x[1];则执行语句 y=(*--p)++; 后变量y的值为__________。

A. 1B. 2C. 3D.413. 函数调用时,下列说法中不正确的是__________。

A. 若用值传递方式,则形式参数不予分配内存B. 实际参数和形式参数可以同名C. 主调函数和被调用函数可以不在同一个文件中D. 函数间传递数据可以使用全局变量14. 执行下列程序int fun(int x1, int x2){ int x; x1>x2 ? (x=3) : (x=4); return (x+x1); }main(){ printf(“%d\n”, fun(7,8)); }后输出的结果。

A. 9B. 10C. 11D. 1215. 设typedef union {long x[2]; short y[4][5]; char z[10];} TYPE1;TYPE1 u1;则printf(“%d\n”, sizeof(u1)); 的输出是__________。

A. 8B. 10C. 40D. 5816. 下列数据类型中不属于构造类型的是__________。

A. 数组型B. 结构型C. 共用型D. 枚举型17. 存储整型数据-7856时,在二进制文件和文本文件中占用的字节数分别是__________。

A. 2,2B. 2,5C. 5,5D. 5,218. 以只写方式打开一个二进制文件,应该选择的使用方式是__________。

A. “a+”B. “w+”C. “rb”D. “wb”19. 计算平方数时不可能引起二义性的宏定义是A. #define SQR(x) x*xB. #define SQR(x) (x)*(x)C. #define SQR(x) (x*x)D. #define SQR(x) ((x)*(x))20. 执行下列程序#define M(a,b) (a)>(b) ? (a):(b)main(){ int i=10, j=15; printf(“%d\n”, 10*m(i,j)); }后输出的结果是__________。

A. 10B. 15C. 100D. 150第二部分非选择题二、填空题(本大题共10小题,每小题2分,共20分)21. 以下分别是算术、位、关系和逻辑运算符+ & < !其优先级最低的是__________。

22. 设int x=4; 表达式x+=x*=x+1的值是__________。

23. 设int a, b=10;执行a=b<<2+1; 后a 的值是__________。

24. 设short k=-1; 执行printf(“%o”,k); 输出为__________。

25. 设int j,k; 执行for(j=k=0; j-11; k+=j++);后k的值是__________。

26. 函数调用时,若形、实参数均为数组,则其传递方式是__________。

27. 在C语言中,__________类型变量的所有成员以覆盖方式共享存储单元。

28. 设FILE *fp; 关闭fp文件的操作语句是__________。

29. 设float *p, m=2.718; 根据下列图示,建立指针变量p和变量m之间的关系的赋值语句是__________。

30. 设 int a[3][4], *p=a[1]; 该指针变量p 指向的元素是__________。

三、程序分析题(本大题共5小题,每小题5分,共25分)阅读下列程序,将输出结果写到各题右侧的空白处31. int a=200;main(){ int i;for(i=1; i<=5; i++) {a++; printf(“%d,”, a); s();}}void s(){ static int a=20;a++; printf(“%d \n”, a);}32. #include “stdio.h”main(){ char c;c=getchar();if(c>=’a’ && c<=’w’ || c>=’A’ && c<=’W’) c=c+3;else if(c>=’x’ && c<=’z’ || c>=’X’ && c<=’Z’) c=c -23; printf(“%c \n”, c);}设从键盘上输入Next33. #define N 7main(){ int i, j, temp, a[N]={1, 2, 3, 4, 5, 6, 7};for(i=0; i<N/2; i++) {j=N-1-i;temp=a[i]; a[i]=a[j]; a[j]=temp;}for(i=0; i<n; i++) printf(“%5d”, a[i]);}34. struct porb{ char *name; int count;} x[]={“Li ning”, 19, “Lang ping”, 21, “Zhu jian hua”, 20}; main(){ int i;for(i=0; i<3; i++)printf(“%s: %d \n”, x[i].name, x[i].count);}35. main(){ union {mshort a; char ch;} M;M.a=100; M.ch=’A’;printf(“%d,%d,%c \n”, sizeof(M), M.a, M.ch);}四、程序填充题(本大题共3小题,每小题6分,共18分)阅读下列程序,将横线处缺少的部分补上,使其能正确运行。

36. 下面数pi()的功能是根据下列公式求π值(直到最后一上于10-6为止)。

(9)473523173523152313112+⨯⨯⨯+⨯⨯+⨯++=πdouble pi(){ double s=0.0, t=1.0; int n;for(__________; t>=__________; n++) {s+=t; t=n*t/(2*n+1);}return(2.0*__________);}37. 将一字符串中的小写英文字母改成大写。

main(){ int i=0; char str[80];scanf(“%s”, str);while(__________) {if(__________) str[i]-=’a’-‘A’;__________;}printf(“%s \n”, str);}38. 使用结构型计算复数x 和y 的和。

main(){ struct comp {float re, im;};__________ x,y,z;scanf(“%f%f%f%f”, &x.re, &x.im, &y.re, &y.im);z.re=__________; z.im=__________;printf(“%6.2f, %6.2f \n”, z.re, z.im);}五、程序设计题(本大题共3小题,第39小题5分,第40、41小题各6分,共17分)39. 编写一程序,输出如下图形。

* * * * ** * * * ** * * * ** * * * *40. 编写一程序,从键盘输入10个实数,计算输出算术平均值。

41. 编写一个模拟简单计算器的程序,计算表达式:a1 op a2的值,要求a1、op、a2从键盘输入。

其中a1、a2(作除数时不能为0)为数值,op为运算符+、-、*、/。

相关文档
最新文档