1、大学C语言考试题库含标准答案单项选择=题号: 1482执行以下程序段后,输出结果和 a的值是()。 int a=10 。 printf(%d,a+) 。A、11 和 10B、11 和 11C、10 和 11D、10 和 10答案:C题号: 2100已知字符 A 的ASC代码值是 65, 字符变量 c1的值是 A,c2 的值是 D. 执行语句printf(%d,%d,c1,c2-2) 。后 , 输出结果是A、65,66B、A,BC、65,68D、A,68答案:A题号: 5055相同结构体类型的变量之间,可以()。A、比较大小B、地址相同C、赋值D、相加答案:C题号: 3217int a10 。合
2、法的数组元素的最小下标值为()。A、1B、0C、10D、9答案:B题号: 45能正确表示逻辑关系 : a 10或 a 0 的C语言表达式是A、a=0 | a=10 or a=10 & a=10 | a=01/44答案:D题号: 157main()int x=1,a=0,b=0 。switch (x) case 0: b+ 。case 1: a+ 。case 2: a+ 。b+。 printf(a=%d,b=%d,a,b) 。 该程序的输出结果是 ( )A、2,2B、2,1C、1,1D、1,0答案:B题号: 4784设变量 a是整型, f 是实型, i 是双精度型,则表达式 10+a+i*f 值
3、的数据类型为()。A、不确定B、doubleC、intD、float答案:B题号: 1647以下程序中, while 循环的循环次数是 _main()int i=0 。while(i10)if(ib)=c 的值为 真 。答案:正确题号: 66若有 # define S(a,b) a*b 则语句 area=S(3,2) 。 area 的值为 6。答案:正确题号: 758若有宏定义: #define S(a,b) t=a 。a=b。 b=t 由于变量 t 没定义,所以此宏定义是错误的。答案:错误题号: 2158#define 和printf 都不是 C语句。答案:正确题号: 5102关系运算符 1
4、00) printf( “n%d” , a 100)。else printf( “n%d” , a = 100)。答案:空 1:1题号: 3255表达式( int )( double )( 5/2 )+2.5 )的值是 _.答案:空 1:4题号: 2472阅读下面程序,程序执行后的输出结果为 _。4/44#include stdio.hmain()char a,b。for (a= 0 ,b= 9。 ab。a+,b-)printf (%c%c,a,b)。printf (n)。答案:空 1:0918273645题号: 937以下程序段的输出结果是 _。int i = 0, sum = 1。do s
5、um += i+。 while( i y)if ( xz)printf (%d,x )。else printf (%d,y )。6/44printf (%dn,z )。答案:空 1:3程序设计=题号: 2660/*-【程序设计】-功能:计算出 k以内最大的 10个能被 13或17整除的自然数之和。( k3000)。-*/#include #includeconio.hvoid bky() 。int fun(int k)/* Begin */* End */main()int m 。printf(Enter m: ) 。scanf(%d, &m) 。printf(nThe result is %
6、dn, fun(m) 。bky() 。void bky()FILE *IN,*OUT 。int s 。int t 。int o 。IN=fopen(in.dat,r) 。if(IN=NULL)printf(Read FILE Error) 。7/44OUT=fopen(out.dat,w) 。if(OUT=NULL)printf(Write FILE Error) 。for(s=1 。 s=2)&(b10)if(k%13=0)|(k%17=0)a=a+k 。b+。k- 。return a 。题号: 5854C语言中不可以嵌套的是()。A、选择语句B、循环语句C、函数调用D、函数定义答案:D题号
7、: 1957C语言中 , 逻辑 真 等价于A、非零的整数B、大于零的整数C、非零的数D、大于零的数答案:C题号: 3786用户定义的函数不可以调用的函数是()。A、本文件外的8/44B、main函数C、本函数下面定义的D、非整型返回值的答案:B题号: 1764以下叙述中正确的是()。A、C程序中注释部分可以出现在程序中任意合适的地方B、分号是 C语句之间的分隔符 , 不是语句的一部分C、花括号 “和”只能作为函数体的定界符D、构成 C程序的基本单位是函数 , 所有函数名都可以由用户命名答案:A题号: 299下面四个选项中,均是不合法的浮点数的选项是()。A、-e3 .234 1e3B、160.
8、 0.12 e3C、123 2e4.2 .e5D、-.18 123e4 0.0答案:C题号: 6131假定所有变量均已正确定义,下列程序段运行后 x的值是()。k1=1。k2=2。k3=3。x=15。if(!k1) x- 。else if(k2) x=4 。else x=3 。A、15B、14C、3D、4答案:D题号: 3208若变量已正确定义,以下程序段的输出结果是x=5.16894。printf( “n%f” , (int)(x*1000+0.5)/(float)1000)。A、5.170009/44B、输出格式说明与输出项不匹配,输出无定值C、5.168000D、5.169000答案:D
9、题号: 5043以下选项中合法的实型常数是()。A、5E2.0B、1.3EC、E-3D、.2E0答案:D题号: 5608有以下程序main() int i 。for(i=0 。 ib)=c 的值为 真 。答案:正确题号: 2316while 和do while 循环不论什么条件下它们的结果都是相同的 .答案:错误题号: 2989char c=Very Good 。 是一个合法的为字符串数组赋值的语句。答案:正确题号: 5034语句 scanf(%7.2f,&a) 。是一个合法的 scanf 函数。答案:错误题号: 2067如果想使一个数组中全部元素的值为 0,可以写成int a10=0*10
10、。答案:错误题号: 5263x*=y+8 等价于 x=x*(y+8) 。答案:正确题号: 3862如果函数值的类型和 return 语句中表达式的值不一致,则以函数类型为准。答案:正确题号: 3558整数 -32100 可以赋值给 int 型和 long int 型变量。答案:正确填空=题号: 551请写出以下程序的输出结果 _。main() int a = 100。if( a 100) printf( “n%d” , a 100)。else printf( “n%d” , a = 100)。11/44答案:空 1:1题号: 1575对以下数学式,写出三个等价的 C语言表达式是 _、_、 _a
11、b c答案:空 1:a/c/b【或】 a/(b*c)【或】 a/b/c空 2:a/c/b【或】 a/b/c【或】 a/(b*c)空 3:a/b/c【或】 a/c/b【或】 a/(b*c)题号:1076表达式3.5 + 1 / 2的计算结果是 _。答案:空 1:3.5题号: 2758若 x为 double型变量,请写出运算 x = 3.2, +x后表达式的值 _和变量的值 _。答案:空 1:4.2空 2:4.2题号: 582以下程序的执行结果是 _。main()int k=8 。switch ( k)case 9: k+=1 。case 10: k+=1 。case 11: k+=1 。 bre
12、ak 。default: k+=1 。printf (%dn,k )。12/44答案:空 1:9题号: 2868若要通过以下语句给 a、b、c、 d分别输入字符 A 、 B、 C、D,给 w、 x、 y、 z分别输入10、20、 30、40,正确的输入形式是 _。请用 代表 Enter键。scanf( “ %d%c%d%c%d%c%d%c”,&w, &a, &x,&b, &y, &c, &z, &d) 。答案:空 1:10A20B30C40D题号: 4063以下程序段的输出结果是 _、_、_、 _double a = 513.789215。printf( “ a = %8.6f, a = %8
13、.2f, a = %14.8f, a = %14n.”8lf, a, a, a, 。a)答案:空 1:a = 513.789215空 2:a = 513.79空 3:a = 513.78921500空 4:a = 513.78921500题号: 5076以下程序的输出结果是 _。main()int a=0。a+=( a=8)。printf (%dn,a)。 答案:空 1:16题号: 5410以下程序的执行结果是 _。main()int a, b, *p = &a, *q = &b 。a = 10 。b = 20 。*p = b 。13/44*q = a 。printf( “a = %d, b
14、= %dn ”, a, b) 。答案:空 1:a = 20, b = 20题号: 6975以下程序的输出结果是 _。main() int x = 2。while ( x- ) 。printf( “n%d” , x)。答案:空 1:-1程序设计=题号: 58/*-【程序设计】-功能:将字符串中的小写字母转换为对应的大写字母,其它字符不变。-*/#include string.h#include void bky() 。void change(char str)/* Begin */* End */main()void change() 。char str40 。gets(str) 。change
15、(str) 。puts(str) 。bky() 。14/44void bky()FILE *IN,*OUT 。char i200 。IN=fopen(in.dat,r) 。if(IN=NULL)printf(Read FILE Error) 。OUT=fopen(out.dat,w) 。if(OUT=NULL)printf(Write FILE Error) 。fscanf(IN,%s,i) 。change(i) 。fprintf(OUT,%sn,i) 。fclose(IN) 。fclose(OUT) 。示例代码:int i 。for(i=0 。stri!=0 。i+)if(stri=a &
16、stri=0 | a=10 or a=10 & a=10 | a=0答案:D题号: 53若已定义 x为 int 类型变量,下列语句中说明指针变量 p的正确语句是()。A、int *p=&x 。B、int p=&x 。C、*p=*x 。D、int *p=x 。答案:15/44A题号: 2244字符串指针变量中存入的是A、第一个字符B、字符串C、字符串的首地址D、字符串变量答案:C题号: 3722下列字符数组长度为 5的是A、charc10= h, a, b, c, d。B、char b= h, a, b, c, d, 0。C、chara=h, a, b, c, d。D、chard6= h, a,
17、 b, c, 0 。答案:C题号: 2703从键盘上输入某字符串时,不可使用的函数是()。A、getchar()B、scanf()C、fread()D、gets()答案:A题号: 3402以下对整型数组 a的正确说明是:A、int n = 10, an 。B、C、D、int a(10) 。答案:C题号: 130若 char a10 。已正确定义,以下语句中不能从键盘上给 a数组的所有元素输入值的语句是()。16/44A、scanf(%s,a) 。B、for(i=0 。i10 。i+)ai=getchar() 。C、a=getchar() 。D、gets(a) 。答案:C题号: 191若有说明语句 :char c=72 。则变量 c()。A、说明不合法, c的值不确定B、包含 3个字符C、包含 1个字符D、包含 2个字符答案:C题号: 4539以下程序的输出结果是main() int i = 1, j = 3。printf( “ %d,”。,i+) int i = 0。i += j * 2
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1