宇天11级大一C语言模拟试卷A
C语言程序设计模拟试题一

C语言程序设计模拟试题一(含答案)16、设有int x=11; 则表达式(x++ * 1/3) 的值是A) 3 B) 4C) 11 D) 1217、下列程序的输出结果是main(){ double d=3.2; int x,y;x=1.2; y=(x+3.8)/5.0;printf("%d \n", d*y);}A) 3 B) 3.2C) 0 D) 3.0718、下列程序执行后的输出结果是(小数点后只写一位)main(){ double d; float f; ling l; int i;i=f=1=d=20/3;printf("%d %ld %f %f \n", i,l,f,d);}A) 6 6 6.0 6.0 B) 6 6 6.7 6.7C) 6 6 6.0 6.7 D) 6 6 6.7 6.019、下列变量定义中合法的是A) short _a=1-.le-1; B) double b=1+5e2.5;C) long do=0xfdaL; D) float 2_and=1-e-3;20、设int x=1, y=1; 表达式(!x||y--)的值是A) 0 B) 1C) 2 D) -121. 与y=(x>0?1:x<0?-1:0);的功能相同的if语句是A) if (x>0) y=1;else if(x<0)y=-1;else y=0;B) if(x)if(x>0)y=1;else if(x<0)y=-1;else y=0;C) y=-1if(x)if(x>0)y=1;else if(x==0)y=0;else y=-1;D) y=0;if(x>=0)if(x>0)y=1;else y=-1;22. 以下循环体的执行次数是main(){ int i,j;for(i=0,j=1; i<=j+1; i+=2, j--)printf("%d \n",i);}A) 3 B) 2C) 1 D) 023. 以下叙述正确的是A) do-while语句构成的循环不能用其它语句构成的循环来代替B) do-while语句构成的循环只能用break语句退出C) 用do-while语句构成的循环,在while后的表达式为非零时结束循环D) 用do-while语句构成的循环,在while后的表达式为零时结束循环24. 下列程序执行后的输出结果是main(){ int x='f'; printf("%c \n",'A'+(x-'a'+1)); }A) G B) HC) I D) J25. 执行下面的程序段后,变量k中的值为int k=3, s[2];s[0]=k; k=s[1]*10;A) 不定值B) 33C) 30 D) 1026. 若已定义:int a[ ]={0,1,2,3,4,5,6,7,8,9}, *p=a,i;其中0≤i≤9, 则对a数组元素不正确的引用上A} a[p-a] B} *(&a[i])C} p[i] D} a[10]27、下列程序执行后的输出结果是void func(int *a,int b[]){ b[0]=*a+6; }main(){ int a,b[5];a=0; b[0]=3;func(&a,b); printf("%d \n,b[0]);}A) 6 B) 7C) 8 D) 928、下列程序的运行结果是#include <stdio.h>main(){ int a=2,c=5;printf("a=%d,b=%d\n",a,c); }A) a=%2,b=%5 B) a=2,b=5C) a=d, b=d D) a=%d,b=%d29、下列程序执行后的输出结果是main(){ int a[3][3], *p,i;p=&a[0][0];for(i=p; i<9; i++) p[i]=i+1;printf("%d \n",a[1][2]);}A) 3 B) 6C) 9 D) 随机数30、设有数组定义: char array [ ]="China"; 则数组array所占的空间为A) 4个字节B) 5个字节C) 6个字节D) 7个字节31、下列程序的输出结果是int b=2;int func(int *a){ b += *a; return(b);}main(){ int a=2, res=2;res += func(&a);printf("%d \n",res);}A) 4 B) 6C) 8 D) 1032、在以下四组中,每组有两个分别运算的函数,运算结果相同的是main(){ int i, j, m=0, n=0;for(i=p; i<2; i++)for(j=0; j<2; j++)if(j>=i) m=1; n++;printf("%d \n",n);}A) 4 B) 2C) 2 D) 033、下列程序的输出结果是struct abc{ int a, b, c; };main(){ struct abc s[2]={{1,2,3},{4,5,6}}; int t;t=s[0],a+s[1],b;printf("%d \n",t);}A) 5 B) 6C) 7 D) 834、设int b=2;表达式(b>>2)/(b>>1)的值是A) 0 B) 2C) 4 D) 835、在C程序中,可把整型数以二进制形式存放到文件中的函数是A) fprintf函数B) fread函数C) fwrite函数D) fputc函数36、下列程序执行后的输出结果是main(){ char x=0xFFFF; printf("%d \n",x--); }A) -32767 B) FFFEC) -1 D) -3276837、若有定义: float w;int a, b;则合法的switch语句是A) switch(w){ case 1.0: printf("*\\n");case 2.0: printf("**\\n");}B) switch(a);{ case 1 printf("*\\n");case 2 printf("**\\n");}C) switch(b){ case 1: printf("*\\n"); default: printf("\\n");case 1+2: printf("**\\n");}D) switch(a+b);{ case 1: printf("*\\n");case 2: printf("**\\n"); default: printf("\\n");}38、以下程序段的执行结果是int a, y;a=10; y=0;do{ a+=2; y+=a;printf("a=%d y=%d\n",a,y);if(y>20) break;{ while(a=14);A} a=12 y=12a=14 y=16a=16 y=20a=18 y=24B} a=12 y=12a=16 y=28C} a=12 y=12D} a=12 y=12a=14 y=26a=14 y=4439、若有以下调用语句,则不正确的fun函数的首部是main(){ …int a[50],n;…fun(n, &a[9]);…}A} void fun(int m, int x[]) B} void fun(int s, int h[41])C} void fun(int p, int *s) D} void fun(int n, int a)40、语句printf("a\bre\'hi\'y\\\bou\n");的输出结果是(说明:'\b'是退格符)A) a\\bre\\'hi\\'y\\\\\\bou B) a\\bre\\'hi\\'y\\bouC) re'hi'you D) abre'hi'y\\bou41、请选出正确的程序段A) int *p;scanf("%d",p);…B) int *s, k;*s=100;…C) int *s, k;char *p, c;s=&k;p=&c;*p='a';…D) int *s, k;char *p, e;s=&k;p=&c;s=p;*s=1;…42、已知指针p的指向如下图所示,则执行语句*--p;后*p的值是A) 30 B) 20C) 19 D) 2943、设已有定义:char *st="how are you";下列程序段中正确的是A) char a[11], *p; strcpy(p=a+1,&st[4]);B) char a[11]; strcpy(++a, st);C) char a[11];strcpy(a, st);D) char a[], *p;strcpy(p=&a[1],st+2);44、下列程序执行后的输出结果是mai(){ char arr[2][4];strcpy(arr,"you"); strcpy(arr[1],"me");arr[0][3]='&';printf("%s \n",arr);}A) you&ne B) youC) me D) err45、下列程序执行后的输出结果是void func1(int i);void func2(int i);char st[]="hello,friend!";void func1(int i){ printf("%c",st[i]);if(i<3){i+=2;func2(i);}}void func2(int i){ printf("%c",st[i]);if(i<3){i+=2;func1(i);}}main(){ int i=0; func1(i); printf("\n");}A) hello B) helC) hlo D) hlm46、假定下列程序的可执行文件名为prg.exe,则在该程序所在的子目录下输入命令行: prg hello good<回车>后,程序的输出结果是main()int argc, char *argv[]){int i;if(argc<-0)return;for(i=1;i<argc;i++)printf("%c", *argv[i]);}A) hello good B) hgC) hel D) hellogood47、下列程序执行后的输出结果是#define MA(x) x*(x-1)main(){ int a=1,b=2;printf("%d \n",MA(1+a+b));}A) 6 B) 8C) 10 D) 1249、执行下列程序时输入:123<空格>456<空格>789<回车>,输出结果是main(){char s[100];int c, i;scanf("%c",&c);scanf("%d",&i);scanf("%s",s);printf("%c,%d,%s \n",c,i,s);}A) 123,456,789 B) 1,456,789C) 1,23,456,789 D) 1,23,45650、执行下列程序时输入:123<空格>456<空格>789<回车>,输出结果是main(){char s[100];int c, i;scanf("%c",&c);scanf("%d",&i);scanf("%s",s);printf("%c,%d,%s \n",c,i,s);}A) 123,456,789 B) 1,456,789C) 1,23,456,789 D) 1,23,456答案:ACCDD ACCDBCDDBD ACAABACDAA DABBCBABDA CDBCCCBABC BBCDD。
大学大一C语言程序设计期末考试试卷及答案

大学大一C语言程序设计期末考试试卷及答案C语言程序设计试卷答卷说明:1、本试卷共6页,答题纸3页,4个大题,35个小题,满分100分,120分钟完卷。
2、闭卷考试,所有的答案都必须写在答题纸上,判卷以答题纸上答案为准。
3、本试卷适用于2011级1、2、3班。
题号一二三四总分总分人分数得分评卷人一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。
每小题1分,共20分)1、在C语言中,下列标识符中合法的是( )A). -int B). in1_3 C). A_B!D D). const2、不属于C语言基本数据类型的是( )A). int B). union C). char D). unsigned3、下面是对宏定义的描述。
不正确的是( )A). 宏不存在类型问题,宏名无类型,它的参数也无类型B). 宏替换不占用运行时间C). 宏替换只是字符串的简单替代D). 宏替换时先检查类型,类型一致时才可以替换4、C语言中,″\\xfds″在内存中占用的字节数是( )A).3 B).4 C).5 D).65、设int x;则执行printf(″%x\n″,~x^x);的结果是( )A). ffffffff B). ff C). 0 D). 16、对于while语句,错误的说法是( )A).用条件控制循环体的执行次数 B).循环体至少要执行一次C).循环体有可能一次也不执行 D).循环体中可以包含若干条语句7、执行下列语句后输出的结果是( )int a=8,b=7,c=6;if(a<b)if(b>c){a=c;c=b;}printf("%d,%d,%d\n",a,b,c);A).6,7,7 B).6,7,8 C).8,7,6 D).8,7,88、设int a=9,b=20;则printf(″%d,%d\n″,a--,--b);的输出结果是( )A).9,19 B).9,20 C).10,19 D).10,209、设static char x[ ]=″12345″,y[ ]={′1′,′2′,′3′,′4′,′5′,′\0′};那么( )A).x数组的长度等于y数组的长度B).x数组的长度大于y数组的长度C).x数组的长度少于y数组的长度D).x数组与y数组的存储区域相同10、设int i,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).147 B).159 C).357 D).36911、执行完下列语句后,n的值是( )int n;for (n=0 ; n<100 ; n=2*n+1);A).125 B).126 C).127 D).12812、有以下语句:int a=6;a+=a-=a*a;printf(“%d”,a);输出结果( )A).–132 B).–60 C). -24 D). 013、为了连接两个字符串s1与s2,应当使用( )A). strcat( s1,s2 ) B). strcpy( s1, s2 ) C). strlen( s1, s2 ) D). strcmp( s1, s2 )14、 设int a,*p ;则语句p=&a;中的运算符“&”的含义是( )A).位与运算 B).逻辑与运算 C).取指针内容 D).取变量地址15、 下面输出的结果为( )int a=13, b=64;printf(“%d \n”, !a || (b>>3) ); A).13 B).64 C).1 D).016、 下列定义正确的是( )A).enum t={a,b}x; B). enum t{1,2}x; C). enum{′+′,′-′}x; D). enum t{a,b}x;17、 设有定义:struct u{int a[4];float b[3]; char c[16];}aa;则printf(″%d \n″,sizeof(aa));的输出是( ) A).32 B).36 C).12 D).818、 数据-54.78在文本文件中占用的字节个数是( ) A).4 B).5 C).6 D).819、 在宏定义#define p(r) 3.14*r 中,请问宏名是( )A). p B). p(r) C). 3.14*r D). p(r) 3.14*r20、 要打开一个已存在的用于修改的非空二进制文件“hello.txt ”,正确语句是( )A). fp=fopen( "hello.txt ","r" ) B). fp=fopen( "hello.txt ","ab+" )C). fp=fopen( "hello.txt ","w" ) D). fp=fopen( "hello.txt ","r+" ) 得评__________________学院__________级___________班 姓名_______________ 学号_______________………………………………(密)………………………………(封)………………………………(线)………………………………分 卷人二、填空题(仔细阅读每小题的说明和源代码,并将正确答案写到答题纸上对应的题号处。
大一c语言考试题及答案解析

