四川大学c语言期末试题(版)
四川大学C语言题库

输入十进制数,输出该数的十六进制数。
#include <>int main(void){int n;printf("input:");scanf("%d", &n);printf("output:%X\n", n);return 0;输入实型数据a,b,然后输出a、b的值。
#include <>int main(void){double number1, number2;printf("please input two numbers:");scanf("%lf,%lf", &number1, &number2);printf("Output:\n");printf("a=%f,b=%f\n", number1, number2);return 0;输入一个小写英文字母,第一输出它及其ASCII码,然后输出其对应的大写字母及其ASCII 码int main(void){char ch;printf("Input a lowercase letter:");ch = getchar();printf("Output:\n");printf("%c(%d)\n", ch, ch);printf("%c(%d)\n", ch - 32, ch - 32);return 0;从键盘输入一个正三角形的边长(整型),计算该三角形的面积和周长#include <>int main(void){int side;printf("Input a side of triangle: ");scanf("%d", &side);printf("Output:\n");printf("The area of triangle is %.2f, the circle of triangle is %.0f.\n", * side *side * sqrt(3) / 4, * side);return 0;}从键盘读入一个任意字符,输出该字符ASCII的十六进制小写值#include <>int main(void){char ch;printf("Input a character: ");ch = getchar();printf("Output:%x\n", ch);return 0;从键盘输入一个正方体的边长(整型),计算该正方体的体积和表面积#include <>int main(void){int side;printf("Input a side of cube: ");scanf("%d", &side);printf("Output:\nThe volume of cube is %d, the surface area of cube is %d.\n", side * side * side, 6 * side * side);return 0;#include <>从键盘输入X,Y,Z的值#include <>int main(void){int float_z;double float_x, float_y;printf("please input x,y,z:");scanf("%lf,%lf,%d", &float_x, &float_y, &float_z);printf("Output:");printf("%f\n", float_x + float_z % 3 * (int)(float_x + float_y) % 2 / 4);return 0;}从键盘输入一日期,年月日之间以“-”分隔,并以一样的形式但以“/”作分隔符输出。
2013年C语言知识学习期末试题(A)

四川大学期末考试试题(A卷)(2013——2014 学年第一学期)课程号:303066030课序号:课程名称:计算机基础及C程序设计语言任课教师:刘亚梅刘洋任瑞玲曾晓东余勤罗伟王茂宁王忠邓丽华成绩:适用专业年级:2012级学生人数:印题份数:学号:姓名:注:1试题字迹务必清晰,书写工整。
本题8 页,本页为第 1 页2 题间不留空,一般应题卷分开教务处试题编号:学号:姓名本题8 页,本页为第 2 页教务处试题编号:学号:姓名以下叙述中正确的是______。
A)在给s1和s2数组置初值时,系统会自动添加字符串结束符,故长度都为3B)由于s1数组中没有字符串结束符,长度不能确定;但s2数组中字符串长度为3C)由于s1和s2数组中都没有字符串结束符,故长度都不能确定D)以上说法都不对25.若有定义:int a=0, *p=&a;,则语句printf("%d\n",*p);的输出结果是______。
A)随机值B)0 C)a的地址D)p的地址26.下面程序段,输出*的个数是char *s="\tx++\016yz";for (;*s!='\0';s++) printf("*");A)4 B)9 C)7 D)1127.若有以下说明,且0≤i≤10,则对数组元素的错误引用是_______。
int a[ ]={1,2,3,4,5,6,7,8,9,10}, *p = a, i;A)p[i] B)a[p-a+i] C)p+i D)*(&a[i])本题8 页,本页为第 3 页教务处试题编号:学号:姓名void main(){int a[]={2,4,6,8,10}, y=0, x, *p;p=&a[1];for(x= 1; x<3; x++)y += p[x];printf("%d\n",y);}A)10 B)11 C)14 D)15 30.以下程序运行后的输出结果是______。
大学生期末c语言试题及答案

