C语言A卷
C语言期末--A卷大题答案

三、写出运行结果,并填写相应内存单元内容,内存单元地址和其内容均以16进制表示。
(20分)#include <stdio.h>#include <stdlib.h>#define N 6void select(char *item[], int n);void main(){char * a[] = {"say", "hi","to","him","for","me"};int i;select(a, N);for ( i = 0; i < N; i++);printf("%p\n", a[i-1]);for ( i = 0; i < N; i++)printf("%s\n", a[i]);}void select(char *item[], int n){int i, j, k;char *temp;for ( i = 0; i < n - 1; i++){k = i;for ( j = i + 1; j < n; j++)if (item[j] < item[k])k = j;if ( i != k){temp = item[k];item[k] = item[i];item[i] = temp;}}}当程序执行完int i;语句之后,已知地址0x00420024开始的单元具有以下内容地址内存单元内容00420024 6D 65 00 00 me..00420028 66 6F 72 00 for.0042002C 68 69 6D 00 him.00420030 74 6F 00 00 to..00420034 68 69 00 00 hi..………………..00420144 53 61 79 00 Say.并且a = 0x0012FF68, 请填充以下从0x0012FF68开始的内存单元内容:程序执行select(a, N);语句之前,地址内存单元内容0012FF68 44 01 42 000012FF6C 34 00 42 000012FF70 30 00 42 000012FF74 2C 00 42 000012FF78 28 00 42 000012FF7C 24 00 42 00程序执行select(a, N);语句之后;地址内存单元内容0012FF68 24 00 42 000012FF6C 28 00 42 000012FF70 2C 00 42 000012FF74 30 00 42 000012FF78 34 00 42 000012FF7C 44 01 42 00程序运行结果:00420144meforhimtohiSayPress any key to continue本题目,考核指针数组,进制,选择法排序,内存单元的表示,%p,%s输出,循环空语句,字符串比较,内存地址比较。
C语言试题(第二学期)A及答案

C语言试题(第二学期)A及答案重庆理工大学考试试卷考试科目:C语言试题(第二学期)A卷共4页班次姓名学号成绩一.选择填空(选择一个正确答案,将其对应字母填在横线上)(20分)1.一个C程序的执行是从B;A:子程序开始B:main函数开始C:第一个函数D:第一条语句2.C语言中,正确的字符常量是B;A:“C”B:‘\n’C:‘ABC’D:‘1234’3.若a是float型变量,b是char型变量,以下输入语句合法的是B;A:canf(“%6.2f%f”,&a,&b)B:canf(“%6.2f%c”,&a,&b)C:canf(“%6.2d%”,&a,&b)D:canf(“%6.2f%c”,a,b)4.TurboC语言中,int类型和long类型数据在内存中分别占B个字节;A:4,4B:2,4C:2,2D:2,35.intr=0123,表示是D数;A:十进制;B:字符;C:十六进制;D:八进制6.在if(条件)语句执行时,当条件为D时C语言认为是“真”;A:TRUE;B:.T.C:0D:非零值7.如果a[1]=--3,执行b[2]=++a[1];c[3]=a[1]++;b[2]和c[3]的值是;A:2,2;B:4,4;C:3,3;D:3,48.设inta、b、c;且a=10;b=4;a/=b;则表达式(a/bb+a:b-a)之值是C;A:0.5B:6;C:2;D:-29.对于int某p,arry[10];正确的赋值语句是__A;A:p=arry;B:某p=&arry;C:p=&arry;D:某p=&arry[9];10.设int某,a,b,c;计算表达式某=(a=4,b=16,c=32)后,某的值是C;A:4B:16C:32D:5211.对于inta[][3]={1,2,3,4,5,6,7,8,9,10}说明语句,且有:数据元素a[1][2]+a[3][1]的值为____D_____;A:15B:16C:8D:612.intn=97;witch(n/10-4){cae2:n=n+1;cae3:n=n某2;cae5:n=n-2;cae7:n=n+3;default:n=n/2;}n的正确结果值是__49______A:95B:96C:97D:98?13.已知inti=j=2;char某a="abcdefg",c;执行c=某(a=a+3);c的值是______C____。
C语言程序设计(A卷)