大一c语言考试题及答案解析1. 以下哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. variable-nameD. variable$name答案:B解析:在C语言中,变量名必须以字母或下划线开头,后面可以跟字母、数字或下划线。
选项A以数字开头,选项C和D包含非法字符(-和$),因此选项B是唯一合法的变量名。
2. C语言中,哪个关键字用于定义一个函数?A. classB. functionC. defD. void答案:D解析:在C语言中,定义函数的关键字是`void`,通常与`return`关键字一起使用来指定函数的返回类型。
例如,`void functionName()`定义了一个没有返回值的函数。
选项A和B不是C语言中的关键字,选项C是Python中的关键字。
3. 以下哪个选项是C语言中正确的注释方式?A. // This is a single line commentB. /* This is a single line comment */C. <!-- This is a single line comment -->D. Both A and B答案:D解析:在C语言中,单行注释可以使用`//`,而多行注释则使用`/*`开始和`*/`结束。
因此,选项A和B都是正确的注释方式,选项C是HTML中的注释方式,不适用于C语言。
4. C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C解析:在C语言中,`*`运算符用于计算两个数的乘积。
选项A是加法运算符,选项B是减法运算符,选项D是除法运算符。
5. 在C语言中,以下哪个选项是正确的字符串定义方式?A. char str[] = "Hello, World!";B. char str = "Hello, World!";C. char str[] = {'H', 'e', 'l', 'l', 'o', ',', ' ', 'W', 'o', 'r', 'l', 'd', '!', '\0'};D. Both A and C答案:D解析:在C语言中,字符串可以通过字符数组来定义,可以是直接赋值的字符串字面量(选项A),也可以是字符的列表(选项C),列表的末尾需要添加空字符`\0`来标识字符串的结束。
c++大一模拟试题(带答案),DOC