大学生期末c语言试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A2. 下列关于数组的描述中,正确的是:A. 数组必须在定义时初始化B. 数组的元素类型必须一致C. 数组的下标可以是实数D. 数组的下标可以是负数答案:B3. C语言中,用于文件操作的库函数位于哪个头文件中?A. stdio.hB. math.hC. string.hD. stdlib.h答案:A4. 下列哪个运算符不能用于赋值?A. =B. +=C. *=D. %答案:D5. C语言中,用于定义一个函数的关键字是:A. functionB. defineC. defD. void答案:B6. 下列关于指针的描述中,错误的是:A. 指针可以存储地址B. 指针可以存储值C. 指针可以作为函数的参数D. 指针可以作为函数的返回值答案:B7. C语言中,用于定义一个宏的预处理指令是:A. #defineB. #includeC. #pragmaD. #if答案:A8. 下列关于循环的描述中,正确的是:A. for循环可以没有初始化表达式B. while循环可以嵌套C. do-while循环至少执行一次D. 所有循环都可以使用break语句退出答案:C9. C语言中,用于定义一个枚举类型的关键字是:A. enumB. structC. unionD. typedef答案:A10. 下列关于函数的描述中,错误的是:A. 函数可以没有返回值B. 函数可以有多个返回值C. 函数可以递归调用D. 函数可以嵌套定义答案:D二、填空题(每题2分,共20分)1. 在C语言中,字符'A'的ASCII码值是______。
答案:652. 若int a = 10; int b = 20; 则表达式a++ + b的结果是______。
c语言期末复习试题(附答案)

