中国石油大学《C语言程序设计》期末复习题及答案
中国石油大学华东2013-2014第一学期c语言期末考试答案

《计算机程序设计C(2-1)》期末考试试卷专业班级姓名学号开课系室计算机应用技术系考试日期 2014年 1月10日一、程序阅读题(每空2分,共20分)1.若想通过以下输入语句给a赋值1,给b赋值2,则输入数据的形式应该是【1】。
scanf("%d,%d",&a,&b);2.如果a和b的值分别为20和10,下列语句printf("%d+%d=%d",a,b,a+b);输出到屏幕上的结果是【2】。
3.下面程序的输出结果为【3】。
#include <stdio.h>int main(){int x = 10,y = 3;printf("%d\n",x/y);return 0;}4.设i,j,k均为int型变量,则执行完下面的for循环后,k的值为【4】。
for(i = 0,j = 10; i <= j; i ++,j --)k =i + j;5. 水仙花数是指一个三位数的各位数字的立方和是这个数本身,请阅读下面程序并完成填空。
#include <stdio.h>int fun(int n){int i,j,k,m;m = n;【5】;while(m){【6】;m = m / 10;k = k + j * j * j;}if(k == n)【7】;elsereturn 0;}int main(){int i;for(i = 100; i < 1000; i ++){1if( 【8】== 1){printf("%d is ok!\n" ,i);}}return 0;}6. 程序功能是:从键盘输入一行字符,将其中的所有数字字符转换为按先后顺序排列的一个整数。
例如,输入的一行字符为“a2b0D04”,输入结果为整数2004,请补充完整程序。
#include <stdio.h>int main(){int n = 0;char ch;ch = getchar();while(ch != '\n'){if( 【9】){n = n * 10 + ch - '0';}ch = getchar();}printf("value = %d\n",n);return 0;}7.有以下程序#include <stdio.h>int sub(int n){return (n / 10 + n % 10);}int main(){int x,y;scanf("%d",&x);y = sub(sub(sub(x)));printf("%d\n",y);return 0;}若运行时输入:1234<回车>,程序的输出结果是【10】。
C语言程序设计期末考试试题及答案

C语言程序设计期末考试试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列关于C语言函数的描述中,正确的是?A. 函数可以没有返回值B. 函数可以有多个返回值C. 函数可以没有参数D. 函数必须有参数答案:C3. 在C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. #答案:B4. 下列关于数组的描述中,错误的是?A. 数组可以是多维的B. 数组的下标从0开始C. 数组的大小在编译时确定D. 数组可以动态分配答案:D5. C语言中,以下哪个关键字用于定义一个指针?A. intB. charC. *D. void答案:C6. 在C语言中,以下哪个关键字用于定义一个静态变量?A. staticB. externC. registerD. auto答案:A7. 下列关于C语言中文件操作的描述中,正确的是?A. 文件操作只能使用标准库函数B. 文件指针必须使用FILE类型C. 文件操作必须使用fclose函数关闭文件D. 文件操作不能使用缓冲区答案:B8. 在C语言中,以下哪个关键字用于定义一个宏?A. defineB. typedefC. enumD. struct答案:A9. 下列关于C语言中位运算的描述中,错误的是?A. & 表示按位与B. | 表示按位或C. ^ 表示按位异或D. ~ 表示按位取反答案:B10. 在C语言中,以下哪个关键字用于定义一个枚举类型?A. enumB. structC. unionD. typedef答案:A二、填空题(每题2分,共20分)1. 在C语言中,一个整型变量占用的内存空间通常是______个字节。
答案:42. C语言中,使用______关键字可以定义一个无限循环。
答案:while3. C语言中,数组的元素默认初始化为______。
中国石油大学华东c语言期末考试题及答案