模拟试卷(A卷)一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在括号内。
每小题2分,共15小题,30分)1. 下列字符串中不能作为C++标识符使用的是()。
A、WHILEB、userC、_lvarD、9stars2. C++语言规定:在一个源程序中,main函数的位置()。
A、必须在程序的最开始B、必须在系统调用的库函数的后面C、可以任意D、必须在程序的最后3. 假定int类型变量占用两个字节,其有定义int x[10]={0,2,4};,则数组x在内存中所占字节数是( )。
A、3B、6C、10D、204. 判断字符型变量ch是否为大写英文字母,应使用表达式()。
A、ch>='A' & ch<='Z'B、ch<='A' ||ch>='Z'C、'A'<=ch<='Z'D、ch>='A' && ch<='Z'5. 已知下列语句中的x和y都是int型变量,其中错误的语句()。
A、x=y++;B、x=++y;C、(x+y)++;D、++x=y;6. 有如下程序段:int i=1;while (1) {i++;if(i == 10) break;if(i%2 == 0) cout << '*';}执行这个程序段输出字符*的个数是()。
A、10B、3C、4D、57.有如下程序#include<iostream>using namespace std;int func (int a, int b){return (a+b);}int main (){int x=2,y=5,z=8,r;r=func(func(x,y), z);cout<<r;return 0;}该程序的输出的结果是 ( )A、12B、13C、14D、158. 执行语句序列int n;cin >> n;switch(n){ case 1:case 2: cout << '1';case 3:case 4: cout << '2'; break;default: cout << '3';}时,若键盘输入1,则屏幕显示()。
大一c 考试题及答案解析

