安阳工学院c语言期末考试题库,C语言题带答案安阳工学院

《C语言题带答案安阳工学院》由会员分享,可在线阅读,更多相关《C语言题带答案安阳工学院(17页珍藏版)》请在人人文库网上搜索。

1、1. 选择题数据类型和表达式 81. 以下选项中不属于C语言的类型的是_____。D A. signed short intB. unsigned long intC. unsigned intD. long short2. C语言提供的合法的数据类型关键字是: _____。 BA. doubleB. shortC. integerD. char3. 两路选择用_____语句实现。 DA. case B. else if C. switch D. ifelse 4. 下列标识中合法的用户标识符为____。AA. year B. long C. 7 x yz D. struct5. 若有说明语句。

2、:char c=72;则变量c____。 AA. 包含1个字符B. 包含2个字符C. 包含3个字符D. 说明不合法,c的值不确定6. 下面哪个不是C中的字符常量:____。 CACB. bC. “C”D. 7.int i;float f;double d;表达式15 + d*f + A - i的值是______类型。 DA float B int C char D double8. 哪个不是C中的有效标示符:____。 AA num-2 B num_2C _num_2D _num_29. 下列语句正确的是:______。 D A 具有静态存储期限的变量具有文件作用域B 在函数内部声明的变量具有。

3、外部链接C 具有内部链接的变量都具有静态存储期限D 每个形式参数都具有块作用域10. x是const类型的变量,下列关于x的陈述错误的是:______。 A A 若x是int类型,可以作为switch语句中分支标号的值B 编译器将检查是否对x进行初始化C x遵循和变量一样的作用域规则D x可以是任意类型判断和循环811. 设有程序段int k=10;while(k=0) k=k-1;则下面描述中正确的是________。 CA. while循环执行10次B. 循环是无限循环C. 循环体语句一次也不执行D. 循环体语句执行一次12. 执行语句 for(i=1;i+ )37. 关于指针兼容性的描述。

4、,正确的是_______. DA 所有指针都是地址,指向不同类型的指针可以互相赋值而无需强制转换。B 如果不同类型的指针互相赋值,C语言使用隐式的强制类型转换C 当指针被强制类型转换时,C语言自动重新格式化数据以映射到正确类型。D 当间接引用一个void指针时,必须进行强制类型转换。38. 关于“指向指针的指针”描述正确的是_______. DA 任何指向某个变量的指针B 任何指向相同变变量的两个指针C 任何指向相同类型变量的两个指针D 其内容为另一个指针地址的指针39. 关于指针和数组描述正确的是:_______. CA 当ary是一个数组时,*ary和&ary0等价B 当ary是一个数组时。

5、,*ary 和*ary0等价C 可以将间接运算符用于数组名,从而引用数据。D 数组名是一个指针变量40. 一个C语言程序总是从_______开始执行。 CA.主程序 B.子程序 C.主函数 D.函数2. 填空题 20道题数据类型和表达式 41. 有定义: int a; unsigned int b;假设int型为4个字节。则变量a的取值范围为 ,变量b的取值范围为 。-32768-32767 0-655352. 若用数组名作为函数调用的实参,则实参传递给形参的是 ,而数组中的数据是 传递的。地址 双向3. 在一个C源程序文件中,若要定义一个只允许本文件中所有函数使用的变量,则该变量的存储类别必。

6、须是 。 Static4. C语言中,double型数据存储在内存中占 个 字节。float型数据存储在内存中占 个字节。 int型数据存储在内存中占 个字节。 8 4 45. 有定义:int k ;int b;执行k=( ( b=2*3, b*2 ), b+10 ) ; 后,变量k的值是 。 166. 若a = 5 , 当执行语句a - = a + = a * a;后,a的值为 。 07. 下列程序段的输出结果是_______ 。 8 16 10int u=010,v=0x10,w=10;printf(“%d,%d,%dn”,u,v,w);8. 逻辑操作符只有当两个操作数都为true结果才为。

