得分 选择题( 30%:15小题,每小题 2 分)
1. 以下叙述正确的是( )。
A) 在 C 程序中, main 函数必须位于程序的最前面。 B) C 语言的每一行中只能写一条语句。 C) C 语言本身没有输入输出语句。
D) 一个程序的执行是从本程序的 main 函数开始,到本程序文件的最后一个函数结
束
2. 若有说明: int a[10]; 则对 a 数组元素的正确引用是( )。
A ) a[10]
B) a[3.5]
C) a(5)
D) a[10-10]
3. 下面关于 \的说法正确的是( )。
A ) 它代表一个字符常量
B) 它代表一个字符串常量
C) 它代表一个字符 D) 它代表一个变量
A ) 数组的首地址 B) 数组第一个元素的值
C) 数组全部元素的值
D) 数组元素的个数
4. 若用数组名作为函数调用的实参,传递给形参的是 ( )
5. 以下选项中属于 C 语言数据类型的是( )
A )复数型 B)记录型 C)双精度型 D)集合型
6. 设 a=5,b=6,c=7,d=8,m=2,n=2, 则执行 (m=a>b)&&(n=c A ) 1 B) 2 C) 3 D) 4 7. 对于 while 语句,错误的说法是( ) A ) 用条件控制循环体的执行次数 B) 循环体至少要执行一次 C) 循环体有可能一次也不执行 D) 循环体中可以包含若干条语句 8. 设 a=10、b=12,则 printf(\则输出结果是 ( ) A ) 10 B) 11 C) 12 D) 13 第1 页共7 页 9. 可判断变量 a 为正, b 为负的正确表达式是 ( )。 A ) a*b <0 B) (a>0||b >0)&&a*b <0 C) (a<0||b<0)&&a*b <0 D) a>0&&a*b<0 10. 在 C 语言中要求参加运算的数必须是整数的运算符是( ) A) / B ) ! C) % D) 11. 下列程序段中 while 循环体执行的次数是( )。 int k=0; while(k=1) k++; A ) 一次也不执行 B) 只执行一次 C) 有语法错,不能执行 D) 无限次 12. 若有以下说明,且 0≤i<10,则对数组元素的错误引用是( int a[]={1,2,3,4,5,6,7,8,9,10},*p=a,i; A ) *(a+i) B) p+i C) a[p-a+i] D) 13. 有定义语句: int b; char c[10]; 则正确的输入语句是 ( )。 A ) scanf(\B) scanf(\ C) scanf(\D) scanf(\ 14. 设有如下定义: struct sk { int a; float b; }data; int *p; 若要使 p 指向 data中的 a 域,正确的赋值语句是 ( )。 A ) p=&a; B) p=data.a; C) p=&data.a; D) 15. 若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是第2 页共7 页 )。 *(&a[i]) p=data.a () A ) 函数调用可以作为独立的语句存在 B) 函数调用可以作为一个函数的实参 C) 函数调用可以出现在表达式中 D) 函数调用可以作为一个函数的形参 得分 填空题( 20%:20空,每空 1 分) 开始。 1. C 语言对数组下标的引用一般从 2. C 语言中,一个函数一般由两个部分组成, 它们是 和 。 3. 一个 C 程序中至少应包括一个 ___________ 函数。 4. 根据变量的作用域, C 语言的变量分为 和 。 ___; 5. 设 x 为整型变量,则描述数学式“ 1 设 ch 为字符型变量,可用表达式 ____ ______________________ 判断该变量保存字符 是否为大写字母。 6. 在 C 语言中,表达式 1/2 的值是 ,表达式 1.0/2 的值是 。 7. 下列程序段定义了一个数组并循环输入每个元素的值: int i,a[3]; for(i=0;i<3;i++) scanf( “ %d”,_ ______ ); 8. 若定义 了 int a[10],*p; 将 数组 元素 a[8] 的地 址赋 给指 针变量 p 的赋值 语 句是 9. 设一个 C 程序中有如下定义: char line[]=\; char * ptr=line ; 则 ptr 中为 , line[1] 中为 , line[5]中为 __ _ 10. 下列程序段的输出结果是 __ _________ main() 第3 页共7 页 { char b[]=\b[5]= '0'; printf(\ } 11. 表示“整数 x 的绝对值大于 5”时值为“真”的 C 语言表达式是 __ 12. 设整型变量 a的初值为 3,则执行表达式“ a+=3”后 a 的值是 13. 与 k=n++ 完全等价的表达式是 __ ___。 __ 。 14. C 语言中实现选择结构的语句是 if 语句和 。 得分 阅读程序,写出运行结20%:4 小题,每小题 1. main() 果 { int i,j,x=0; for (i=0;i<2;i++) { for (j=0;j<3;j++) { if (j%2= =1) continue; x=x+1; } } printf( “%d”,x); } 程序运行后输出: 2. main() { int f1=1,f2=1; int i; for(i=1; i<=3; i++) { printf(\f1=f1+f2; f2=f2+f1; } } 程序运行后输出: 第4 页共7 页 5分) 3. main() { int i,k,a[10],p[3]; k=5; 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=k+p[i]*2; printf( “ ,%k)d;” } 程序运行后输出: 4. int max(int x, int y) { return x>y?x:y; } int main() { int a=3,b=8,c=6; printf(\return 0; } 程序运行后输出: 程序填空(根据给出的程序功能说明,补充完整程序中缺少的代码,每 空行只填写一条语句或一个表达式,不写、多写、错写不给分。 )(16%:3 小 得分 题,共 8 空, 每空 2 分) 1. 以下程序的功能是:输入一个字符,如果它是一个大写字母,则把它变成小写字母;如 果 它是小写字母,则把它变成大写字母;其它字符不变。 main() { char ch; scanf(“%c”, &ch); if( ____________)ch=ch+32; else if(ch>='a'&&ch<= 'z') _____________ ; printf( “%c”,ch); 第5 页共7 页 2. 下面程序中的数组 a包括 10 个整型元素,从 a中第二个元素起,分别将后项减前项之差 存入数组 b,并按每行 3 个元素的形式输出数组 b。 main() { int a[10],b[10], i; for(i=0; _________ ; i++) scanf(“%d”,&a[i]); for (i=1; _________ ; i++) b[i]=a[i]-a[i-1]; for(i=1;i<10;i++) { printf( “= ”, b[i]); if ( __________ ) printf( “\\n”); } } 3. 找出输入的 10 个整数中的最大数。 #include { int k,max, ; for(k=0;k<10;k++) scanf(“%d”,&num[k]); max=0; for(k=9; ; k--) if (num[max] } 得分 程序设计( 14%:2 小题,每小题 7 分) 1.编写程序,要求从键盘输入两个整数 x 和 y,并将较大值输出来。 第6 页共7 页 2. 编写函数 void fun(int *s, int t , int *k) ,该函数求数组中的最小值的下标,并存放到指针 k 所指示的存储单元中,例如设有数组 a 和变量 j: int a[10]={876,675,896,101,301,401,980,431,451,777}, j ; 则下列调用后 fun(a,10,&j); j 的值为 3 void fun(int *s, int t , int *k) { 第7 页共7 页
(完整word版)五邑大学试卷_C语言程序设计_信息学院各专业_A卷
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)