第 1 页 共 5 页一、单选题(每小题1分,共30 分)1. 若变量已正确定义,要求完成求6!的计算,不能完成操作的程序段是 。
A )for(i=1;i<=6;i++) {p=1;p*=i;}B )for(i=1,p=1;i<=6;i++) p*=i;C )i=1;p=1;while(i<=6) {p*=i;i++;}D )i=1;p=1;do {p*=i;i++;} while(i<=6);2. 以下程序的输出结果是 。
main(){ int a=2,b=-1,c=2; if(a<b) if(b<0) c++; else c++; else c--; printf("%d",c);}A )1B )4C )2D )3 3. 以下程序的输出结果是 。
main(){int x=0,a=0,b=0; switch(x) {case 0:b++; case 1:a++;break; case 2:a++;b++;}printf("a=%d,b=%d",a,b); }A )a=2,b=1B )a=1,b=1C )a=1,b=0D )a=2,b=2 4. 以下程序的输出结果是 。
main(){ int x=10,y=10,i;for(i=0;x>8;y=++i) printf("%d %d ",x--,y); }A )10 1 9 2B )9 8 7 6C )10 10 9 1D )10 9 9 0 5. 以下程序的输出结果是 。
main(){int s=0,i,x[][3]={1,2,3,4,5,6,7,8}; for(i=0;i<3;i++) s=s+x[i][2-i]; printf("%d",s); }A )6B )15C )36D )0 6.下面程序段执行后,a 的值是______。
C语言考试卷

欢迎阅读计算机语言(C 语言)考试卷(A 卷)系别:信管系 教师:熊回香 学生: 成绩:一、填空(17分)1.C 语言的基本数据类型有___________,__________和_________。
2.一个可执行的C 语言程序由_________构成,一个C 语言源程序由_______________构成,一个函数由______________构成。
3.表达式:10>5&&4||3<4-!10的值为____________。
4.若a=1,b=2,c=3,则执行语句:if(a>c); b=a;a=c;c=b;后,a=_______,5.6789.123 A a=b;b=c;c=a; B c=a;a=b;b=c;C a=b;b=a;D c=a;b=a;b=c;4.若a=3,b=5,c=7,则表达式 a>c||c>b-!0&&c= =b+a 的值为______。
A 不正确B 0C 2D 15.以下不正确的描述为______。
A 调用函数时,实参传递数据给形参。
B 调用函数时,实参与形参不能共用内存单元。
C 调用函数时,将为形参分配内存单元。
D 调用函数时,实参可以是表达式。
6.程序中定义以下宏#define A 2#define B 3*A#define C B+A若定义int a;则表达式a=C*2的值为______。
A 4B 8C 10D 167.在C语言中,对于存储类型为______的变量,只有在使用它们时才分配存储空间。
A static和autoB register和externC register和staticD auto和register。
9101112A int i,b[4];for(i=0;i<4;i++) b[i]=(i+2)*10;B int b[4];b={20,30,40,40};C int b[4];b[1]=20,b[2]=30,b[3]=40,b[4]=50;D int b[4];b[4]={20,30,40,50};13.下列叙述错误的是_______。
C语言试题A卷+答案(1)