大一c 考试题及答案解析大一C考试题及答案解析一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个函数?A. intB. whileC. returnD. void答案:D解析:在C语言中,`void`关键字用于定义一个函数,表示该函数不返回任何值。
2. 下列哪个选项是C语言中的合法标识符?A. 2variableB. intC. _variableD. variable-答案:C解析:C语言中的标识符可以由字母、数字和下划线组成,但不能以数字开头,也不能包含空格或特殊字符。
3. 以下哪个选项是C语言中的逻辑运算符?A. &&B. ||C. +=D. +=答案:A解析:`&&`是C语言中的逻辑与运算符,用于判断两个表达式是否同时为真。
4. C语言中,以下哪个选项是正确的字符串声明?A. char str[10] = "Hello";B. char str[10] = 'Hello';C. char str = "Hello";D. char str[10] = {"Hello"};答案:A解析:在C语言中,字符串应该使用字符数组来声明,并使用双引号来初始化。
5. 下列哪个选项是C语言中的循环结构?A. ifB. switchC. forD. break答案:C解析:`for`是C语言中的循环结构之一,用于重复执行一段代码。
6. C语言中,以下哪个选项是正确的二维数组声明?A. int arr[3][4];B. int arr[][] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};C. int arr[3][];D. int arr[3][4] = {1, 2, 3, 4, 5, 6, 7, 8};答案:A解析:在C语言中,二维数组需要在声明时指定第一维的大小,第二维可以不指定。
大一c语言考试题及答案