7、true。 &或与9. int x= 3;int y = 5;x+y之后,x的值为____,y的值为 ____。 4 5 10. int x = 2; int y = 3 ;int z = 2; (x+)+(+y)+(+z)的值是_____。 911. int x =369; (x/10)%10的值是____. 6判断和循环 412. int x =0;int y = 0;int z = 1;if(z = 0| x & !y)if(!z)y = 1;else x = 2;执行上述代码后,x的值为 ,y的值为 ,z的值为 。 0 0 113. 有以下代码:int x = 0, y = 0, z=。

8、 1;switch(x)case 0: x = 2;y=3;case 1: x = 4;default:y = 3;x = 1;z= 2;执行上述代码后,x的值为 ,y的值为 ,z的值为 。 1 3 214.int x =0;int y = 0;int z = 1;if(z=z&z=1)if(z&y)y = 1;else x =1 ;执行上述代码后,x的值为 ,y的值为 ,z的值为 。 0 0 1函数 415. fabs (-3.6)的值是____。 3.616. rand()%2+1的值为____和____。1和 2数组 417. 执行下列语句后:char s110;char s210;st。

9、rcpy(s1,computer);strcpy(s2,science);if(strcmp(s1,s2)int main(void)char s=Hsjodi;char* p;for(p = s; *p ;p+)-*p;puts(s);return 0;20. 指针 4下面程序的输出是:________. hijkl#include int main(void) char s = HIJKL, *p; for (p = s; *p; p+) *p += 32; puts(s); return 0; 3. 程序填空 15道题数据类型和表达式 31. 输入一个小写字母,然后输出对应的大写字母的A。

10、SCII码。#include int main()char ch;ch = ;printf(“%d”,);getchar()ch - 32循环 32. 计算1+2+3+100(用循环来实现)#include int main(void)int i,sum;sum=0;for(i=1;iint main()int i;for(i=1;iint main()int a;int b;scanf(“%d %d”,&a, &b);int t;________________________return 0;t = a;a = b;b = t;函数6. 函数power(a,n)返回a的n次方。请完成如下的。

11、填空:int power1(int a, int n)int result;if(n=0)return 1;else result= power(a,n-1)*a;return result;1;power(a,n-1)*a;数组 37. 以下程序以每一行输出4个数据的形式输出a数组。#include int main(void)int a20,i;for(i=0;i#define N 10int main(void) char strN,k;int i,j;for(i=0;iint main(void)char str =h,e,l,l,o;char str15;int i,flag ;fo。

12、r(i=0;iint main(void)int a55=1,2,3,4,5,1,2,3,4,5,1,2,3,4,5,1,2,3,4,5,1,2,3,4,5;int pri_line=0;int sec_line=0;int i=0,j=0;for(i=0;ivoid max_min(int a,int n,int* max ,int* min);int main(void)int a=1,2,3,4,5;int max1;int min1;max_min(a,5,&max1,&min1);printf(%d %d,max1,min1);return 0;void max_min(int a,。

13、int n,int* max,int* min)int i ;*max = *min = a0;for(int i = 1; i*max)*max = ai;if(ai#include int main(void ) int num26,i; char c;for(i=0; iint main(void)int i,a10,x,flag=0;for(i=0;iint main(void) int m35=1,2,3,4,5,8,12,23,11,17,22,19,20,32,27;int i,j,max;max=m00;for(i=0;imax)max=mij;printf(The max n。

14、umber is: %d,max);return 0;mijmax = mij15. 在二维数组a中选出各行最大的元素组成一个一维数组b。#include int main(void)int a4=3,16,87,96,4,32,11,126,10,25,12,36;int b3,i,j,max;for(i=0;imax)max=aij;____________;printf(narray a:n);for(i=0;i=2;i+)for(j=0;j=3;j+)printf(%5d,aij);printf(n);printf(narray b:n);for(i=0;i=2;i+)printf(%5d,bi);printf(n);return 0;max = ai0;max = ai0。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值