中国石油大学华东c语言期末考试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言中变量的描述,错误的是()。
A. 变量必须先定义后使用B. 变量的类型必须明确C. 变量名可以是任意字符D. 变量的类型决定了变量的存储空间答案:C2. 在C语言中,下列哪个关键字用于定义函数?()A. intB. voidC. returnD. main答案:B3. 下列哪个选项是正确的C语言注释方式?()A. // 这是注释B. /* 这是注释 */C. //* 这是注释D. /* 这是注释 */答案:B4. C语言中,下列哪个运算符用于比较两个值是否相等?()A. ==B. !=C. >D. <答案:A5. 在C语言中,下列哪个选项是正确的字符串定义方式?()A. char str[] = "Hello";B. char str = "Hello";C. char str[] = {"Hello"};D. char str = {"Hello"};答案:A6. 下列哪个选项是C语言中的合法整型常量?()A. 123B. 0x1AC. 0123D. All of the above答案:D7. C语言中,下列哪个选项用于定义一个指向整型的指针?()A. int *p;B. int p;C. *int p;D. int *p = 0;答案:A8. 下列哪个选项是正确的C语言数组定义方式?()A. int arr[5] = {1, 2, 3, 4, 5};B. int arr[] = {1, 2, 3, 4, 5};C. int arr[5] = {1, 2, 3};D. All of the above答案:D9. 在C语言中,下列哪个选项是正确的文件包含指令?()A. #include "stdio.h"B. #include <stdio.h>C. #include "stdio.h"D. #include <stdio.h>答案:D10. 下列哪个选项是C语言中正确的条件语句?()A. if (x > 0)B. if x > 0C. if (x > 0) {D. if (x > 0) then答案:C二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量并初始化为10的语句是:________。
完整word版,C语言程序设计期末考试试题(含答案)

C语言程序设计期末考试试题及其答案一、单项选择题(本大题共20题,每题2 分,共40分)1、以下不是C语言的特点的是( )A、C语言简洁、紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件进行操作D、C语言移植性好2、以下不正确的C语言标识符是( )A、ABCB、abcC、a_bcD、ab.c3、一个C语言程序是由( )A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( )A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( )A、intB、floatC、doubleD、不确定6、在C语言中,char型数据在内存中的存储形式是( )A、补码B、反码C、源码D、ASCII码7、有如下程序,输入数据:12345M678<cR>后(<CR>表示回车),x的值是( ) 。
#include<stdio.h>main(){int x;float y;scanf("%3d%f",&x,&y);}A、12345B、123C、45D、3458、若有以下定义int a,b; float x,则正确的赋值语句是( )A、a=1,b=2B、b++;C、a=b=5D、b=int(x);9、以下程序的执行结果是( )#include<stdio.h>{int i=10,j=10;printf("%d,%d\n",++i,j--);}A、11,10B、9,10C、11,9D、10,910、巳知字母A的ASCII码是65,以下程序的执行结果是( )#include<stdio.h>main(){char c1='A',c2='Y';printf("%d,%d\n",c1,c2);A、A,YB、65,65C、65,90D、65,8911、下列运算符中优先级最高的是( )A、<B、十C、%D、!=12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。
中国石油大学《C语言程序的设计》期末复习试题与答案

《C语言程序设计》期末复习题一、选择题1.能将高级语言编写的源程序转换成目标程序的是()A.程序 B. 解释程序 C. 编译程序 D.编辑程序2.设a为整型变量,则不能正确表达数学关系10<a<15的C语言表达式是()。
A. 10<a<15B. a==11||a==12||a==13||a==14C. a>10&&a<15D.!(a<=10)&&!(a>=15)3.当调用函数时,实参是一个数组名,则向函数传送的是( )。
A. 数组的长度B. 数组的首地址C. 数组每一个元素的地址D. 数组每个元素中的值4.执行下面的程序段后,k的值是()int k=1,n=325;do { k*=n%10;n/=10;}while(n);A. 3B. 30C. 523D. 3255.若有以下数组说明,则i=6;a[a[i]]元素数值是()。
int a[12]={1,4,7,10,2,5,8,11,3,6,9,12};A.3B.8C.6D.56.若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是()A. for(i=1,p=1;i<=5;i++) p*=i;B. for(i=1;i<=5;i++){ p=1; p*=i;}C. i=1;p=1;while(i<=5){p*=i; i++;}D. i=1;p=1;do{p*=i; i++; }while(i<=5);7.若有:int a[][3]={{1,2,3},{4,5},{6,7},{8}}; 则数组a的第一维的大小为: ( ) A. 12 B. 3 C. 4 D.无确定值8.设有如下程序段,则执行p=s;语句后,以下叙述正确的是( )。
char s[20]= “Bejing”,*p;p=s;A.可以用*p表示s[0]B.s数组中元素的个数和p所指字符串长度相等C.s和p都是指针变量D.数组s中的容和指针变量p中的容相等9.以下正确的函数定义是( )。
中国石油大学(华东)智慧树知到“计算机科学与技术”《程序设计(C语言)》网课测试题答案1