桂林电子科技大学非计算专业学生计算机水平考试(C语言)A卷答案第一卷出卷人:大学生创新创业综合实践基地软件部策划:大学生创新创业综合实践基地软件部科技发展部1、( )是构成C语言程序的基本单位。
A、函数B、过程C、子程序D、子例程正确答案:A概念题目需要记下!2、以下说法中正确的是( )。
A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main( )函数中定义C、C语言程序总是从main( )函数开始执行D、C语言程序中的main( )函数必须放在程序的开始部分正确答案:C[解析]C程序是由函数构成的。
一个C源程序至少包含一个MAIN函数,也可以包含一个MAIN函数和若干个其他函数,因此,函数是C程序的基本单位。
3、下列四组字符串中都可以用作C语言程序中的标识符的是( )。
A、print _3d db8 aBcB、I\am one_half start$it 3paiC、str_1 Cpp pow whileD、Pxq My->book line# His.age正确答案:A4、C语言中的简单数据类型包括( )。
A、整型、实型、逻辑型B、整型、实型、逻辑型、字符型C、整型、字符型、逻辑型D、整型、实型、字符型正确答案:D5、C语言中,关系表达式和逻辑表达式的值是( ) 。
A、0B、0或1C、1D、'T'或'F'正确答案:B6、下面( )表达式的值为4.A、 11/3B、 11.0/3C、 (float)11/3D、 (int)(11.0/3+0.5)正确答案:D解析:选项A,11与3为两个整数,11/3结果的数据类型也应为整数,因此将3.666666的小数部分全部舍掉,仅保留整数,因此11/3=3。
选项B,11.0为实数,3为整数,因此首先要统一数据类型,将整型数据3转换为3.0,转换后数据类型统一为实型数据,选项B变为11.0/3.0,结果的数据类型也应为实型数据,因此选项B 11.0/3=3.666666。
C语言程序设计试题A(附答案)NEW