试卷编号:11201所属语言:C语言试卷方案:C语言期末考试试卷总分:100分共有题型:4种一、单项选择共30题(共计60分)第1题(2.0分)设有定义:intk=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是(A). A:k++B:k+=1C:++kD:k+1第2题(2.0分)已知inti=5,执行语句i+=++i后,i的值是(C).A:10B:11C:12D:A、B、C都不对第3题(2.0分)以下程序的功能是:给r输入数据后,计算半径为r的圆面积s.程序在编译时出错. #include<stdio.h>voidmain()/*Beginning*/{intr;floats;scanf("%d",&r);s=p*r*r;printf("s=%f\n",s);出错的原因是(D).A:注释语句书写位置错误B:存放圆半径的变量r不应该定义为整型C:输出语句中格式描述符非法D:计算圆面积的赋值语句中使用了非法变量第4题(2.0分)"\\\″ABC\″\\″的长度是(B).A:11B:7C:5D:3第5题(2.0分)已知intj,i=1;,执行语句j=–i++;后,j的值是(C).A:1B:2C:-1D:-2第6题(2.0分)有以下程序:#include<stdio.h>voidmain(){ints=0,a=1,n;scanf("%d",&n);do{s+=1;a=a–2;}while(a!=n);printf("%d\n",s);}若要使程序的输出值为2,则应该从键盘输入给n的值是(B). A:-1B:-3C:-5D:0第7题(2.0分)执行以下程序后,输出的结果是(D).#include<stdio.h>voidmain(){inty=10;do{y––;}while(––y);printf("%d\n",y––);}A:-1B:1C:8D:0第8题(2.0分)以下循环体的执行次数是(C).#include<stdio.h>voidmain(){inti,j;for(i=0,j=1;i<=j+1;i+=2,j––)printf("%d\n",i);}A:3B:2C:1D:0第9题(2.0分)有以下程序段:intk=0;while(k=1)k++;while循环执行的次数是(A).A:无限次B:有语法错误,不能执行C:1次也不执行D:执行1次第10题(2.0分)有以下程序#include<stdio.h>voidmain(){intm,n,p;scanf("m=%dn=%dp=%d",&m,&n,&p);printf("%d%d%d\n",m,n,p);}若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789,则正确的输入是(A). A:m=123n=456p=789B:m=123n=456p=789C:m=123,n=456,p=789D:123456789第11题(2.0分)设变量已正确定义,以下能正确计算f=n!的程序段是(D)A:f=0;for(i=1;i<=n;i++)f*=i;B:f=1;for(i=1;i<n;i++)f*=i;C:f=1;for(i=n;i>1;i++)f*=i;D:f=1;for(i=n;i>=2;i––)f*=i;第12题(2.0分)在下列程序中,没有构成死循环的程序段是(B).A:inti=100;while(1){i=i%100+1;if(i>100)break;}B:intk=1000;do{++k;}while(k>=10000);C:for(;;);D:ints=36;while(s);--s;第13题(2.0分)有如下程序:#include<stdio.h>voidmain(){intn=9;while(n>6){n--;printf("%d",n);}}该程序段的输出结果是(B).A:987B:876C:8765D:9876第14题(2.0分)以下程序的输出结果是(D).#include<stdio.h>voidmain(){intx=10,y=10,i;for(i=0;x>8;y=++i)printf("%d%d",x––,y);}A:10192B:9876C:10990D:101091第15题(2.0分)有如下程序:#include<stdio.h>voidmain(){intn[5]={0,0,0},i,k=2;for(i=0;i<k;i++){printf("%d\n",n[k]);}}该程序的输出结果是(D).A:不确定的值B:2C:1D:0第16题(2.0分)下列程序执行后的输出结果是(A).#include<stdio.h>voidmain(){chararr[2][4];strcpy(arr,"you");strcpy(arr[1],"me"); arr[0][3]='&';printf("%s\n",arr);}A:you&meB:youC:meD:err第17题(2.0分)以下程序的输出结果是(C).#include<stdio.h>voidmain(){inti,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)printf("%d,",x[i][2–i]); }A:1,5,9,B:1,4,7,C:3,5,7,D:3,6,9,第18题(2.0分)以下数组定义中不正确的是(D).A:inta[2][3];B:intb[][3]={0,1,2,3};C:intc[100][100]={0};D:intd[3][]={{1,2},{1,2,3},{1,2,3,4}};第19题(2.0分)以下能正确定义数组并正确赋初值的语句是(D). A:intN=5,b[N][N];B:inta[1][2]={{1},{3}};C:intc[2][]={{1,2},{3,4}};D:intd[3][2]={{1,2},{3,4}};第20题(2.0分)有以下程序:inta=4;intf(intn){intt=0;staticinta=5;if(n%2){inta=6;t+=a++;}else{inta=7;t+=a++;}returnt+a++;}main(){ints=a,i=0;for(;i<2;i++)s+=f(i);printf("d\n",s);}程序运行后的输出结果是(B)A:24B:28C:32D:36第21题(2.0分)以下正确的函数定义形式为(A)A:doublefun(intx,inty)B:doublefun(intx;y)C:doublefun(intx;inty)D:doublefun(intx,y)第22题(2.0分)C语言规定,函数返回值的类型是由(D)A:return语句中的表达式类型所决定的B:调用该函数时的主调函数类型所决定的C:调用该函数时系统临时决定的D:在定义该函数时所指定的函数类型所决定的第23题(2.0分)有以下程序:输出结果是()(注:5353)voidswap1(intc0[],intc1[]){intt;t=c0[0];c0[0]=c1[0];c1[0]=t;}voidswap2(int*c0,int*c1){intt;t=*c0;*c0=*c1;*c1=t;}main(){inta[2]={3,5},b[2]={3,5};swap1(a,a+1);swap2(&b[0],&b[1]);printf("%d%d%d%d\n",a[0],a[1],b[0],b[1]); }A:3553B:5335C:3535D:5353第24题(2.0分)以下程序的输出结果是(A).amovep(int*p,int(*a)[3],intn){inti,j;for(i=0;i<n;i++)for(j=0;j<n;j++){*p=a[i][j];p++;}}main(){int*p,a[3][3]={{1,3,5},{2,4,6}};p=(int*)malloc(100);amovep(p,a,3);printf("%d%d\n",p[2],p[5]);free(p);}A)56B)25C)34D)程序错误第25题(2.0分)有以下函数:fun(char*a,char*b){while((*a!='\0')&&(*b!='\0')&&(*a==*b)){a++;b++;}return(*a–*b);}该函数的功能是(D).A:计算a和b所指字符串的长度之差B:将b所指字符串复制到a所指字符串中C:将b所指字符串连接到a所指字符串后面D:比较a和b所指字符串的大小第26题(2.0分)有以下程序:fun(charp[][10]){intn=0,i;for(i=0;i<7;i++)if(p[i][0]=='T')n++;returnn;}main(){charstr[][10]={"Mon","Tue","Wed","Thu","Fri","Sat","Sun"}; printf("%d\n",fun(str));}程序执行后的输出结果是(B).A:1B:2C:3D:0第27题(2.0分)有以下程序:main(){charstr[][10]={"China","Beijing"},*p=str;printf("%s\n",p+10);}程序运行后的输出结果是(B).A:ChinaB:BeijingC:ngD:ing第28题(2.0分)有以下程序:#definef(x)(x*x)main(){inti1,i2;i1=f(8)/f(4)i2=f(4+4)/f(2+2)printf("%d,%d\n",i1,i2);}程序运行后的输出结果是(C).A:64,28B:4,4C:4,3D:64,64第29题(2.0分)有以下程序:结果是(A)voidchange(intk[]){k[0]=k[5];}main(){intx[10]={1,2,3,4,5,6,7,8,9,10},n=0;while(n<=4){change(&x[n]);n++;}for(n=0;n<5;n++)printf("%d",x[n]);printf("\n");}A)678910B)13579C)12345D)62345A:678910B:13579C:12345D:62345第30题(2.0分)在以下程序中,能够通过调用函数fun(),使main()函数中的指针变量p指向一个合法的整型单元的是(C). A:main()int*p;fun(p);…}intfun(int*p){ints;p=&s;}B:main(){int*p;fun(&p);…}intfun(int**p){ints;*p=&s;}C:#include<stdlib.h>main(){int*p;fun(&p);…}intfun(int**p){*p=(int*)malloc(2);}…D:#include<stdlib.h>main(){int*p;fun(p);…}intfun(int*p){p=(int*)malloc(sizeof(int));}二、程序填空共1题(共计10分)第1题(10.0分)/*------------------------------------------------------- 【程序填空】--------------------------------------------------------- 功能:计算平均成绩并统计90分以上人数。
大学c语言期末考试题及答案

