南京信息工程大学滨江学院C语言期末试卷(A)
南京信息工程大学试卷2011-2012学年第二学期C语言程序设计试卷(理科)及答案-A
南京信息工程大学试卷(理工科)2011 - 2012 学年第 2学期C语言程序设计课程试卷( A 卷) 本试卷共 8 页;考试时间 120分钟;任课教师课程组;出卷时间 2012 年 6月学院专业2011 年级班学号姓名得分一、单项选择题 (每小题 1分,共 15分)1.C语言规定:在一个源程序中,main的位置A)必须在最开始 B)必须在系统调用的库函数后面C)可以任意 D)必须在最后2.下面四个选项中,均是合法的用户标识符的选项的是A) A p_o do B)float lao _AC) b-a goto int D) _123 temp INT3.判断字符型变量c1是否为大写字母的正确表达式为A)’A’<=c1<=’Z’ B)(c1>=A)&&(c1<=Z)C)(‘A’>=c1)||(‘Z’<=c1) D)(c1>=’A’)&&(c1<=’Z’)4.表达式18.0/4*sqrt(4)/8值的数据类型为A)float B)charC)double D)不确定5.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是A)7 B)8 C)6 D)26.若对两个数组a和b进行初始化char a[]="ABCDEF";char b[]={'A', 'B', 'C', 'D', 'E', 'F'};则下列叙述正确的是。
A) a与b数组完全相同B) a与b数组长度相同C) a与b数组都存放字符串 D) 数组a比数组b长度长7.若定义x为长整型变量,则能正确输入x值的语句是。
A)scanf(“%d”,x); B)scanf(“%d”,&x);C)scanf(“%ld”,&x); D)scanf(“%ld”, x);8.以下正确的函数定义是。
2022年南京信息工程大学公共课《C语言》科目期末试卷A(有答案)
2022年南京信息工程大学公共课《C语言》科目期末试卷A(有答案)一、填空题1、设x的二进制数是11001101,若想通过x&y运算使x中的低4位不变,高4位清零,则y的二进制数是_______。
2、在C语言源程序中,一个变量代表【】。
3、一个C语言源程序由若干函数组成,其中至少应含有一个________4、若x和n均是int型变量,且x的初值为12,n的初值为5,则执行表达式x%=(n%=2)后x的值为_______。
5、若有定义语句:int x=3,y=2;float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b的值为_______。
6、已有一维数组a,n为元素的个数,且各元素均有值;函数void process(float*p,int n,float(*fun)(float*,int))为一个可完成下面各种计算的通用函数。
请分别写出用于以下计算的各函数中的调用语句_______、_______和_______。
(1)float arr_add(float*arr,int n)计算数组元素值之和。
(2)float odd_add(float*p,int n)计算下标为奇数的元素之和。
(3)float arr_ave(float*p,int n)计算各元素的平均值。
7、函数swap(arr,n)可对arr数组从第1个元素到第n个元素分别进行两两元素交换。
在运行调用函数中的如下语句后,a[o]和a[1]的值分别为_______,原因是_______。
a[0]=1;a[1]=2;swap(a,2);8、若有以下定义和语句,为使变量c1得到字符’A',变量c2得到字符’B’,正确的输入形式是_______。
char cl,c2;scanf("%4c%4c",&cl,8&c2);9、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。
大学《C语言程序设计》期末考试试卷及参考答案
大学《C语言程序设计》期末考试试卷及参考答案《C语言程序设计》期末考试试卷参考答案一、判断题(10分)1、对2、对3、错4、错5、对6、错7、错8、错9、错10、错二、填空题(30分,,1到10题1分1空,10到18题2分1空)1.2.5 2. a!=0&&b!=0 3. m=1b 4. windows 95 5. x[i]>='A'&&x[i]<='Z' 6.234567 7.文件的首纪录前8、struct tree *Ltree,*Rtree 9. i<=10010. char a[10]="continue"; 11. p*pow(1+r,5) 12. 'D' 13. 10、514.#define utol(ch) ch=ch>='A'&& ch<='Z' ? ch+'a'-'A':ch15.首行第i+1个元素的地址,第i+1行的首地址,a[0][0]的值16.p=(int*)mallo(n);17. (-b+sqrt(b*b-4*a*c))/2/a 18. float(*fg)(float **,int,int);三、单项选择题(在每小题的四个备选答案中选出一个正确的,10分))1、A2、B3、C4、B5、D6、A7、A8、B9、C 10、A四、程序阅读题(20分,每题4分)1、 A C E G2、 x=3 y=23、the two string are same:fthe two string are same:r4、 K=85、1《C语言程序设计》期末考试试卷及参考答案一、判断题(10分)1、C语言是一种结构化程序设计语言。
()2、在标准C中,整型变量与字符变量是可以通用的。
()3、在标准C中,“=”是判断两个数是否相等。
《C语言程序设计基础》期末考试A卷及答案
封 线密《C 语言程序设计基础》课程期末考试试卷 ( A 卷)班级 考试形式 闭卷 考试时间 120 分钟考试学期 2020-2021学年第1学期 考试类型 考试 命题教师 题 号一 二 三 四 总分 分 值 30 20 25 25 100 得 分一、单项选择题(每小题2分,共30分)1.下列不属于C 语言基本数据类型的是( )。
A. intB. unionC. charD. double 2. 在一个C 程序中( )。
A .main 函数必须出现在所有函数之前B .main 函数可以在任何地方出现C .main 函数必须出现在所有函数之后D .main 函数必须出现在固定位置3. 以下不正确的C 语言标识符是 ( )。
A .AB3CB .a_bc C. _abc D .3ab_c4. 设x 、y 和z 是int 型变量,且x =3,y =4,z =5,则下面表达式中值为0是 ( )。
A .x&&y||x-y B. x <=y C. x||y+z&&y<z D. !((x <y)&&!z||1)5. 设有定义:struct a{long int c[4]; float d[3]; char f[16]; }a1;则printf("%d\n",sizeof(a1));的输出是( )。
A .44B .36C .12D .326. 已知一个二维数组int a[3][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}};获取该数组中第二行第三列元素的语句表达正确的是( )。
A .a[2][3] B. a[2][4] C. a[1][2] D. a[3][2] 7. 设有:int a,*pa,*pb;int b[10] = { 0,1,2,3,4,5,6,7,8,9 };a=3;下列说法中不正确的是( )。
C语言期末考试试题及其答案
C语言期末考试试题及其答案------------------------------------------作者------------------------------------------日期、以下不是 语言的特点的是 ☎ ✆✌、 语言简洁、紧凑、 能够编制出功能复杂的程序、 语言可以直接对硬件进行操作、 语言移植性好、以下不正确的 语言标识符是 ☎ ✆✌、 ✌ 、 ♋♌♍ 、 ♋♉♌♍ 、 ♋♌♍、一个 语言程序是由 ☎ ✆✌、 一个主程序和若干子程序组成、 函数组成、 若干过程组成、 若干子程序组成、一个算法应该具有❽确定性❾等 个特性,对另外 个特性的描述中错误的是 ☎ ✆✌、 有零个或多个输入、 有零个或多个输出、 有穷性、 可行性、 设变量♋是整型,♐是实型,♓是双精度型,则表达式 ❻♋❼♓✉♐值的数据类型为 ☎ ✆✌、 ♓⏹♦ 、 ♐●☐♋♦ 、 ♎☐◆♌●♏ 、 不确定、在 语言中,♍♒♋❒型数据在内存中的存储形式是 ☎ ✆✌、 补码 、反码 、源码 、✌✋✋码、有如下程序,输入数据: <♍>后( 表示回车),⌧的值是 ☎ ✆ 。
✁♓⏹♍●◆♎♏♦♦♎♓☐♒❍♋♓⏹☎✆♓⏹♦ ⌧♐●☐♋♦ ⍓♦♍♋⏹♐☎✂♎♐✂⌧⍓✆❝✌、 、 、 、 、若有以下定义♓⏹♦ ♋♌ ♐●☐♋♦ ⌧,则正确的赋值语句是 ☎ ✆✌、 ♋♌、 ♌、 ♋♌、 ♌♓⏹♦☎⌧✆、以下程序的执行结果是 ☎ ✆✁♓⏹♍●◆♎♏♦♦♎♓☐♒♓⏹♦ ♓☐❒♓⏹♦♐☎✂♎♎⏹✂♓✆❝✌、 、 、 、 、巳知字母✌的✌✋✋码是 ,以下程序的执行结果是 ☎ ✆✁♓⏹♍●◆♎♏♦♦♎♓☐♒❍♋♓⏹☎✆☐❒♓⏹♦♐☎✂♎♎⏹✂♍♍✆✌、 ✌✡ 、 、 、 、下列运算符中优先级最高的是 ☎ ✆✌、 < 、 十 、 、 ✐=、设⌧、⍓和 是♓⏹♦型变量,且⌧= ,⍓= , = ,则下面表达式中值为 是 ☎ ✆ 。
c语言期末考试题库及详解答案
c语言期末考试题库及详解答案C语言作为计算机编程的基础语言,其期末考试通常包含对基础语法、数据结构、算法设计等方面的考察。
以下是一份C语言期末考试题库及详解答案,供学生复习参考。
1. 编写一个C程序,实现两个整数的加法运算,并输出结果。
```c#include <stdio.h>int main() {int a, b, sum;printf("请输入两个整数:");scanf("%d %d", &a, &b);sum = a + b;printf("两个整数相加的结果是:%d\n", sum);return 0;}```2. 编写一个C程序,实现字符串的反转输出。
```c#include <stdio.h>#include <string.h>void reverseString(char str[]) {int length = strlen(str);for (int i = 0; i < length / 2; i++) {char temp = str[i];str[i] = str[length - i - 1];str[length - i - 1] = temp;}}int main() {char str[100];printf("请输入一个字符串:");scanf("%s", str);reverseString(str);printf("反转后的字符串是:%s\n", str);return 0;}```3. 编写一个C程序,实现查找数组中的最大值,并输出其索引。
```c#include <stdio.h>int main() {int arr[] = {5, 10, 15, 20, 25};int maxIndex = 0;for (int i = 1; i < 5; i++) {if (arr[i] > arr[maxIndex]) {maxIndex = i;}}printf("数组中的最大值是:%d,其索引为:%d\n",arr[maxIndex], maxIndex);return 0;}```4. 编写一个C程序,实现冒泡排序算法。
南京信息工程大学2010-2011(1)C语言和程序设计基础试卷-A
D)其之前最近的且尚未配对的 if 配对 x;则下面没有错误的是 。 B) switch((int)x%2.0) { case 0:a++;break; case 1:b++;break; default:a++;b++; } D) switch((int)(x)%2) { case 0.0:a++;break; case 1.0:b++;break; default:a++;b++; }
第 3 页 /共 9 页
printf("x=%d,y=%d\n",x,y); } 2.下面程序运行的结果是 。 #include<stdio.h> int main() { int n[2],i,j; for(i=0;i<2;i++) n[i]=0; for(i=0;i<2;i++) for(j=0;j<2;j++) n[j]=n[i]+1; printf("%d\n",n[1]); return 0; } 3.下面程序运行的结果是 #include<stdio.h> int f(int); int main() { int z; z=f(5); printf("%d\n",z); return 0; } int f(int x) { if(x==0||x==1) return 1; else return x*f(x-1); } 4.以下程序执行后输出的第一个数是 #include <stdio.h> void increment (void); int main(void) { increment ( ); increment ( ); increment ( ); return 0; } void increment (void) { static int x=1;
南京信息工程大学2009-2010(1)C语言期末考试试卷A(后附答案)
南京信息工程大学试卷2009 - 2010 学年第 1学期程序设计基础/C语言程序设计课程试卷( A 卷) 本试卷共 9 页;考试时间 120分钟;任课教师;出卷时间 2010 年 1月学院专业2009 年级班学号姓名得分一、单项选择题 (每小题 1分,共 12分)1.一个C程序的执行是从A.本程序的main函数开始,到main函数结束B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C.本程序的main函数开始,到本程序文件的最后一个函数结束D.本程序文件的第一个函数开始,到本程序main函数结束2.下面四个选项中,均是不合法的用户标识符的选项的是A. A p_o doB. float lao _AC. b-a while intD. _123 temp INT3.表达式18/4*sqrt(4.0)/8值的数据类型为A.floatB. charC.doubleD.不确定4.设有如下定义struct ss{ char name[10];int age;char sex;}std[3],*p=std;下面各输入语句中错误的是。
A.scanf("%d",&(*p).age); B.scanf("%s",&);C.scanf("%c",&std[0].sex); D.scanf("%c",&(p->sex));5.有如下定义:int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23},(*p)[4];下面表示正确的是A.p=a[0]; B.p=*a;C.p=&a[0][0]; D.p=a;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语言程序设计期末考试试题含答案
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语言题库
单项选择==================================================题号:13167以下叙述中正确的是()。
A、程序设计的任务就是确定所用算法B、程序设计的任务就是确定所用数据结构C、顺序,转移,选择程序设计的任务就是编写程序代码并上机调试D、以上三种说法都不完整答案:D题号:13162计算机能直接执行的程序是()。
A、可执行程序B、源程序C、汇编程序D、目标程序答案:A题号:13171下列叙述中正确的是()。
A、C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束B、可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C、main可作为用户标识符,用以命名任意一个函数作为主函数v1.0 可编辑可修改D、C语言程序将从源程序中第一个函数开始执行答案:A题号:13165在算法中,对需要执行的每一步操作,必须给出清楚、严格的规定。
这属于算法的()。
A、确定性B、正当性C、可行性D、有穷性答案:A题号:13164以下叙述中正确的是()。
A、用C语言编写的程序只能放在一个程序文件中B、C、D、答案:D题号:13169下列叙述中正确的是()。
A、在C程序中 main( )函数的位置是固定的B、每个C程序文件中都必须要有一个main( )函数C、C程序中所有函数之间都可以相互调用,与函数所处位置无关D、在C程序的函数中不能定义另一个函数答案:D题号:13191设有以下程序段:int m=0,n=0;char c='a';scanf("%d%c%d",&m,&c,&n);printf("%d,%c,%d\n",m,c,n);若从键盘上输入"10A9<CR> "(<CR> 为回车),则输出结果是()。
A、10,a,9B、10,A,0C、10,A,9D、10,a,0答案:C题号:13183若有以下程序段,其输出结果是()。
大学C语言期末考试练习题(带详解答案)
大学C语言期末考试练习题(带详解答案)------------------------------------------作者------------------------------------------日期一、单项选择题.( ✌ )是构成 语言程序的基本单位。
✌、函数 、过程 、子程序 、子例程. 语言程序从 开始执行。
✌✆ 程序中第一条可执行语句∙∙∙ ✆ 程序中第一个函数∙∙∙✆ 程序中的❍♋♓⏹函数∙∙∙∙∙∙∙∙∙ ✆ 包含文件中的第一个函数、以下说法中正确的是( )。
✌、 语言程序总是从第一个定义的函数开始执行、在 语言程序中,要调用的函数必须在❍♋♓⏹☎ ✆函数中定义、 语言程序总是从❍♋♓⏹☎ ✆函数开始执行、 语言程序中的❍♋♓⏹☎ ✆函数必须放在程序的开始部分下列关于 语言的说法错误的是( ) 。
✌✆ 程序的工作过程是编辑、编译、连接、运行✆ 语言不区分大小写。
✆ 程序的三种基本结构是顺序、选择、循环✆ 程序从❍♋♓⏹函数开始执行下列正确的标识符是( )。
✌♋ ♋☯♓ ♋♉♓ ♓⏹♦ ♦❞题为相同类型题考点:标识符的命名规则( )只能由字母、数字、下划线构成( )数字不能作为标识符的开头( )关键字不能作为标识符选项✌中的❽❾ ,选项 中❽☯❾与❽❾不满足( );选项 中的♓⏹♦为关键字,不满足( ).下列 语言用户标识符中合法的是( )。
✌✆♋⌧ ✆⌧ ✆♍♋♦♏ ✆♏ ☜✆◆⏹♓☐⏹选项✌中的标识符以数字开头不满足( );选项 ,☜均为为关键字,不满足( );选项 中的❽❾不满足( );.下列四组选项中,正确的 语言标识符是( )。
✌) ⌧ ) ♋♌ )♋ ) ( )、下列四组字符串中都可以用作 语言程序中的标识符的是( ✌ )。
✌、☐❒♓⏹♦ ♉♎ ♎♌ ♋♍ 、✋♋❍ ☐⏹♏♉♒♋●♐ ♦♦♋❒♦♓♦ ☐♋♓、♦♦❒♉ ☐☐ ☐☐♦ ♦♒♓●♏ 、⌧❑ ⍓♌☐☐ ●♓⏹♏✁ ☟♓♦♋♑♏选项 中的❽❾,❾❾ ,选项 中❽❾,❾✁❾,❾❾,❾❾不满足( );选项 中的♦♒♓●♏为关键字,不满足( )语言中的简单数据类型包括( )。
南京信息工程大学C语言题库
==================================================题号:13167以下叙述中正确的是()。
A、程序设计的任务就是确定所用算法B、程序设计的任务就是确定所用数据结构C、顺序,转移,选择程序设计的任务就是编写程序代码并上机调试D、以上三种说法都不完整答案:D题号:13162计算机能直接执行的程序是()。
A、可执行程序B、源程序C、汇编程序D、目标程序答案:A题号:13171下列叙述中正确的是()。
A、C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束B、可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C、main可作为用户标识符,用以命名任意一个函数作为主函数D、C语言程序将从源程序中第一个函数开始执行A题号:13165在算法中,对需要执行的每一步操作,必须给出清楚、严格的规定。
这属于算法的()。
A、确定性B、正当性C、可行性D、有穷性答案:A题号:13164以下叙述中正确的是()。
A、用C语言编写的程序只能放在一个程序文件中B、C、D、答案:D题号:13169下列叙述中正确的是()。
A、在C程序中 main( )函数的位置是固定的B、每个C程序文件中都必须要有一个main( )函数C、C程序中所有函数之间都可以相互调用,与函数所处位置无关D、在C程序的函数中不能定义另一个函数答案:D题号:13191设有以下程序段:int m=0,n=0;char c='a';scanf("%d%c%d",&m,&c,&n);printf("%d,%c,%d\n",m,c,n);若从键盘上输入"10A9<CR> "(<CR> 为回车),则输出结果是()。
A、10,a,9B、10,A,0C、10,A,9D、10,a,0答案:C题号:13183若有以下程序段,其输出结果是()。
南京信息工程大学滨江学院C语言期末试卷
2010 ─ 2011 学年第二学期C语言程序设计课程试卷一、选择题(下列每题中只有一个正确答案,每题1分,共20分)1、C语言程序的基本单位。
(A)程序行(B)语句(C)函数(D)字符2、设有语句“ int a=3; ” ,则执行语句“ a+=a-=a*a; ”以后变量a的值是。
(A)3 (B)0 (C)9 (D)-123、合法的C语言字符常量是。
(A)…t‟(B)“A”(C)65 (D)A4、以下程序的输出结果是。
main(){ int a=12,b=12;printf(“%d %d\n”,--a,++b);}(A)10 10 (B)12 12 (C)11 10 (D)11 135、若变量已正确定义,那么以下语句段的输出结果是________。
x=0;y=2;z=3;switch(x){ case 0:switch(y==2){ casa 1:printf(“*”);break;case 2:printf(“%”);break;}case 1:switch(z){ case 1:printf(“$”);case 2:printf(“*”);break;default:printf(“#”);}}(A)%$ (B)#* (C)*# (D)**$6、设实型变量为f1、f2、f3、f4的值分别为4,3,2,1;整型变量ml、m2的值为1。
表达式“(ml=fl>f2)&&(m2=f3<f4)”的值是。
(A)0 (B)1 (C)2 (D)出错7、执行下列程序后,i 的值是。
void main(){ int i, x;for(i=1, x=1;i<20; i++){if (x>=10) break;if(x%2= =1){x+=5; continue; }x-=3;}}(A)4 (B) 5 (C)6 (D)78、对以下for循环,叙述正确的是。
for(x=0,y=0;(y!=123)&&(x<4); x++, y++);(A)执行了3次(B)执行了4次(C)是无限循环(D)循环次数不定9、在定义int a[5][4]; 之后,对a的正确引用是。
南京信息工程大学2010-2011(2)C语言程序设计-A
二、基础知识填空(每空 2 分,共 20 分)
1.在 C 语言中,格式化输入操作是由库函数 scanf()完成的,而格式化输出操作是由库函数 完成的。 2.判断 x 为正浮点的关系表达式是 3.若有定义 #define N 2 #define Y(n) ((N+1)*n) 则执行语句 z=2*(N+Y(5));后,z 的值为 4.结构化程序有 5.数学表达式 、选择和循环三种基本结构。 。
第 2 页 /共 9 页
。
*p=n ; 14.下面程序段的运行结果是 char *s=”abcde” ; s+=2 ; printf(“%s”,s); A)cde C)字符’c’的地址 15.利用 fseek 函数可实现的操作是 A)改变文件的位置指针 C)文件的随机读写 。
*p = m ;
B)字符’c’ D)不确定 。 B)文件的顺序读写 D)以上答案均正确
。
三、程序阅读题(每题 3 分,共 24 分)
1.以下程序运行时输出结果第一行是 #include <stdio.h> void swap (int *x, int *y); int main(void) { int a=200, b=100; swap (&a,&b); printf ("a=%d, b=%d\n", a,b); return 0; ,第二行是 。
第 1 页 /共 9 页
int x=1,y=0,a=0,b=0; switch(x) { case 1:switch (y) { case 0 : a++ ; break ; case 1 : b++ ; break ; } case 2:a++; b++; break; case 3:a++; b++; } printf(“a=%d,b=%d”,a,b); return 0; } A)a=1,b=0 B)a=2,b=1 C)a=1,b=1 D)a=2,b=2 。 8.以下不正确的说法是 A)实参可以是常量,变量或表达式 B)形参可以是常量,变量或表达式 C)实参可以为任意类型 D)如果形参和实参的类型不一致,以形参类型为准 。 9.C 语言规定,程序中各函数之间 A)既允许直接递归调用也允许间接递归调用 B)允许直接递归调用不允许间接递归调用 C)不允许直接递归调用也不允许间接递归调用 D)不允许直接递归调用允许间接递归调用 。 10. 对于定义"int a[10];"的正确描述是: A) 定义一个一维数组 a,共有 a[1]到 a[10]共 10 个数组元素 B) 定义一个一维数组 a,共有 a(0)到 a(9)10 个数组元素 C) 定义一个一维数组 a,共有 a[0]到 a[9]10 个数组元素 D) 定义一个一维数组 a,共有 a(1)到 a(10)10 个数组元素 11.已知下列程序段: char a[3], b[]="Hello"; a=b; printf("%s", a); 则 。 A) 运行后将输出 Hello B) 运行后将输出 He C) 运行后将输出 Hel D) 编译出错 12.变量的指针,其含义是指该变量的 。 A)值 B)地址 C)名 D)一个标志 13.若有说明:int *p,m=5,n;以下程序段正确的是 A)p=&n ; B)p = &n ; scanf(“%d”,&p); scanf(“%d”,*p); C)scanf(“%d”,&n); D)p = &n ;
2022年南京工程学院公共课《C语言》科目期末试卷A(有答案)
2022年南京工程学院公共课《C语言》科目期末试卷A(有答案)一、填空题1、请读以下函数:getbits(unsigned x,unsigned p,unsigned n)'{x=((x<<(p+1-n))&((unsigned)~0>>n));return(x);}假设机器的无符号整数字长为16位。
若调用此函数时x=0115032,p=7,n=4,则函数返回值的八进制数是_______。
2、结构化程序由________、________ 、________ 3种基本结构组成。
3、在C语言源程序中,一个变量代表【】。
4、已知字母a的ASCIl码为十进制数97,且设ch为字符型变量,则表达式ch='a'+'8'-3'的值为_______。
5、设a、b、c均为int类型变量,请用C语言的表达式描述以下命题。
(1)a或b中有一个大于c_______(2)a、b和c中只有2个为正数_______(3)c是偶数_______6、以下程序段通过指针变量q,但不移动q,将如图所示连续动态存储单元的值,从第一个元素起依次输出到终端屏幕。
请填空。
(假设程序段中的所有变量均已正确说明。
)for(k=0;k<10;k++) printf("%d,",_______); printf("\n");7、函数swap(int x,inty)可完成对x和y值的交换。
在运行调用函数中的如下语句后,a[0]和a[1]的值分别为_______,原因是_______。
a[o]=1;a[1]=2;swap(a[o],a[1]);8、设有如下结构体说明:struct ST{int a;float b;struct ST*c;doublex[3];}st1;请填空,完成以下对数组s的定义,使其每个元素均为上述结构体类型。
大学C语言期末考试练习题(带详解答案)
一、单项选择题1.( A)是构成C语言程序的基本单位。
A、函数B、过程C、子程序D、子例程2.C语言程序从C开始执行。
A) 程序中第一条可执行语句B)程序中第一个函数C)程序中的main函数D) 包含文件中的第一个函数3、以下说法中正确的是(C)。
A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main( )函数中定义C、C语言程序总是从main( )函数开始执行D、C语言程序中的main( )函数必须放在程序的开始部分4。
下列关于C语言的说法错误的是(B)。
A)C程序的工作过程是编辑、编译、连接、运行B) C语言不区分大小写.C)C程序的三种基本结构是顺序、选择、循环D) C程序从main函数开始执行5。
下列正确的标识符是(C).A.-a1 B。
a[i] C。
a2_i D。
int t5~8题为相同类型题考点:标识符的命名规则(1)只能由字母、数字、下划线构成(2)数字不能作为标识符的开头(3)关键字不能作为标识符选项A中的“—" ,选项B中“[”与“]"不满足(1);选项D中的int为关键字,不满足(3)6.下列C语言用户标识符中合法的是(B)。
A)3ax B)x C)case D)-e2 E)union选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1);7.下列四组选项中,正确的C语言标识符是(C)。
A)%x B)a+b C) a123 D) 123选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。
A、print _3d db8 aBcB、I\am one_half start$it 3paiC、str_1 Cpp pow whileD、Pxq My->book line#His。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2010 ─ 2011 学年第二学期C语言程序设计课程试卷一、选择题(下列每题中只有一个正确答案,每题1分,共20分)1、C语言程序的基本单位 C 。
(A)程序行(B)语句(C)函数(D)字符2、设有语句“ int a=3; ”,则执行语句“ a+=a-=a*a; ”以后变量a的值是 D 。
(A)3 (B)0 (C)9 (D)-123、合法的C语言字符常量是 A 。
(A)…t‟(B)“A”(C)65 (D)A4、以下程序的输出结果是 D 。
main(){ int a=12,b=12;printf(“%d %d\n”,--a,++b);}(A)10 10 (B)12 12 (C)11 10 (D)11 135、若变量已正确定义,那么以下语句段的输出结果是____C____。
x=0;y=2;z=3;switch(x){ case 0:switch(y==2){ casa 1:printf(“*”);break;case 2:printf(“%”);break;}case 1:switch(z){ case 1:printf(“$”);case 2:printf(“*”);break;default:printf(“#”);}}(A)%$ (B)#* (C)*# (D)**$6、设实型变量为f1、f2、f3、f4的值分别为4,3,2,1;整型变量ml、m2的值为1。
表达式“(ml=fl>f2)&&(m2=f3<f4)”的值是 A 。
(A)0 (B)1 (C)2 (D)出错7、执行下列程序后,i 的值是 C 。
void main(){ int i, x;for(i=1, x=1;i<20; i++){if (x>=10) break;if(x%2= =1){x+=5; continue; }x-=3;}}(A)4 (B) 5 (C)6 (D)78、对以下for循环,叙述正确的是 B 。
for(x=0,y=0;(y!=123)&&(x<4); x++, y++);(A)执行了3次(B)执行了4次(C)是无限循环(D)循环次数不定9、在定义int a[5][4]; 之后,对a的正确引用是 C 。
(A)a[2][4] (B)a[5][0] (C)a[0][0] (D)a[0,0] 10、以下程序段的输出结果是 B 。
char str[ ]=”ab\n\012\\\””; printf(“%d\n”,strlen(str));(A)12 (B)6 (C) 4 (D) 311、在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是 B (A)地址传递(B)单向值传递(C)由实参传给形参,再由形参传回实参(D)传递方式由用户指定12、C语言中,形参缺省的存储类别是 A(A)auto(自动)(B)static(静态)(C)register(寄存器)(D)extern(外部)13、已知指针P的指向如下图所示,则执行语句“*P++;”后,表达式“*P”的值是 A 。
(A)20 (B)30 (C)21 (D)3114、以下程序的输出结果是 C 。
void sub(int x,int y,int *z){ *z=y-x;}main(){ int a,b,c;sub(10,5,&a);sub(7,a,&b);sub(a,b,&c);printf(“%d,%d,%d\n”,a,b,c);}(A)5,2,3 (B)5,-2,-7 (C)-5,-12,-7 (D)-5,-12,-17 15、以下程序段的输出结果是 A 。
char str[ ]=“ABCD”,*p=str;printf(“%d\n”,*(p+4));(A)68 (B)0 (C)字符D地址(D)不确定的值16、C语言中,从计算机的内存中将数据写入文件,称为_ _ C _。
(A)输入(B)修改(C)输出(D)删除17、若以“a+”方式打开一个已存在的文件,则以下叙述正确的是 A 。
(A)文件打开时,原有文件内容不被删除,位置指针移到文件末尾,可作添加和读操作(B)文件打开时,原有文件内容不被删除,位置指针移到文件开头,可作重写和读操作(C)文件打开时,原有文件内容不被删除,只可作写操作(D)以上各种说法皆不正确18、已知为year整型变量,不能使表达式“(year%4==0&&year%100!=0)||year%400==0 ”的值为“真”的数据是 A 。
(A)1998 (B)1992 (C)1996 (D)200019、比较两个字符串str1,str2(此处的str1和str2为两个字符数组名)是否相等的正确的表达式为 D 。
(A)if(str1=str2) … (B)if(str1==str2) …(C)if(strcmp(str1,str2)=0) … (D)if(strcmp(str1,str2)==0) …20、若c1,c2为char型变量,则为了使以下语句的输出为:a,b 正确的输入形式是B 。
scanf (“%c,%c”,&c1,&c2);printf (“%c,%c”,c1,c2);(A)a b (B)a,b (C)‟a‟ ‟b‟(D)ab二、填空题(每空1分,共20分)1、若a为int型变量,则表达式“ ((a=4*5,a*2), a+6) ”的值为26 。
2、以下程序的功能是:从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时,结束输入,请填空。
main(){ float x ,amax,amin;scanf(“%f”,&x);amax=x;amin=x;while( a>=0 ){ if( amax<x ) amax=x;if( amin>x ) amin=x;scanf(“%f”,&x);}printf(“\n最高分=%f\n最低分=%f\n”,amax,amin);}3、下面程序的功能是将一个字符串按逆序存放,请填空。
#include <stdio.h>#include <string.h>void main( ){ char st[50],m; int i,j; gets(st);for( i=0,j=strlen(st); i< j ; i++, j--){ m=st[i]; st[i]= st[j] ; st[j] =m; }printf(“%s\n”,st);}4. 以下程序的输出结果是9.00double sub (double x ,double y ,double z ){ y-=1.0; z=z+x ; return z ;}void main ( ){ double a=2.5, b=9.0;printf (“%.2f\n ”,sub (b-a ,a ,a ));}5、 当定义一个以下类型的结构体变量时,系统分配给它的内存是 14 字节。
struct student{ char name[10];float height;}6、下面程序的输出结果是 12\nbeijingchina 。
void main(){ static char str[]="beijing";printf("%d\n",strlen(strcpy(str ,"china")));printf("%s",str);}7、下面程序是用来统计文件中字符的个数,其中文件以只读的方式打开,请填空。
#include <stdio.h>void main(){ FIlE *fp;long num=0;if((fp=fopen(“fname”,” r ”))==Null) //文件以只读的方式打开{ printf(“Can‟t open file!\n”); exit(0); }while( !feof(fp) ) //是否到文件末尾{ fgetc( fp ); num++ }printf(“num=%d \n”,num);fclose(fp);}8、设有int a=10,*p =&a; 则 *p+1的值是 11 。
9、数学式子xy ab3 写成C 语言表达式是 3*a*b/(x*y)10、下面程序的功能对3个整数进行从大到小排序,请补充完整。
#include<stdio.h>void main(){float a,b,c,t;scanf("%f,%f,%f",&a,&b,&c);if ( a < b){ t=a;a=b;b=t; }if ( a<c ){ t=a;a=c;c=t; }if (b-c <0){ t=b ;b=c; c=t ; }printf("%5.2f,%5.2f,%5.2f\n",a,b,c);}11、输出100~1000范围内的所有“水仙花数”。
所谓“水仙花数”是一个3位正整数,其各位数字的立方和等于该数本身。
完善下面程序。
#include<stdio.h>void main(){ int i,j,k,n; //i,j,k分别存放三位正整数的从百位到个位上的数 for(n=100;n<1000;n++){ i= n/100 ;j=n/10-i*10;k=n%10;if ( n== i*i*i+j*j*j+k*k*k )printf("%4d",n);}printf("\n");}12、若int a=2,b=4: 则表达式“ a > b ? a : b ”的值为 4 。
13、C语言作为结构化程序设计语言,具有顺序结构、选择结构和循环结构3种基本结构。
三、程序设计(每题10分,共60分)1、有3个整数a、b、c,由键盘输入,输出其中最大的数。
2、通过键盘输入一行字符串,统计其中字母、数字、空格和其它字符的个数。
3、求一个3×3的整型矩阵对角线元素之和。
4、写一个判断素数的函数int prime (int x),其实现如下功能:如果x是素数,则该函数返回1;否则,该函数返回0。
在main函数中实现如下功能:声明一个整型变量n,用于保存键盘输入的一个整数,用n作为实参调用prime函数,根据其返回值,输出是否为素数的信息。
5、写一函数,求一个字符串的长度int length (char *p) ,实现如下功能:返回指针变量p所指向的字符串的长度。