《C语言程序设计》模拟试卷A一、单项选择题(每题2分,共20分)1、下列有关C语言的叙述中错误的是()。
A) C语句必须以分号结束B) 任何一个C程序中有且只有一个主函数C) 复合语句在语法上可被看作一条语句D) C程序中对数据的任何操作都可由运算符实现2、以下不能定义为用户标识符的是()。
A) MAIN B) _HJ C) 2ong D) LINE13、以下能正确定义一维数组的是()。
A) int a[5]={0,1,2,3,4,5}; B) int a[5]=”012345”;C) char a[ ]=”012345”; D) char a[5]={0,1,2,3,4,5};4、执行下列程序段后输出的结果是()。
x = 9;while (x > 7){ printf(“*”); x- -; }A) **** B) *** C) ** D) *5、设char str1[10] = “ABCDE”, str2[10] = “xyz”;则执行语句printf(“%d”, strlen(strcpy(str1, str2))); 后的输出结果是()A) 9 B) 8 C) 5 D) 36、若用数组名作为函数调用的实参,则传递给形参的是()A) 数组的首地址 B) 数组第一个元素的值C) 数组中全部元素的值 D) 数组元素的个数7、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为()A)void B)double C)int D)char8、下面不能正确进行字符串赋值操作的语句是( )A) char s[5]={"ABCD"}; B) char s[5]; s="ABCD";C) char *s;s="ABCDEF"; D) char *s="ABCD";9、设有说明int s[5]={1,3,5,7,9}; int *p=s; 则下列表达式中值为3的是 ( )A)++p B)++(*p) C) *(++p) D) *(p+=2)10、下面程序的输出结果是()int m=13;int fun( int x, int y){ int m=3;return( x*y-m); }main( ){ int a=7,b=5;printf(“%d\n”, fun(a,b)/m); }A) 1 B) 2 C) 3 D) 10二、填空题。
c语言试卷A卷及答案
考试课程: 班级: 学号: 姓名: 注:学生 不 得 在 草 稿 纸上 答 题,答 题 不 得 超 出 框 体。
………………………………………………装…………………………订…………………………线………………………………………………考试课程:班级:学号:姓名:……………………………………装…………………………订…………………………线………………………………………………default:printf(“#”);break;}default:printf(“&”);运行结果:} printf (“\n”);}3.#include <stdio.h>main(){ int i;for (i=1;i<=5;i++)switch (i%5){ case 0:printf(“*”);break;case 1:printf(“#”);break;default:printf(“\n”);case 2:printf (“&”);运行结果:}}4.main(){ int i,b,k=0;for (i=1;i<=5;i++){b=i%2;while (b——>=0)k++;} 运行结果:printf (“%d,%d”,k,b);}5.#include <stdio.h>main(){ char ch[7]={“12ab56”};int i,s=0;for (i=0;ch[i]>=…0‟&&ch[i]<=…9‟;i+=2)s=s*10+ch[i]-…0‟;运行结果:printf (“%d\n”,s);}6. main(){ int a=2,i;for (i=0;i<3;i++)printf (“%4d”,f(a));}f(int a){ int b=0;static int c=3;b++;c++;运行结果:return(a+b+c);}四、编写程序(20分)1.从键盘输入的10个整数中,找出第一个能被7整除的数。
c语言a类卷子题库及详解答案
c语言a类卷子题库及详解答案C语言A类卷子题库及详解答案一、选择题1. 在C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. returnD. function答案:A2. 下列哪个选项是C语言中的合法标识符?A. 3variableB. variable-nameC. variable#nameD. variable_name答案:D3. 以下哪个语句可以用来输入一个整数?A. scanf("%d", &number);B. printf("%d", number);C. cout << number;D. input("%d", &number);答案:A4. 在C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C5. 下列哪个选项是C语言中的数组声明?A. int numbers;B. int numbers[10];C. int numbers(10);D. int [10] numbers;答案:B二、填空题6. 在C语言中,若要定义一个字符变量来存储字符'A',可以使用以下语句:________。
答案:char ch = 'A';7. C语言中,用于实现条件判断的关键字是________。
答案:if8. 在C语言中,循环结构包括________和________。
答案:for, while9. 要声明一个指向整型的指针变量,可以使用以下语句:________。
答案:int *ptr;10. C语言中,用于定义一个结构体的关键字是________。
答案:struct三、简答题11. 简述C语言中数组和指针的区别。
答案:数组是一种数据结构,用于存储一系列相同类型的元素,而指针是一个变量,它存储了另一个变量的内存地址。
数组名是一个指向数组首元素的指针常量,而指针变量可以被重新赋值指向不同的内存地址。
C语言试卷-A
试卷编号拟题教研室(或教师)签名李晓波教研室主任签名………………………………………………………………………………………………………………课程名称(含档次)C语言程序设计课程代号000004专业层次(本、专)考试方式(开、闭卷)一、选择题(本题总分50分,每小题2分)1、一个C程序的执行是从( )A. 本程序的main 函数开始,到main函数结束B. 本程序文件中的第一个函数开始,到本程序文件的最后一个函数结束C. 本程序的main 函数开始,到本程序文件的最后一个函数结束D. 本程序文件的第一个函数开始,到本程序main函数结束2、以下关于C程序中数组的描述正确的( )A. 数组的大小是固定的,但可以有不同类型的数组元素B. 数组的大小是可变的,但所有元素的类型必须相同C. 数组的大小是固定的,且所有元素的类型必须相同D. 数组的大小是可变的,可以有不同类型的数组元素3、若以下变量均是整型,且num=sum=7;则计算表达式sum=num++,sum++,++num后sum的值为( )A.7B.8C. 9D. 104、在下面关于形参与实参的叙述中,正确的是( )A. 形参是虚设的,所以它始终不占存储单元B. 实参与它所对应的形参同名时占用相同的存储单元C. 实参与它所对应的形参占用相同的存储单元D. 实参与它所对应的形参占用不同的存储单元5、以下关于运算符优先顺序的描述中正确的是( )A.关系运算符<算术运算符<赋值运算符<逻辑与运算符B.逻辑与运算符<关系运算符<算术运算符<赋值运算符C.赋值运算符<逻辑与运算符<关系运算符<算术运算符试卷编号拟题教研室(或教师)签名李晓波教研室主任签名………………………………………………………………………………………………………………课程名称(含档次)C语言程序设计课程代号000004专业层次(本、专)考试方式(开、闭卷)D.算术运算符<关系运算符<赋值运算符<逻辑与运算符6、下面正确的字符常量是( )A. "c"B. '\\"C. 'w'D. ''7、变量的指针,其含义是指变量的( )A. 值B. 地址C. 名D. 一个标志8、在宏定义#define PI 3.14159中,用宏名PI代替一个( )A. 常量B. 单精度数C. 双精度数D. 字符串9、在下列关于typedef语句的描述中,错误的是 ( )A. 用typedef只是对原有的类型起个新名,没有生成新的数据类型B. typedef可以用于变量的定义C. typedef定义类型名可嵌套定义D. 利用typedef定义类型名可以增加程序的可读性10、下面不正确的字符串常量是( )A. 'abc'B. "12'12"C. "0"D. ""11、若有代数式 3ae/bc , 则不正确的C语言表达式是( )A. a/b/c*e*3B.3*a*e/b/cC.3*a*e/b*cD.a*e/c/b*312、在位运算中,操作数每右移一位,其结果相当于( )A. 操作数乘以2B. 操作数除以2C. 操作数除以4D. 操作数乘以413、若a=12,则计算表达式a+=a-=a*=a后a的值为( )A.144B.-144C. 0D. 1214、已知字符'A'的ASCII码是65,字符变量c1的值是'A', c2的值是'D',执行语句printf("%d,%d",c1,c2-2);后,输出结果是( )A. A,BB. A,68C. 65,66D. 65,68试卷编号拟题教研室(或教师)签名李晓波教研室主任签名………………………………………………………………………………………………………………课程名称(含档次)C语言程序设计课程代号000004专业层次(本、专)考试方式(开、闭卷)15、调用一个函数,此函数中没有return语句,下列说法正确的是( )A. 没有返回值B. 返回若干个系统默认值C. 能回复一个用户所希望的函数值D. 返回一个不确定的值16、在C语言中,字符型数据在内存中的存储形式是( )A. 补码B.反码C.原码D. ASCII码17、若有以下定义: int k=7,x=12;,则能使值为3的表达式是( )A. x%=(k%=5)B. x%=(k-k%5)C. x%=k-k%5D. (x%=k)-(k%=5)18、在执行int a[][3]={1,2,3,4,5,6};语句后,a[1][1]的值是( )A. 4B. 1C. 2D. 519、若有说明int a[][3]={1,2,3,4,5,6,7};,则a数组第一维的大小是( )A. 2B. 3C. 4D. 无确定值20、程序char s[]="ABC",*p=s;printf("%c\n",*(p+3));的运行结果是( )A. 67B. 字符'C'C. 字符'C'的地址D. 空零(无显示)21、下面四组选项中,均是C语言关键字的选项是( )A. auutoB. switchC. signedD. ifenum typedef union structinclude continue scanf type22、以下能正确地定义整型变量a,b和c,并为c赋初值5的语句是( )A. int a=b=c=5;B. a=b=c=5;C. a=5,b=5,c=5;D. int a,b,c=5;23、在下列代码段中,不正确的是( )A. int a[5], *p;p=&a;B. int a[5], *p;p=a;C. int a[5];int *p=a;D. int a[5],;int *p1, *p2=a;*p1=*p2;24、如要用fopen函数打开一个新的二进制文件,该文件要既能读也能写,则文件方式字符串应是( )试卷编号拟题教研室(或教师)签名李晓波教研室主任签名………………………………………………………………………………………………………………课程名称(含档次)C语言程序设计课程代号000004专业层次(本、专)考试方式(开、闭卷)A. "ab+"B. "wb+"C. "rb+"D. "ab"25、以下描述中正确的是( )A. break语句只能用在循环体内和switch语句体中B. continue语句的作用是:使程序的执行流程跳出包含它的所有循环C. break语句只能用在switch语句体中D. 在循环体内,使用break语句和continue语句的作用相同二、填空题(本题总分20分,每空4分)1、下面程序的运行结果是【1】( )#include"stdio.h"main( ){ int i,r;char s1[80]="bus";char s2[80]="book";for(i=r=0;s1[i]!='\0'&&s2[i]!= '\0';i++){ if(s1[i]==s2[i]) i++;else {r=s1[i]-s2[i]; break;}printf("%d",r);}2、以下程序的功能是计算:s=1+12+123+1234+12345,请填空:# include "stdio.h"main ( )试卷编号拟题教研室(或教师)签名李晓波教研室主任签名………………………………………………………………………………………………………………课程名称(含档次)C语言程序设计课程代号000004专业层次(本、专)考试方式(开、闭卷){ int t=0,s=0,i;for(i=1;i<=5;i++){ t=i+【2】( ) ;s=s+t;}printf("s=%d\n",s);}3、以下程序的运行结果是【3】( )# include "stdio.h"main ( ){ int i=1;while(i<=9)if(++i%3!=2) continue;else printf("%d",i);printf("\n");}4、以下程序运行的结果是【4】( )main( ){ char a=-8;unsigned char b=248;printf("%d,%d",a>>2,b>>2);}5、以下程序的输出结果是【5】( )fun(int a, int b, int c){ c=a*a+b*b;试卷编号拟题教研室(或教师)签名李晓波教研室主任签名………………………………………………………………………………………………………………课程名称(含档次)C语言程序设计课程代号000004专业层次(本、专)考试方式(开、闭卷)}Main(){ int x=22;fun(4,2,x);printf("%d",x);}三、程序分析题(本题总分10分,每小题5分)1、若运行以下程序时,从键盘输入2473<CR>,<CR>表示回车,则下面程序的运行结果是( )# include"stdio.h"main( ){ int c;while( (c=getchar( ))! ='\n')switch(c-'2'){ case 0:case 1: putchar(c+4);case 2: putchar(c+4);break;case 3: putchar(c+3);default: putchar(c+2);break;}printf("\n");}试卷编号拟题教研室(或教师)签名李晓波教研室主任签名………………………………………………………………………………………………………………课程名称(含档次)C语言程序设计课程代号000004专业层次(本、专)考试方式(开、闭卷)2、以下程序执行后输出的结果是( )# include"stdio.h"int a=2;int f(int *a){ return (*a)++;}void main( ){ int s=0;{ int a=5;s+=f(&a);}s+=f(&a);printf("%d\n",s);}四、编程题(本题总分20分,每小题10分)1、采用结构体类型变量编一程序,实现输入学生的学号、英语期中和期末考试成绩,然后输出其平均成绩,期中和期末考试成绩分别占总分的30%和70%。
C语言试题及答案A
绝密★启用前学院学年第二学期期末考试级 专业 《C 语言》试卷A一、单项选择题(本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1、( )是构成C 语言程序的基本单位。
A 、函数B 、过程C 、子程序D 、子例程 2、以下说法中正确的是( )。
A 、C 语言程序总是从第一个定义的函数开始执行B 、在C 语言程序中,要调用的函数必须在main( )函数中定义 C、C 语言程序总是从main( )函数开始执行D 、C 语言程序中的main( )函数必须放在程序的开始部分 3、下列关于C 语言的说法错误的是( ) 。
A 、C 程序的工作过程是编辑、编译、连接、运行B 、C 语言不区分大小写。
C 、C 程序的三种基本结构是顺序、选择、循环D 、C 程序从main 函数开始执行4、下列正确的标识符是( )。
A 、-a1B 、a[i]C 、a2_iD 、int t 5、C 语言中的简单数据类型包括( )。
A 、整型、实型、逻辑型B 、整型、实型、逻辑型、字符型C 、整型、字符型、逻辑型D 、整型、实型、字符型 6、在C 语言程序中,表达式5%2的结果是( )。
A 、2.5 B 、2 C 、1 D 、37、如果int a=3,b=4;则条件表达式"a<b? a:b"的值是( )。
A 、3B 、4C 、0D 、1 8、C 语言中,关系表达式和逻辑表达式的值是( )。
A 、0B 、0或1C 、1D 、‘T’或’F’ 9、下面( )表达式的值为4.A 、11/3B 、11.0/3C 、(float)11/3D 、(int)(11.0/3+0.5)10、设整型变量 a=2,则执行下列语句后,浮点型变量b 的值不为0.5的是( )。
A 、b=1.0/aB 、b=(float)(1/a)C 、b=1/(float)aD 、b=1/(a*1.0) 11、在C 语言中对一维整型数组的正确定义为( )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、单项选择题(本题共30 个小题,每小题1分,共30分,请将答案代号填涂到机读卡上,在试卷上所写答案,视为0分)1、以下叙述中错误的是()。
A) C语言运算功能丰富B) C语言可以不用编译就能被计算机识别执行C) C语言允许直接访问物理地址,直接对硬件进行操作D) C语言属于结构化的程序设计语言2、在C语言中,整型常量的表示方法不包括()。
A) 二进制 B) 八进制C) 十进制 D) 十六进制3、以下选项中不属于C语言的关键字的是()。
A) typedef B) structC) int D) CHAR4、源程序要正确地运行,必须要有什么函数()A) printf函数 B) 自定义的函数C) main函数 D) 不需要函数5、这段程序中的变量是()#include<stdio.h>#define PI 3.14void main(){int sum;sum = 10 + 15;printf("sum=%d\n",sum);printf("result is 25\n");}A) 10 B) sumC) 15 D) PI6、算法具有五个特性,以下选项中不属于算法特性的是()。
A)有穷性 B)简洁性C)可行性 D)确定性7、字符型常量在内存中存放的是()。
A)ASCII码 B)BCD码C)内部码 D)十进制码8、下面哪个表达式的值为4()。
A)11/3 B)11.0/3C)(float)11/3 D)(int)(11.0/3+0.5)9、假设变量a和b已经定义为整型,指出下面错误的表达式()。
A) a=a++ B) 5.6+6.2%3.1C) 1&&2 D) a=1,b=210、该源程序执行后,输出结果是()。
#include<stdio.h>void main(){int a;float b;a=4;b=9.5;printf("a=%d,b=%4.2f\n",a,b);}A) a=%d,b=%f\n B) a=%d,b=%fC) a=4,b=9.50 D) a=4,b=9.511、以下的for循环是()。
for(x=0,y=0;(y!=123)&&(x<4);x++);A) 无限循环 B) 循环次数不定C) 执行4次 D) 执行3次12、从以下给出的表达式中选出与while(E)语句中的(E)不能等价的表达式()A) (!E==0) B) (E>0) || (E<0)C) (E!=0) D) (E==0)13、C语言中,逻辑“真”等价于()。
A)大于零的数 B)不大于零的整数C)非零的数 D)非零的整数14、以下程序的输出结果是()。
#include<stdio.h>main( ){ int num=0;while(num<=2){ num++;printf(“%2d\n”,num);}}A)1 B)1 2C)1 2 3 D)1 2 3 415、下列变量名中合法的是()。
A)B.C.Tom B)3a6bC)_6a7b D)$ABC16、设有定义语句int c[4][3];,则以下对数组元素的引用形式中正确的是()。
A) c[2+1][1-1] B) c[2,3]C) c[4][3] D) c[2+1,2]17、若有定义语句double x[2][2]={0.0};则以下叙述正确的是()。
A) 该语句存在语法错误B) 该语句使二维数组x的所有元素初值都为0.0C) 该语句只为数组元素x[0][0]赋初值为0.0D) 该语句为数组元素x[2][2]赋初值为0.018、以下选项中,不是C语言合法字符串常量的是()。
A) “\121” B) ‘y=’C) “\n\n” D) “ABCD\x6d”19、函数strcmp(“abc”,“x”)的返回值是()。
A)小于0 B)等于0C)大于0 D)不确定20、下列函数定义中正确的是()。
A) float cal(float x;float y){return(x*y);}B) float cal(float x,y){return(x*y);}C) int cal(x,y){float x,y;return(x*y);}D) int cal(x,y)float x,y;{return(x*y);}21、在函数的说明和定义时若没有指出函数的类型,则()。
A)系统自动地认为函数的类型为整型B)系统自动地认为函数的类型为字符型C)系统自动地认为函数的类型为实型D)编译时会出错22、在int a[ ]={1,2,3,4}中,数组元素a[2]的值是()。
A) 1 B) 2C) 3 D) 423、在下面程序中,属于全局变量的是()#include<stdio.h>struct student{int num;char *name;char sex;float score;}stu2,stu1={1002,"Liu Qing",'M',82.5};main( ){ int n;float s;stu2=stu1;n=stu1.num;s=stu2.score;printf("Number=%d\nName=%s\n",n,);printf("Sex=%c\nScore=%f\n",stu2.sex,s);}A)student B)stu2C)n D)s24、下面程序的输出结果是()。
#include <stdio.h>sub2(int n){return n+1;}sub1(int n){ int i,a=0;for (i=n; i>0; i--)a+=sub2(i);return a ;}main( ){ int n=3;printf ("%d\n",sub1(n));}A) 5 B) 7C) 8 D) 925、设有定义:int a,*pa=&a;以下scanf语句中能正确为变量a读入数据的是()。
A)scanf(“%d”,pa); B)scanf(“%d”,a);C)scanf(“%d”,&pa); D)scanf(“%d”,*pa);26、下面程序中,哪个变量的值保存在cpu的寄存器里()。
#include <stdio.h>int n=1000;main( ){ static int sum=0;register int i;for (i=1; i<=n; i++)sum+=i;printf("sum=%ld\n ",sum);}A) n B) sumC) i D) 这段程序中没有寄存器变量27、若有两个基本类型相同的指针p1,p2,则下列运算不合理的是()。
A)p1+p2 B)p1-p2C)p1=p2 D)p1==p228、为字符数组赋值,下列方法中错误的是()。
A)char str[5]=”ok”;B) char str[5];gets(str);C) char str[5];scanf(“%s”,str);D) char str[5];str=”ok”;29、下面哪个是正确的引用结构体变量成员()struct student{ int num;char name;} stu1,*p;p=&stu1;A)stu1->.num B)*stu1.numC)student.num D)p->num30、下面程序的输出结果是()。
#include <stdio.h>main(){ printf("%d\n", NULL); }A)0 B)1C)-1 D)NULL没定义,出错1、C语言规定,标识符只能由___①___﹑___②___﹑___③___3种字符组成,而且,第一个字符不能是___④___。
2、结构化程序设计的三种基本结构是___①___结构﹑___②___结构和___③___结构,能够实现选择结构的语句有___④___语句和switch语句。
3、在C语言中,实现循环的语句有:if-goto语句﹑while语句﹑___①___语句和___②___语句,break语句在循环控制中用于结束___③___﹑continue语句在循环控制中用于结束___④___。
4、下面程序的功能是:用冒泡排序法将5个数字从小到大排列,请填空:#___①___ <stdio.h>#define N 5main( ){ int a[N];int i,j,t,exchange;printf("Input %d numbers:\n",N);for (i=0; i<N; i++)scanf("___②___",&a[i]);for (j=1; j<=N-1; j++) /*控制比较的趟数 */{ exchange=0;for (i=0; i<N-j; i++) /*两两比较的次数 */if (a[i]>a[i+1]){ t=a[i];a[i]= ___③___;a[i+1]= ___④___;exchange=1; }if (exchange==0)break;}printf("The sorted numbers: \n");for (i=0; i<N; i++)printf("%4d",a[i]);}四﹑读程序写结果(本大题共 5 小题,每小题 2 分,共10分,请将答案填写到下面表格内,未填写在表格内,视为0分)1#include <stdio.h>main(){ int a=10,y=0;do{ a+=2;y+=a;printf(“a=%d y=%d\n”, a,y);if(y>20) break;} while(a=14);}①__________②__________2、写出该程序运行结果#include <stdio.h>main(){ void increment(void);increment();increment();}void increment(void){ static int x;x++;printf(“%d\n”,x);}①__________②__________3、写出该程序运行结果#include “stdio.h”int age(int n){ int c;if (n==1) c=10;else c=age(n-1)+2;return(c );}main(){printf(“%d”,age(4));printf(“%d”,age(5));}①__________②__________4、写出该程序运行结果#include<stdio.h>main(){int *point1,*point2,*point;int a=1,b=2;point1=&a,point2=&b;point=point1;point1=point2;point2=point;printf(“%d,%d\n”,a,b);printf(“%d,%d”,*point1,*point2);}①__________②__________5、写出该程序运行结果#include <stdio.h>main(){ struct info{ char name[20];int year,month;}person_1;strcpy(person_,"Liu De Hua");person_1.year=1961;person_1.month=9;printf("\nName:%s", person_);printf("\nBirthday:%d.%d ",person_1.year, person_1.month);}①__________②__________五﹑程序设计(本大题共 4 小题,每小题 6 分,共24分)1、输入整数x,根据x的值来确定y的值,若x>0,那么y=x,否则y=-x。