中国石油大学(华东)智慧树知到“计算机科学与技术”《程序设计(C语言)》网课测试题答案(图片大小可自由调整)第1卷一.综合考核(共15题)1.下列描述中不正确的是()A.字符型数组中可以存放字符串B.可以对字符型数组进行整体输入、输出C.可以对整型数组进行整体输入、输出D.不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值2.在执行int a[ ][3]={{1,2},{3,4}}; 语句后a[1][2]的值是()A.3B.4C.0D.23.执行下面程序,输出的结果为()A.4,3,2B.3,3,2C.3,3,3D.3,2,24.若有说明语句:char c=‘\64’; 则变量C包含:()A.1个字符B.2个字符C.3个字符D.说明不合法,C值不确定5.用数组名作为函数调用时的实参,则实际传递给形参的是()A.数组的第一个元素值B.数组中全部元素值C.数组的首地址D.数组的元素个数6.以下选项中非法的表达式是()A.(a+2)++B.i=j==1C.(char)(65+10)D.x=x-17.已知:int a[ ][3]={1,2,3,4,5,6,7,8,9,0}; 则数组a的第一维的大小是()A.2B.3C.4D.无法确定;8.在“while(!a)”中,其中“!a”与表达式()等价。
A.a==0B.a==1C.a!=1D.a!=09.在C语言中,字符型数据在内存中的存储形式是()A.原码B.补码C.反码D.ASCII码10.以下选项中合法的用户标识是()A.longB._2TestC.3DmaxD.A.dat11.若有说明:char s1='\067', s2='1'; 则变量s1,s2在内存中各占的字节数是()A.1,1B.4,1C.3,1D.1,212.已知:int a[ ][3]={1,2,3,4,5,6,7,8,9,0}; 则数组a的第一维的大小是()A.2B.3C.4D.无法确定13.以下能正确定义数组并正确赋初值的语句是()A.int N=5,b[N][N];B.int a[1][2]={{1},{3}};C.int c[2][]={{1,2},{3,4}};D.int d[3][2]={{1,2},{34}};14.下面有关for循环的正确描述是()A.for循环只能用于循环次数已经确定的情况B.for循环是先执行循环体语句,后判断表达式C.在for循环中,不能用break语句跳出循环体D.for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来15.已知char b[5], *p=b; ,则正确的赋值语句是()A.b=“abcd”;B.*b=“abcd”;C.p=“abcd”;D.*p=“abcd”;第2卷一.综合考核(共15题)1.已知int a=4,b=5;,这执行表达式a=a>b后,变量a的值为()A.0B.1C.4D.52.以下程序中,while循环的循环次数是() main() { int i=0; while(iA.1 B.10C.6D.死循环,不能确定次数3.以下关于数组的描述正确的是()A.数组大小固定,但是可以有不同类型的数组元素B.数组大小可变,但是所有数组元素的类型必须相同C.数组大小固定,所有元素的类型必须相同D.数组大小可变,可以有不同类型的数组元素4.执行下面程序,输出的结果为()A.4,3,2B.3,3,2C.3,3,3D.3,2,25.在微型计算机系统中,存储一个汉字的国标码所需要的字节数是()A.1B.2C.3D.46.已定义c为字符型变量,则下列语句中正确的赋值语句是()A.c='66';B.c="66"C.c=66;D.c="B"7.已知char ch=‘A’,且表达式:ch=(ch>=‘A’ && chA.AB.aC.zD.Z8.在计算机中,C语言是属于()A.机器语言B.高级语言C.汇编语言D.自然语言9.在C语言中,下列变量名称中合法的是()A.7xB.intC.ELseD.a-b10.下面不是C语言基本数据类型的是()A.指针类型B.整型C.无符号长整型D.单精度型11.执行下面程序,输出的结果为()A.4,3,2B.3,3,2C.3,3,3D.3,2,212.若有说明:char s1=067, s2=1; 则变量s1,s2在内存中各占的字节数是()A.1,1B.4,1C.3,1D.1,2 13.若有说明语句:char c=‘\64’;则变量C包含:()A.1个字符B.2个字符C.3个字符D.说明不合法,C值不确定14.以下非法的赋值语句是()A.n=(i=2, i++);B.j++;C.++(I+1);D.x=j>0;15.执行int j, i=1; j=-i; 后j的值是()A.-1B.-2C.1D.2第1卷参考答案一.综合考核1.参考答案:C2.参考答案:C3.参考答案:A4.参考答案:A5.参考答案:C6.参考答案:A7.参考答案:C8.参考答案:D9.参考答案:D10.参考答案:B11.参考答案:A12.参考答案:C13.参考答案:D14.参考答案:D15.参考答案:C第2卷参考答案一.综合考核1.参考答案:A2.参考答案:D3.参考答案:C4.参考答案:A5.参考答案:B6.参考答案:C7.参考答案:B8.参考答案:B9.参考答案:C10.参考答案:A11.参考答案:A12.参考答案:A 13.参考答案:A14.参考答案:C15.参考答案:A。
C语言程序设计期末考试复习题及答案
C语言考试期末考试复习题及答案一、选择题(1) 一个C语言程序总是从(C )开始执行A) 书写顺序的第一个函数B) 书写顺序的第一条执行语句C) 主函数main()D) 不确定(2) 设int x=3,y=4,z=5,则下列表达式中的值为0的是 ( D )A) ‘x’&&’y’B) x||y+z&&y-z C) x<=yD) !((x<y)&&!z||1)(3) 执行以下程序段后,i的值是 ( C )int i=10。
switch(i+1){ case 10: i++。
break。
case 11: ++i。
case 12: ++i。
break。
default : i=i+1。
}A) 11 B) 13 C) 12 D) 14(4) 语句while(!e)。
中的条件!e等价于 ( A )A) e==0 B)e!=1 C) e!=0D) 运行时出错(5) 用 int a[4]={1,2}。
对数组进行初始化后,数组元素a[3]的值是 ( B )A) 随机值B) 0 C) 1 D) F(6) 在执行char str[10]=“china\0”; strlen(str)的结果是 ( A )A)5 B) 6 D) 7 D 9(7) 若有定义,char *p=”computer”。
则语句printf(“%c”,*(p+2))运行结果是( B )A) 随机值B) m C)o D) omputer(8) 在以下函数调用语句中fun1(x,10,(x,10),fun2(y,10,(y,10)))。
函数fun1参数的个数为 ( B )A) 8 B) 4C) 5 D) 编译出错(9) 在说明一个结构体变量时系统分配给它的存储空间是( D )A)该结构体中第一个成员变量所需存储空间 B) 该结构体中最后一个成员变量所需存储空间C)该结构体中占用最大存储空间的成员变量所需存储空间D) 该结构体中所有成员变量所需存储空间的总和1. 用C语言编写的代码程序( B )A)可立即执行 B)是一个源程序 C)经过编译即可执行 D)经过编译解释才能执行2. C语言中用于结构化程序设计的三种基本结构是( A )A)顺序结构、选择结构、循环结构 B)if、switch、break C)for、while、do-while D)if、for、continue3. 以下定义语句中正确的是( C )A)char a='A'b='B'。
最新中国石油大学华东C语言习题答案
中国石油大学华东C 语言习题答案C语言复习题【设计型】5.1 输出一行星号编写程序在一行中输出 N 个星号。
输入: N值输出:一行中N个星号#include<stdio.h>int main(){int a,i;scanf("%d",&a);for(i=1;i<=a;i++)printf("*");printf("\n");return 0;}【设计型】5.2 打印平行四边形输入图形的高 n ,输出如下例( n=5 )所示的图形 .*************************输入:整数n例如 5输出:由*组成的高为5的平行四边形#include<stdio.h>int main(){int i,j,num;scanf("%d",&num);for(i=0;i<num;i++){for(j=0;j<num;j++)printf("*");printf("\n");}return 0;}【设计型】5.3 编程计算编写程序,输入n的值,求 :1-1/2+1/3-1/4+1/5-1/6+1/7-...+1/n (保留四位小数)#include<stdio.h>int main(){double n,i,sum,k=1.0;scanf("%lf",&n);i=1,sum=0;while(i<=n){sum=sum+k/i;i++;k=-k;(用这个式子实现正负交替)}printf("sum=%.4lf\n",sum);return 0;}【设计型】5.4 分数序列有一个分数序列:...............,输入整数n,求出其前n项的和。
输出语句格式为:printf("sum=%16.10f\n",s);#include<stdio.h>int main(){int n,a,b,i,temp;double sum;scanf("%d",&n);i=1,sum=0,a=2,b=1;while(i<=n){sum=sum+a*1.0/b;temp=a;a=a+b;b=temp;(几个式子实现数值的变换)i++;}printf("sum=%16.10f\n",sum);return 0;}【设计型】5.5 求e的值编写程序,从键盘输入整数 n , 求 e 的值 . e=1+1/1!+1/2!+1/3!+..+1/n! 注意:用 double 型数据计算输出语句:printf("sum=%16.10f\n",sum);#include<stdio.h>int main(){int n,i;double sum,jc;scanf("%d",&n);i=1,sum=1.0 jc=1.0;while(i<=n){jc=jc*i;sum=sum+1.0/jc;i++;}printf("sum=%16.10f\n",sum);return 0;}【设计型】5.6 最大公约数输入两个正整数m和n,求它们的最大公约数和最小公倍数比如,输入m和n的值分别为14和21,则最大公约数为7,最小公倍数为42。
2022年中国石油大学(华东)公共课《C语言》科目期末试卷A(有答案)
2022年中国石油大学(华东)公共课《C语言》科目期末试卷A(有答案)一、填空题1、请读程序段:unsigned a=16;printf("%d,%d,%d\n",a>>2,a=a>>2,a);以上程序段的输出结果是_______。
2、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是3、结构化程序由________、________ 、________ 3种基本结构组成。
4、若x和y都是double型变量,且x的初值为3.0,y的初值为2.0,则表达式.pow (y,fabs(x))的值为_______5、若有定义语句:ints=6;则表达式s%2+(s+1)%2的值为_______6、定义语句int*f();int(*f)();的含义分别为_______和_______。
7、下面程序段中循环体的执行次数是_______。
a=10;b=0;do{b+=2;a-=2+b;}while(a>=0);8、假设变量a、b和c均为整型,以下语句借助中间变量t把a、b和c中的值进行交换,即把b中的值给a,把c中的值给b,把a中的值给c。
例如:交换前,a=10、b=20、c=30;交换后,a=20、b=30、c=10。
请填空。
_______;a=b;b=c;_______;9、设有如下结构体说明:{int a;float b;struct ST*c;doublex[3];}st1;请填空,完成以下对数组s的定义,使其每个元素均为上述结构体类型。
_______10、下面程序wdm的运行结果是_______。
int i,x[10]={2,3,0,3,0,2,3,2,1,3},y[4]={0};for(i=0;i<10;i++)y[x[i]]++;printf("%d\n",y[3]);二、选择题11、设有说明语句:char w;intx;float y;double z;则表达式w*x+z-y值的数据类型为()。
c程序设计期末考试试题及答案
c程序设计期末考试试题及答案一、选择题(每题2分,共20分)1. 下面哪个选项是C语言中的关键字?A. intB. floatC. stringD. array答案:A2. C语言中,下列哪个运算符用于比较两个值是否相等?A. ==B. =C. !=D. %答案:A3. 在C语言中,以下哪个函数用于将字符串转换为浮点数?A. atoi()B. atof()C. itoa()D. sprintf()答案:B4. 下列哪个选项是正确的C语言变量声明?A. int num = 10;B. int num = "10";C. int num = '10';D. int num = 10.0;答案:A5. C语言中,以下哪个语句用于循环执行代码块?A. forB. whileC. ifD. switch答案:A6. 在C语言中,以下哪个函数用于计算数组中元素的总和?A. sum()B. count()C. average()D. max()答案:A7. 下列哪个选项是C语言中正确的注释格式?A. // 这是注释B. /* 这是注释 */C. //* 这是注释 */D. /* 这是注释答案:A8. 在C语言中,如何定义一个指向整数的指针?A. int *p;B. int *p = 0;C. int *p = 10;D. int p = 10;答案:A9. 在C语言中,以下哪个选项是正确的函数定义?A. int function() {}B. int function() { return 0; }C. int function() { return; }D. int function() { return 1; }答案:B10. 下列哪个选项是C语言中正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, WorldD. 'Hello, World'答案:A二、填空题(每题3分,共15分)1. 在C语言中,使用________运算符可以交换两个变量的值。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《C语言程序设计》期末复习题一、选择题1.能将高级语言编写的源程序转换成目标程序的是()A.链接程序 B. 解释程序 C. 编译程序 D.编辑程序2.设a为整型变量,则不能正确表达数学关系10<a<15的C语言表达式是()。
A. 10<a<15B. a==11||a==12||a==13||a==14C. a>10&&a<15D.!(a<=10)&&!(a>=15)3.当调用函数时,实参是一个数组名,则向函数传送的是( )。
A. 数组的长度B. 数组的首地址C. 数组每一个元素的地址D. 数组每个元素中的值4.执行下面的程序段后,k的值是()int k=1,n=325;do { k*=n%10;n/=10;}while(n);A. 3B. 30C. 523D. 3255.若有以下数组说明,则i=6;a[a[i]]元素数值是()。
int a[12]={1,4,7,10,2,5,8,11,3,6,9,12};A.3B.8C.6D.56.若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是()A. for(i=1,p=1;i<=5;i++) p*=i;B. for(i=1;i<=5;i++){ p=1; p*=i;}C. i=1;p=1;while(i<=5){p*=i; i++;}D. i=1;p=1;do{p*=i; i++; }while(i<=5);7.若有:int a[][3]={{1,2,3},{4,5},{6,7},{8}}; 则数组a的第一维的大小为: ( ) A. 12 B. 3 C. 4 D.无确定值8.设有如下程序段,则执行p=s;语句后,以下叙述正确的是( )。
char s[20]= “Bejing”,*p;p=s;A.可以用*p表示s[0]B.s数组中元素的个数和p所指字符串长度相等C.s和p都是指针变量D.数组s中的内容和指针变量p中的内容相等9.以下正确的函数定义是( )。
A.double sum(int x, int y) B.double sum (int x,y){ z=x+y ; return z ; } { int z ; return z ;}C.sum (x,y) D.double sum (int x, int y){ int x, y ; double z ; { double z ;z=x+y ; return z ; } z=x+y ; return z ; }10.已知学生信息描述为struct student{int no;char name[20];char sex;struct{int year; int month; int day; }birth;};struct student s;设变量s中的“生日”应是“1984年11月11日”,下列对“生日”的正确赋值方式是()。
A. year=1984;month=11;day=11;B. birth.year=1984;birth.month=11;birth.day=11;C. s.year=1984;s.month=11;s.day=11;D. s.birth.year=1984;s.birth.month=11;s.birth.day=11;11. 下列数据中,为字符串常量的是()。
A. ′A′B. How do you do.C. "A"D.$abc12.以下运算符中,优先级最高的运算符是()。
A. ||B. %C. !D.==13.执行以下程序段后,输出结果和a的值是()。
int a=10;printf("%d",++a);A.10和10B.10和11C.11和10D.11和1114. 有定义语句:int x,y;若要通过scanf("%d%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,正确的是()。
A. 11 12<回车>B. 11,<空格>12<回车>C. 11,12<回车>D. 11,<回车> 12<回车>15. 下列定义数组的语句中,正确的是( )。
A. int x[0..10];B. int x[ ];C. #define N 10D. int N=10;int x[N]; int x[N];16. 若已定义x为int类型变量,下列语句中说明指针变量p的正确语句是()。
A. int p=&x;B.int *p=x;C. *p=*x;D. int *p=&x;17. 以下不是无限循环的语句为()。
A. for(y=0,x=1;x>++y;x=i++) i=x;B. for(;;x++=i);C. while(1){x++;}D. for(i=10;;i--) sum+=i;18. 有以下函数,函数的功能是( )。
int fun(char *x, char *y){ int n=0;while ( (*x==*y) && *x!='\0' ) {x++; y++; n++;}return n ;}A.将y所指字符串赋给x所指存储空间B.查找x和y所指字符串中是否有'\0'C.统计x和y所指字符串中最前面连续相同的字符个数D.统计x和y所指字符串中相同的字符个数19. 语言中,定义结构体的保留字是()。
A.unionB.structC.enumD.typedef20. 应用缓冲文件系统对文件进行读写操作,关闭文件的函数名为()。
A.openB.fopenC.closeD.fclose21. 在C语言中,if语句后的一对原括号中,用以决定分支的流程的表达式()。
A.只能用逻辑表达式B.只能用关系表达式C.只能用逻辑表达式或关系表达式D.可用任意表达式22. 假设所有变量均为整型,表达式:a=2,b=5,a>b?a++:b++,a+b的值是()。
A.7B.8C.9D.223. 若有如下代码,则a的值为()。
int a=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;A.1B.2C.3D.不一定24.假定所有变量均已正确定义,下列程序段运行后x的值是()。
k1=1;k2=2;k3=3;x=15;if(!k1) x--;else if(k2) x=4;else x=3;A.14B.4C.15D.325. 以下for循环的执行次数是 for(x=0,y=0;(y=123)&&(x<4);x++);()。
A.是无限循环B.循环次数不定C.4次D.3次26. 以下运算符中,优先级最高的运算符是()。
A. ||B. %C. !D.==27. 有定义语句:int x,y;若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,错误的是()。
A. 11 12<回车>B. 11,<空格>12<回车>C. 11,12<回车>D. 11,<回车> 12<回车>28. char a[10];不能将字符串"abc"存储在数组中的是()。
A.strcpy(a,"abc");B.a[0]=0;strcat(a,"abc");C.a="abc";D.int i;for(i=0;i<3;i++)a[i]=i+97;a[i]=0;29. 以下程序段 char *alp[]={"ABC","DEF","GHI"}; int j; puts(alp[1]);的输出结果是()。
A.AB.BC.DD.DEF30. 若执行fopen函数时发生错误,则函数的返回值是()。
A.地址值B.0C.1D.EOF二、读程序,写出程序的运行结果1.以下程序的输出结果是()。
#include <stdio.h>void main(){ int x=0,y=1,a=0,b=0;switch(x){case 0:switch(y){case 0: a++;case 1: b++;}case 1:switch(y){case 0: a=a+5;case 1: b=b+5;}}printf(“a=%d,b=%d\n”,a,b);}2.以下程序的输出结果是()#include <stdio.h>void main(){ int x=-5,y=2,z=1;if(x<y)if(y<0) z=0;else z=z+1;printf(“%d\n”,z);}3.以下程序的输出结果是:()#include"stdio.h"void main( ){int j,k, x[4][4],y[4][4];for(j=0;j<4;j++)for(k=0;k<4;k++)x[j][k]=j+k;for(j=0;j<4;j++)for(k=0;k<4;k++)y[k][j]=x[j][k];for(j=0;j<4;j++){ for(k=0;k<4;k++)printf("%d ",y[j][k]);printf("\n");}}4.以下程序的输出结果是:()#include <stdio.h>void main(){ int i,j;for(i=j=1;j<10;j++,i++){if(j==5)break;if(i%2)continue;printf("i=%d,j=%d\n",i,j);}}5.若有以下程序段,则输出结果是( )。
#include <stdio.h>void main(){char s2[]="\"c:\\abc.dat\"";printf(“%s\n”,s2); }6.以下程序的输出结果是:()#include <stdio.h>int fun( int n){ int s;if(n==1||n==0) s=5;else s=n+fun(n-1);return s;}void main(){printf("%ld\n", fun(3));}7.以下程序的输出结果是:()void main(){ int a[]={2,4,6,8,10};int y=120,x,*p;p=&a[1];for(x=0;x<3;x++) y+=*(p+x);printf("y=%d\n",y);}8.以下程序的输出结果是:()#include<stdio.h>void sub(int s[],int y){static int t=3;y=s[t];t--;}void main(){int a[]={1,2,3,4},i,x=0;for(i=0; i<4; i++){sub(a,x);printf(“%d”,x);}printf(“\n”);}9. 以下程序段运行后x的值是:()k1=1;k2=0;k3=3;x=15;if(!k1) x--;else if(k2) x=4;else x=3;10. 以下程序的输出结果是:()#include <stdio.h>main(){ int s=0, n;for (n=0; n<4; n++){ switch(n){ default: s+=5;case 1: s+=1;case 2: s+=2;case 3: s+=3;}}printf("%d\n", s);}11. 以下程序段运行后sum的值是:()int a[3][3]={{3,5},{8,9},{12,35}},i,sum=0;for(i=0;i<3;i++) sum+=a[i][2-i];12. 以下程序的输出结果是:()#include <stdio.h>int main(){int i=10,n=0,m=0;do{if(i%2!=0)n=n+i;elsem=m+i;i--;}while(i>=0);printf("n=%d,m=%d\n",n,m);return 0;}13. 以下程序的输出结果是:()#include <stdio.h>void main(){int a,b;for(a=1,b=1;a<=100;a++){if(b>20) break;if(b%4==1){b=b+4;continue;}b=b-5;}printf("b=%d\n",b);}14. 以下程序的输出结果是:()#include <stdio.h>funa(int a){ int b=0;static int c=4;a=c++,b++;return(a);}main(){ int a=2,i,k;for(i=0;i<2;i++)k=funa(a++);printf("%d\n",k);}15. 以下程序的输出结果是:()#include <stdio.h>void main(void){char a[]="ABCDEFGH",b[]="abcDefGh";char *p1,*p2;int k;p1=a; p2=b;for(k=0;k<=7;k++)if (*(p1+k)==*(p2+k))printf("%c",*(p1+k));printf("\n");16. 以下程序的输出结果是:()#include <stdio.h>#include <string.h>int main(){int i;char str1[30]="abc",str2[3][5]={"defg","hij\0","klm"};for(i=1;i<3;i++)strcat(str1,str2[i]);puts(str1);return 0;}17. 以下程序的输出结果是:()void main(){int m=7,n=4;float a=38.4,b=6.4,x;x=m/2+n*a/b+1/2;printf("%.4f\n",x);}18. 以下程序段的输出结果是:()int a=3,b=2,c=1;if(a>b>c)a=b;else a=c;printf("%d\n",a);19. 以下程序的输出结果是:()int func(int x,int y){ return(x+y);}void main()int a=1,b=2,c=3,d=4,e=5;printf("%d\n",func((a+b,b+c,c+a),(d+e))); }20.下列程序执行后的输出结果是()。