大学c语言期末考试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述中,错误的是:A. C语言是一种高级语言B. C语言的执行方式是编译执行C. C语言支持面向对象编程D. C语言具有丰富的库函数答案:C2. 在C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A3. 下列关于数组的描述中,正确的是:A. 数组必须在定义时初始化B. 数组的下标从1开始C. 数组可以存储不同类型的数据D. 数组的大小在定义后不能改变答案:D4. 在C语言中,用于文件操作的库函数是:A. printfC. fopenD. getchar答案:C5. 下列关于指针的描述中,错误的是:A. 指针可以存储变量的地址B. 指针可以作为函数的参数C. 指针可以被赋值为NULLD. 指针可以存储函数的地址答案:D6. 在C语言中,用于定义一个函数的关键字是:A. functionB. defC. voidD. int答案:B7. 下列关于循环的描述中,错误的是:A. for循环可以嵌套使用B. while循环可以和break语句一起使用C. do-while循环至少执行一次D. 循环体内不能使用continue语句答案:D8. 在C语言中,用于定义一个宏的预处理命令是:B. #includeC. #pragmaD. #import答案:A9. 下列关于函数的描述中,错误的是:A. 函数可以有返回值B. 函数可以没有参数C. 函数可以没有返回值D. 函数可以没有定义答案:D10. 在C语言中,用于定义一个枚举类型的关键字是:A. enumB. structC. unionD. typedef答案:A二、填空题(每题2分,共10分)1. C语言中,用于定义一个整型变量的关键字是____。
答案:int2. 在C语言中,表示逻辑与运算的运算符是____。
答案:&&3. 当需要在C语言中表示一个常量时,可以使用关键字____。
完整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语言末期考试模拟考题

}
运行结果是:
注:输出格式控制中的h表示输出短整形(16位)。
4.
#include<>
int main(void)
{
int d=200;
int *p1=&d, *p2=p1;
printf("%d\n", *p2**p1);
return 0;
}
运行结果是:40000
四、程序填空题(每空2分,共20分)
return 0;
}
五、编程题(共25分)
1.请设计一个函数char *StrCat(char dest[ ], char source[ ]) 以完成将源字符串source连接到目的字符串dest末尾的工作,并设计int main(void)测试程序,要求通过StrCat()函数的返回值和实参数组获取连接后的字符串,并输出该字符串。
1.为了判断两个字符串s1与s2是否相等,应当使用C
A)if( s1 = = s2 )B)if( s1 = s2 )
C)if( strcmp( s1, s2 ) )D)if( strcmp( s1, s2 ) = 0 )
2.以下程序的输出结果是A
#include <>
int a;
int main(void)
int main(void)
{
int i;
for(i=0;i<5;i++)
{
switch(i%2)
{
case 0:
printf("ห้องสมุดไป่ตู้");
break;
case 1:
printf("1");
四川大学C语言期末试题

C 循环体只执行一次 D 是无限循环 3.下列说法不正确的是( )。 A 主函数main中定义的变量在整个文件或程序中有效 B 不同函数中,可以使用相同名字的变量 C 形式参数是局部变量 D 在一个函数内部,可以在复合语句中定义变量,这些变量只在本复 合语句中有效 4.具有相同类型的指针类型变量p与数组a,不能进行的操作是( )。 A p=a; B *p=a[0]; C p=&a[0]; D p=&a; 5.关于return语句,下列正确的说法是( )。 A 可以在同一函数中出现多次 B 必须在每个函数中出现 C 只能在除主函数之外的函数中出现一次 D 在主函数中不能出现 6.数组名作为实参传递给形参时,数组名被处理为( )。 A 该数组的长度 B 该数组的元素个数 C 该数组的首地址 D 该数组中各元素的值 7.要打开一个已存在的非空文件"file"用于修改,选择正确的语句( )。 A fp=fopen("file","r"); B fp=fopen("file","w"); C fp=fopen("file","r+"); D fp=fopen("file","w+"); 8. 定义结构体的关键字是( ) A. union B. enum C.struct D.typedef 9. 以下程序的输出结果是( ) #define f(x) x*x int main(void) { int a=6,b=2,c; c=f(a)/f(b); printf(“%d\n”,c); } A. 9 B. 6 C. 36 D. 18五、填空题(本大题共来自0小题,每空2分,共20分)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
A)int x[][3]={0,1,2,3};
B)int x[2][3]={{1,2}, {3,4}, {5,6}};
C)int x[][3]={{1,2,3},{4,5,6}};
D)int x[2][3]= {1,2,3,4,5,6};
10.在C语言中,函数返回值的类型最终取决于。
{
double a = fun1(x), b = fun1(y);
return a + b;
}
int main(void)
{
int w = fun2(1.3, 2.0);
printf("%d\n", w);
return 0;
}
运行结果是:
5.有以下程序:
#include <stdio.h>
int f(int n)
A)int a=b=16;B)char c=97;
C)float x=x+1.8;D)double x=1.23E2.0
6.设有定义:“int a=1,b=6,c=8;”,则以下选项中值为0的表达式是。
A)(!a==1)&&(!b==0)B)(a<b)&& !c || !0
C)a && bD)a || b
7.下列叙述正确的是D。
A)break语句只能用于switch语句
B)break语句只能用于循环语句
C)break语句必须与switch语句中的case配对
D)break语句可用于switch语句和循环语句中
8.在以下给出的表达式中,与while(E)中的“(E)”不等价的表达式是C。
A)(E!=0)B)(E>0 || E<0)C)(E==0)D)(!E==0)
3.已知int a=3,a的地址为1008,则&a=。
4.设有定义:“FILE *fp;”,请将以下打开文件的语句补充完整,以便可以向文本文件readme.txt的最后续写内容。
fp = fopen)("readme.txt", "");
5.已有定义:“int *p;”,请写出完整的语句,利用malloc函数使p指向一个整型的动态存储单元。
for (i = 0; i < N; i++)
scanf("%d",[4]);/*输入a[i] *//
invert(a, 0, N - 1);
for (i = 0; i < N; i++)
printf("%d ", a[i]);
printf("\n");
return 0;
}
3.下面的程序通过函数average计算数组中各元素的平均值,将程序补充完整。
A)改变函数形参的值,不会改变对应实参的值
B)函数可以返回地址值
C)可以给指针变量赋一个整数作为地址值
D)函数的形参可为指针类型
1.已定义“char ch=6;int i=6,j;”,执行“j=ch || i++”以后,i的值为。
2.设有定义语句:“int a[][8]={{0},{1},{2}};”,则数组元素a[1][2]的值为。
#include<stdio.h>
#define N 10
void invert(int s[], int i, int j)
{
if (i < j)
{
int t= s[i];
s[i] = s[j];
s[j] = t;
invert(s,[3],j-1);
}
}
int main(void)
{
int a[N], i;
{
int i = -1;
do printf("%d", i); while (++i);
printf("%d\n", i);
return 0;
}
运行结果是:
4.有以下程序:
#include <stdio.h>
double fun1(double a) { return a * a; }
int fun2(double x, double y)
D) data可以作为函数的实参
14.以下叙述中正大写字母表示
C)宏替换不占用程序的运行时间
D)前面都是错语的
15.设fp为指向某二进制文件的指针,且已读到此文件末尾,则函数feof(fp)的返回值为。
A)EOFB)1C)0D)NULL
16.以下叙述中错误的是。
float mean;
mean = average(a, 5);
printf("mean=%f\n", mean);
return 0;
}
1.输入一行字符,统计其中有多少个单词,单词之间用空格分隔开。
2.编程实现从键盘上输入一个字符串,把此字符串中的小写字母转换成大写字母,输出到文件test.txt中,然后从该文件读出字符串并显示出来。
A)函数定义时的函数首部所说明的函数类型
B)return语句中表达式值的类型
C)调用函数时的实参的类型
D)函数定义时形参的类型
11.设已有定义:“float a;”,则以下对指针变量p进行定义且赋初值的语句中正确的是。
A)float *p = 1068;B)int *p= (int)a;
C)float p=&a;D)float *p=&a;
6.声明外部变量的关键字是extrun。
7.int类型的变量的值只能是所指定的若干名字之一。
1.有以下程序:
#include <stdio.h>
int main(void)
{
char al = 'M', a2 = 'm', a3 = 'u';
printf("%c\n", (al, a2, a3));
union dt
{
short int a;
char b;
double c;
} data;
以下叙述中错误的是。
A) data的每个成员起始地址都相同
B)变量data所占的内存字节数与成员c所占字节数相等
C)程序段“data.a=6;printf("%f\n ",data.c);”输出结果为6.000000
A)字母B)减号C)数字字符D)下划线
3.下列定义变量的语句中错误的是C。
A)int _if;B)double If;C)char forchD)float x&;
4.以下选项中可作为C语言合法常量的是A。
A)-80B)-0819C)-1el.0D)-168.0e
5.以下能正确定义且赋初值的语句是。
int main(void)
{
int a, b, c, t1, t;
scanf("%d%d%d", &a, &b, &c);
t = a < b ?[1];
t = c < t ?[2];
printf("%d\n", t);
return 0;
}
2.以下程序调用invert函数按逆序重新放置a数组中元素的值。a数组中元素的值在main函数中读入。将程序补充完整。
1.对于一个正常运行的C程序,以下叙述中正确的是A。
A)程序的执行总是从main函数开始,在main函数结束
B)程序的执行是从程序的第一个函数开始,在main函数结束
C)程序的执行是从main函数开始,在程序的最后一个函数中结束
D)程序的执行是从程序的第一个函数开始,在程序的最后一个函数中结束
2.按照C语言规定的用户标识符命名规则,不能出现在标识符中的是B。
{
if (n == 1) return 1;
else return n + f(n - 1);
}
int main(void)
{
printf("%d\n", f(5));
return 0;
}
运行结果是:
6.有以下程序:
#include <stdio.h>
void point(char *p){ p += 5; }
12.若有说明语句:“float *p,a;”,则能通过scanf语句正确给输入项读入数据的程序段是。
A)*p=&a; scanf("%f",p);B)*p=&a; scanf("%lf",p);
C)p=&a; scanf("%f",*p);D)p=&a; scanf("%f",p);
13.若有以下说明和定义:
int main(void)
{
char b[] = {'a', 'b', 'c', 'd', 'f', 'g'}, *p = b;
point(p);
printf("%c\n", *p);
return 0;
}
运行结果是:
1.以下程序的功能是:输出a、b、c三个变量中的最小值。将程序补充完整。
#include <stdio.h>
#include <stdio.h>
float average(int a[], int n)
{
int i;