大一c语言考试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的关键字?A. intB. floatC. doubleD. string答案:A2. C语言中,一个整型变量int所占的字节数是多少?A. 1B. 2C. 4D. 8答案:C3. 在C语言中,以下哪个语句是正确的赋值语句?A. int a = 10;B. int a = 10 = 5;C. int a = (10, 5);D. int a = 5;答案:A4. 以下哪个函数是C语言标准库中用于输入的函数?A. printf()B. scanf()C. getchar()D. puts()答案:B5. 以下哪个是C语言的控制语句?A. ifB. switchC. caseD. for答案:D6. 以下哪个是C语言中数组的声明方式?A. int array = {1, 2, 3};B. int array[] = {1, 2, 3};C. int array[3] = {1, 2, 3};D. int array[3] = 1, 2, 3;答案:B7. C语言中,以下哪个是正确的函数声明?A. int function(int a)B. int function(int a);C. int function(int a) {}D. int function(int a) { return a; }答案:B8. 在C语言中,以下哪个是正确的字符串定义方式?A. char str = "Hello, World!";B. char str[] = "Hello, World!";C. char str = 'Hello, World!';D. char str[12] = "Hello, World!";答案:B9. C语言中,以下哪个是正确的循环结构?A. for (int i = 0; i < 10; i++)B. while (int i = 0; i < 10; i++)C. do { } while (int i = 0; i < 10; i++)D. if (int i = 0; i < 10; i++)答案:A10. 在C语言中,以下哪个是正确的结构体声明?A. struct Student { int id; char name[50]; };B. struct { int id; char name[50]; };C. struct Student { int id, char name[50]; };D. struct Student id, name;答案:A二、填空题(每空2分,共20分)1. C语言中,一个字符型变量char所占的字节数是______。
宇天11级大一C语言模拟试卷B
《C 语言程序设计》模拟试卷(B) 所有答案写在答题卡上,否则不得分一、单项选择题(每题1分,共30分)1.C 语言程序总是从______开始执行。
A) 第一条语句 B) 第一个函数 C) 主函数 D) 子程序2.以下选项中正确的C 语言标识符是______。
A) a+b B) 3Dmax C) _25 D) %d3.以下选项中正确表示字符型常量的是______。
A) '\t' B) "a" C) 'abc' D) '279'4.以下选项中属于C 语言基本数据类型的是______。
A) 逻辑型 B) 双精度型 C) 复数型 D) 集合型5.已知:int a=8,b=5,c;,则执行语句c=a%b+0.3;后,c 的值是______。
A) 1 B) 1.3 C) 3 D) 3.36.设在程序中的a ,b ,c 均被定义为整型并且已赋予大于1的值,能正确表示代数式abc 1的表达式是______。
A)1/a*b*c B)1/(a*b*c) C)1/a/b/(float)c D)1.0/a/b/c7.已知字符'A'的ASCII 码值为十进制数65,则执行语句printf("%c",'A'+2);后,输出结果是______。
A) A B) C C) 65 D) 678.已知:int i=1;,则执行语句printf("%d",i++);后,输出结果是______。
A) 1 B) 2 C) -1 D) -29.以下选项中,和语句x*=y+2;等价的是______。
A) x=x*y+2; B) y=x*(y+2); C) x=y+2*x; D) x=x*(y+2);10.以下选项中能正确判断字符变量c 不是大写字母的表达式是______。
A) c<'A' && c>'Z' B) !(c<'A' && c>'Z')C) c>='A' || c<='Z' D) !(c>='A' && c<='Z')11.已知:float a=7.0,b=2.5;,则表达式(int)a/(int)b 的值是______。
C语言程序设计A期末模拟试题(1-4)
C 语言程序设计A 期末模拟试题一 一、单项选择题(每小题2分,共20分) 1. 由C++目标文件连接而成的可执行文件的缺省扩展名为( )。
A. cpp B. exe C. obj D. lik 2. x >0 && x<=10的相反表达式为( )。
A. x<=0 || x>10 B. x<=0 && x>10 C. x<=0 || x<=10 D. x>0 && x>10 3. 在下面的一维数组定义中,哪一个有语法错误。
( C ) A. int a[]={1,2,3}; B. int a[10]={0}; C. int a[]; D. int a[5]; 4. 假定p 是具有double 类型的指针变量,则表达式++p 使p 的值(以字节为单位)增加( C )。
A. 1 B. 4 C. sizeof(double) D. sizeof(p) 5. 当#include 后面的文件名用双引号括起来时,寻找被包含文件的方式是( B )。
A. 直接按系统设定的标准方式搜索目录 B. 先在源程序所在目录搜索,再按系统设定的标准方式搜索目录 C. 仅仅搜索源程序所在目录 D. 搜索当前逻辑盘上的所有目录 6. 假定指针变量p 定义为“int *p=new int(100);”,要释放p 所指向的动态内存,应使用语句( A )。
A. delete p; B. delete *p; C. delete &p; D. delete []p; 7. 假定AA 为一个类,a 为该类公有的数据成员,px 为指向该类对象的一个指针,则访问px 所指对象中数据成员a 的格式为( )。
A. px(a) B. px[a] C. px->a D. px.a 8. 栈具有( )的操作特性。
A. 先进先出 B. 先进后出 C. 进出无序 D. 进出任意 9. 对于任一个类,用户所能定义的构造函数的个数至多为( )。
大一C语言期末考试题及答案
大一C语言期末考试题及答案一、选择题(每题2分,共20分)1.C语言中,以下哪个选项是合法的标识符?A.2variableB.variable2C.variable-2D.variable$2答案:B2.下列哪个选项不是C语言的基本数据类型?A.intB.floatC.stringD.double答案:C3.在C语言中,以下哪个选项不是运算符?A.+B.C.%D.:答案:D4.若有定义:int a=5,b=3;,则表达式a%b的值是多少?A.2B.1C.0D.3答案:A5.下列哪个选项不是C语言中的控制语句?A.ifB.switchC.forD.while答案:B6.在C语言中,以下哪个选项是正确的字符串声明?A.char str[5]="hello";B.char str[]={'h','e','l','l','o'};C.char str[6]="hello";D.char str[]="hello";答案:D7.在C语言中,以下哪个函数用于计算字符串的长度?A.strlen()B.strcpy()C.strcat()D.strcmp()答案:A8.下列哪个选项不是C语言中的数组?A.int a[5];B.int a[5]={1,2,3,4,5};C.int a[]={1,2,3};D.int a={1,2,3};答案:D9.在C语言中,以下哪个选项是正确的函数声明?A.int add(int a,int b);B.int add(int,int);C.int add();D.int add(int a);答案:A10.在C语言中,以下哪个选项是正确的文件操作函数?A.fopen()B.fclose()C.printf()D.scanf()答案:A二、填空题(每空2分,共20分)1.在C语言中,用于定义一个整型变量的关键字是________。
大一的c与语言期末试题及答案
大一的c与语言期末试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义函数?A. intB. voidC. returnD. function答案:A2. 在C语言中,哪个运算符用于取模运算?A. %B. /C. *D. +答案:A3. 下列哪个选项是C语言中的合法变量名?A. 2variableB. variable2C. variable#2D. variable_2答案:D4. 在C语言中,以下哪个选项是正确的字符串定义?A. char str[] = "Hello";B. char str[] = {"Hello"};C. char str = "Hello";D. char str[] = 'Hello';答案:A5. C语言中,以下哪个选项是正确的注释?A. // This is a single line commentB. /* This is a single line comment */C. // This is a multi-line commentD. /* This is a multi-line comment */答案:A6. C语言中,以下哪个选项用于定义一个结构体?A. structB. struct{}C. struct nameD. struct name{}答案:D7. 在C语言中,以下哪个选项是正确的数组定义?A. int arr[] = {1, 2, 3};B. int arr[3] = {1, 2, 3};C. int arr = {1, 2, 3};D. int arr[3] = 1, 2, 3;答案:B8. C语言中,以下哪个选项是正确的指针声明?A. int *ptr;B. int ptr*;C. int *ptr = 0;D. int ptr = 0;答案:A9. 在C语言中,以下哪个选项是正确的文件包含指令?A. #include "stdio.h"B. #include <stdio.h>C. #include "stdio.h" and #include <stdio.h>D. #include "stdio.h" or #include <stdio.h>答案:B10. C语言中,以下哪个选项是正确的条件语句?A. if (x > 0) { ... }B. if x > 0 { ... }C. if (x > 0) ...;D. if x > 0 ...;答案:A二、填空题(每题3分,共15分)1. 在C语言中,定义一个整型变量并初始化为10的语句是____。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《C 语言程序设计》模拟试卷(A)所有答案写在答题卡上,否则不得分一、单项选择题(每题1分,共30分)1.以下选项中叙述正确的是________。
A )C 语言程序总是从第一个定义的函数开执行B )在C 语言程序中,被调用的函数必须在main()函数中声明 C )C 语言程序总是从main()函数开始执行D )C 语言程序中的main()函数必须放在程序的开始部分2.C 语言程序的三种基本结构是顺序结构、选择结构和________结构。
A )循环 B )递归 C )转移 D )嵌套 3以下选项中不属于C 语言的基本数据类型的是________。
A )int B )double C )char D )bool 4.以下选项中正确的C 语言标示符是________。
A)2b B )x_1 C )a@b D)3#h5.设C 语言中,一个int 型数据在内存中占2个字节,则unsigned int 型数据的取值范围为________。
A )0~255B )0~32767C )0~65535D )0~21474836476.以下选项中,和语句k=n++;等价的是________。
A )k=n,n=n+1; B )n=n+1,k=n; C )k=++n; D )k=n+1;7.已知:int i=3,j=2;,则执行语句j*=i+2;printf("%d",j);后,输出结果是________。
A )8 B )10 C )12 D )14 8.已知:int a=2,b=3,c;,执行语句c=(a=2,b=2);后,c 的值是________。
A )2B )3C )4D )5 9.已知:int x,y;float z;,若要给变量x,y,z 输入数据,以下正确的输入语句是________。
A )scanf("%d,%d,%d",x,y,z); B )scanf("%d,%d,%f",&x;&y;&z); C )scanf("%d,%d,%f",&x,&y,&z ); D )scanf("%2d,%2d,%3.2d",x;y;z ); 10.华氏温度f 和摄氏温度c 的关系是)32(95-=f c 。
已知:float c,f;,由华氏温度f求摄氏温度c 的不正确的赋值表达式是________。
A )c=5/9(f-32)B )c=5.0/9*(f-32)C )c=5*(f-32)/9D )c=(float)5/9*(f-32)11.一个C 程序中要调用sqrt()函数时,应在程序中包含的头文件是________。
A )stdio.h B )math.h C )string.h D )stdlib.h 12.已知:char c='a';,则执行语句printf("%c",c-32);后输出结果是________。
A )A B )65 C )97 D )出错 13.能正确表示逻辑关系“a ≥5或a ≤-1”的C 语言表达式是________。
A )a>=5.or.a<=-1 B) a>=5.and.a<=-1 C) a>=5&&a<=-1 D )a>=5‖a<=-114.已知int i=7;,则表达式9<=i<=20的值是________。
A)0 B)1 C)19 D)表达式不正确15.已知:int a=3,b=6,c=1;,则执行语句(a>b)&&(c=b+2);后,c的值是________。
A)0 B)1 C)6 D)816.if(表达式)……;语句中的表达式________。
A)只能是关系表达式 B)只能是逻辑表达式C)只能是关系表达式或逻辑表达式 D)可以使任何表达式17.已知:int k=1;,则语句while(k<=5)k++;中循环体语句执行的次数是________。
A)0 B)4 C)5 D)618.已知以下程序段int p;do{scanf("%d",&p);}while(p>=100);此处循环的结束条件是________。
A)P的值大于100 B)p的值大于等于100C)p的值小于100 D)p的值小于等于10019.已知:int s[8]={1,2,3,4,5,6,7,8},x;,则执行语句x=s[2]+s[4];后,x的值是________。
A)8 B)6 C)7 D)320.对一位数组初始化的语句是________。
A)int s[4]={0,1,2,3,4}; B)int s[]={0,1,2,3,4};C)int s[4];s={0,1,2,3,4}; D)int s[];s={0,1,2,3,4};21.已知:char s[20];,以下正确的语句是________。
A)s="Merry Christmas"; B)s[20]="Merry Christmas";C)strcpy(s,"Merry Christmas"); D)strcpy("Merry Christmas",s);22.已知:char a[3][10]={ "hefei","anqing","huangshan"};,能正确显示字符'q'的语句是________。
A) printf("%c",a[1][2]); B) printf("%c",a[2][2]);C) printf("%c",a[1][3]); D) printf("%c",a[2][3]);23.执行以下程序后,输出结果是________。
#include <stdio.h>void swap(int *x,int *y){ int t;t=*x,*x=y,*y=t;}void main(){ int a=12,b=24;swap(&a,&b);printf("%d,%d",a,b);}A)12,24 B)12,12 C)24,12 D)24,2424. 有以下定义#include <stdio.h>char a[10],*b=a;不能给数组a输入字符串的语句是________。
A) gets(a); B) gets(a[0]); C) gets(&a[0]); D) gets(b);25.若调用函数是用数组名作为实参,则传递给形参的是________。
A)数组首地址 B)数组的第一个元素值C)数组中全部元素的值 D)数组元素的个数26.执行以下程序后,输出结果是________。
#include <stdio.h>void main(){ int a[6]={4,2,10,5,20,7},*p=a;printf("%d",*(p+2));}A)2 B)3 C)6 D)1027. 有以下程序main( ){ int i,s=0;for(i=1;i<10;i+=2) s+=i+1;printf(“%d\n”,s);}程序执行后的输出结果是________。
A) 自然数1~9的累加和 B) 自然数1~10的累加和C) 自然数1~9中的奇数之和 D) 自然数1~10中的偶数之和28. 已知:struct student{ int number;char name[10];char sex;}s;则以下叙述正确的是________。
A)struct是类型名 B)s是类型名C)s是结构体变量 D)student是结构体变量29. 执行以下程序后。
输出结果是________。
#define SQ(a) a*a#include <stdio.h>void main(){ int a=3;printf("%d",SQ(a)/9);}A)1 B)3 C)6 D)930.若要打开已存在的文本文件abc.txt,并进行读操作,则正确的语句是________。
A)fopen("abc.txt","r"); B)fopen("abc.txt","wb");C)fopen("abc.txt","rb"); D)fopen("abc.txt","w");二、判断题(每题1分,共10分,正确划T,错误划F)1.C语言允许直接访问物理地址,能进行位操作。
()2.在C程序中main()函数的位置是固定的。
()3.C语言源程序的扩展名缺省为.C,源程序经编译后产生的文件扩展名是OBJ,经过链接后产生的目标文件扩展名是EXE。
()4.判断一个量是否为“真”时,以0代表“假”,以非零代表“真”。
()5._123不能作为c语言的变量名.()6.若int a=0,b=0; a+=1;b++;则a==b。
( )7.5++是一个合法的表达式。
()8.不能用printf函数输出字符。
( )9.do…while语句循环体至少执行一次。
()10.函数必须有形参。
()三、填空题(每空2分,共20分)1.已知int x=8,y=3;,则执行语句x%=y;后的值是________。
2.已知int a=7,b=2;,则执行语句printf("%d",a/b);后的输出结果是________。
3.执行语句printf("%.4f",2012.20122102);后的输出结果是________。
4.已知int x=010;,则执行语句printf("%d",x);后的输出结果是________。
5.数学条件式“20<x<30”对应的C语言表达式是________。
6.已知int a=1,b=2,c=3,d=4;,则条件表达式a<b?c:d的值是________。
7.已知int a[4][3]={{1,2,3},{3,4,5},{4,5,6},{5,6,7}}则表达式a[2][1]+a[3][2]的值是________。