大学_C语言程序设计试题及参考答案

C语言程序设计试题及参考答案

C语言程序设计试题及答案(一)

1. 若有定义"float x=1.5;int a=1,b=3,c=2;",则正确的switch语句是() (2分)

A.switch(x)

{

case 1.0: printf("__ ");

case 2.0 printf("____ ");

}

B.switch((int)x)

{

case 1.0: printf("__ ");

case 2.0 printf("____ ");

}

C.switch(a+b)

{

case 1: printf("__ ");

case 2+1: printf("____ ");

}

D.switch(a+b)

{

case 1: printf("__ ")

case c: printf("____ ");

}

标准答案:C

2. 若有宏定义如下:

#define X 5

#define Y X+1

#define Z Y__X/2

则执行以下printf语句后,输出的结果是( )

int a; a=Y;

printf("%d ",Z);

printf("%d",--a); (2分)

A.7,6

B.12,6

C.12,5

D.7,5

标准答案:D

3. 下面的.符号常量定义中,正确的是 ( ) (2分)

A.#define PI 3.14;

B.#include PI 3.14;

C.#define PI=3.14

D.#define PI 3.14

标准答案:D

4. 以下程序的输出结果是( )

int a, b;

void fun()

{ a=100; b=200; }

main()

{ int a=5, b=7;

fun();

printf("%d%d ", a,b);

} (2分)

A.100200

B.57

C.00

D.75

标准答案:D

5. 若有以下调用语句,则不正确的fun函数的首部是( ) main()

{ …

int a[50],n;

fun(n, a[9]);

} (2分)

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)

标准答案:D

6. 以下程序的输出结果是( )

fun(int x, int y, int z)

{ z=x__x+y__y; }

main()

{ int a=31;

fun(5,2,a);

printf("%d",a);

} (2分)

A.0

B.29

C.31

D.无定值

标准答案:C

7. 以下只有在使用时才为该类型变量分配内存的存储类说明是( ) (2分)

A.auto和static

B.auto和register

C.register和static

D.extern和register

标准答案:B

8. 在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是( ) (2分)

A.地址传递

B.单向值传递

C.由实参传给形参,再由形参传回实参

D.传递方式由用户指定

标准答案:B

9. 以下函数值的类型是( )

fun ( float x )

{ float y;

y= 3__x-4;

return y;

} (2分)

A.int

B.不确定

C.void

D.float

标准答案:A

10. C语言规定函数的返回值的类型是由( ) (2分)

A.return语句中表达式类型决定

B.调用该函数时的主调函数类型决定

C.调用该函数时系统临时决定

D.在定义该函数时所指定的函数类型决定

标准答案:D

11. 若有说明:int i,j=7, __p=i; 则与i=j;等价的语句是( ) (2分)

A.i= __P;

B.__p=__j;

C.i=j;

D.i=__ __p;

标准答案:B

12. 以下程序执行后a的值是( )

main()

{ int a,k=4,m=6,__p1=k,__p2=m;

a=p1==m;

printf("%d ",a);

} (2分)

A.4

B.1

C.0

D.a无定值

标准答案:D

13. 若有说明:long __p,a;则不能通过scanf语句正确给输入项读入数据的程序段是( ) (2分)

A.__p=a;scanf("%ld",p);

B.p=(long __)malloc(8);scanf("%ld",p);

C.scanf("%ld",p=a);

D.scanf("%ld",a);

标准答案:A

14. 以下程序的输出结果是( )

#include

int a[3][3]={1,2,3,4,5,6,7,8,9,},__p;

main()

{p=(int __)malloc(sizeof(int));

f(p,a);

printf("%d ",__p);

}

f(int __s,int p[][3])

{__s=p[1][1];} (2分)

A.1

B.4

C.7

D.5

标准答案:D

15. 设已有定义: char __st="how are you"; 下列程序段中不正确的是( ) (2分)

A.char a[12], __p; strcpy(p=a+1,st[4]);

B.char a[12]; strcpy(++a, st);

C.char a[12]; strcpy(a, st);

D.char a[12], __p; strcpy(p=a[1],st+2);

标准答案:B

18. 以下程序的输出结果是_____ B___。

main()

{

char cf[3][5]={"AAAA","BBB","CC"};

printf(""%s" ",ch[1]);

} (2分)

A."AAAA"

B. "BBB"

C."BBBCC"

D."CC"

标准答案:B

19. 以下程序的输出结果是_______。

main()

{

int b[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1; for(i=0;i for(j=i;j printf("%d ",t); } (2分)

A.3

B.4

C.1

D.9

标准答案:B

20. 在下列变量中,()不是局部变量 (2分)

A.register类

B.外部static类

C.auto类

D.函数形参

标准答案:B

C语言程序设计试题及答案(二)

一、单项选择题(20分,每题2分)

1.以下叙述中错误的是。C

A)对于double类型数组,不可以直接用数组名对数组进行整体输入或输出

B)数组名代表的是数组所占存储区的首地址,其值不可改变

C)当程序执行时,数组元素的下标越界时,系统给出“下标越界”的出错信息

D)可以通过赋初值的方式确定数组元素的个数

2.以下叙述中,正确的是:C

A)continue和break语句只能用于循环体内

B)continue和break语句只能用于分支语句中

C)continue语句只能用于循环体内

D)continue语句只能用于分支语句中

3.执行下列程序段后,正确的结果是 C

char x[8] = {8,7,6,5,0,0}, __s;

s = x+1;

printf(“%d\n”, s[2]);

A) n B) 0 C) 5 D) 6

4.C语言规定,简单变量作为实参时,他和对应形参之间的数据传递方式是:A

A)单向值传递 B) 地址传递 C) 相互传递 D) 由用户指定方式

5.变量的指针,其含义是指该变量的 B

A)值 B)地址 C)名 D)一个标志

6.执行下列程序段后,正确的结果是A

int i=5;

while(i=1)

i--;

printf(“%d”,i)

A) 5 B) 0 C) 1 D) 无限循环

7.for(i=0;i10;i++) A

if(i〈=5) break;

则循环结束后i的值为

A)0 B)1 C)5 D)10

8.执行下列程序段后,正确的结果是C

char x[8] = {8,7,6,5,0,0}, __s;

s = x+1;

printf(“%d\n”, s[2]);

A) n B) 0 C) 5 D) 6

9.C语言规定,简单变量作为实参时,他和对应形参之间的数据传递方式是:A

A)单向值传递 B) 地址传递 C) 相互传递 D) 由用户指定方式

10.设有数组定义:char str[]=”China”;则下面的输出为B

printf(“%d”,strlen(str));

A)4 B)5 C)6 D)7

二、填空题(30分,每空2分)

1.C语言提供的三种逻辑运算符是_____、__||___和__!__。

2.已知字符A的ASCII代码值为65,以下程序运行时若从键盘输入:B33回车,则输出结果是 1 B 。

#include stdio.h

main()

{

char a,b;

a=getchar();

scanf("%d",b);

a=a-A+0;

b=b__2;

printf("%c %c\n",a,b);

}

3.以下程序运行后的输出结果是 4 3 5 。

main()

{

int a=3,b=4,c=5,t=99;

if(ba ac) { t=a;a=c;c=t;}

if(ac bc) {t=b;b=a;a=t;}

printf("%d %d %d\n",a,b,c);

}

4.下面程序将字符数组a复制到字符数组b中。 main()

{

char a[]="I am a boy.",b[20];

int i;

for(i=___0____;a[i]!=\0;i++)

{

____ b[i]=a[i]____;

}

_____ b[i]= \0____;

}

5.若有定义:double x[3][5];

则x数组行下标的上限是__0___,列下标的下限是__4___。

6.以下程序运行后的输出结果是 101 。

#define S(x) 4__(x)__(x)+1

main()

{

int i=2,j=3;

printf("%d\n",S(i+j));

}

7.若有定义:double x[3][5];

则x数组行下标的上限是_0____,列下标的下限是_4___。

8.已知宏定义#define s 2+3

printf(”%d”,s__4);的输出结果是__14_____。

9.若有int a[3][2] = {{1},{3,2},{4,5}};,则a[1][1]的值是 2 。

三、写出程序的运行结果(30分,每题10分)

1.写出程序运行后的输出结果。

int f(int b[][4])

{

int i,j,s=0;

for(j=0;j4;j++)

{

i=j;

if(i2)

i=3-j;

s+=b[i][j];

}

return s;

}

main( )

{

int a[4][4]={{1,2,3,4},{0,2,4,5},{3,6,9,12},{3,2,1,0}}; printf("%d\n",f(a));

}

16

2.写出程序运行结果

#include stdio.h

main()

{

int i=10,j=0;

do

{

j=j+i;

i--;

}while(i2);

printf("%d\n",j);

}

52

3.写出程序运行后的输出结果。 int f(int b[][4])

{

int i,j,s=0;

for(j=0;j4;j++)

{

i=j;

if(i2)

i=3-j;

s+=b[i][j];

}

return s;

}

main( )

{

int a[4][4]={{1,2,3,4},{0,2,4,5},{3,6,9,12},{3,2,1,0}};

printf("%d\n",f(a));

}

16

四、编程(完形填空)(20分,每题10分)

1.打印所有水仙花数,所谓水仙花数是指一个三位数,其各位数的立方和等于其本身。

include stdio.h

main()

{

int i,j,k,m;

for(i=100; i1000; i++)

{

j=i/100;

k= i/10 ;

if( j__100+k__10+m==m__m__m+j__j__j+k__k__k )

printf("%d\n", i);

}

}

2.以下程序计算某年某月有几天,1、3、5、7、8、10、12月有31天,4、6、9、11月有30天,2月为28天、闰年2月为29天。

main()

{

int yy,mm,day;

scanf(“%d%d”,yy,mm);

switch(_mm__)

{

case1:

case3:

case5:

case7:

case8:

case10:

case12: day=__31_;

case4:

case6:

case9:

case11: day=__30___;

break;

case2: if(((yy%4==0)_____(yy0!=0))__||__(yy@0==0)) day=29;

else

day=28;

break;

}

}

程序设计基础(C语言)习题以及答案

一、选择题 1.下列属于C语言中合法的标识符的是( B ) A 、ex-1 B 、-cook C 、951a D 、if 2.若 x 为 float 型变量,则以下语句(A )。 x=213.82631; printf("%-4.2f\n",x); A、输出为213.83 B、输出格式描述符的域宽不够,不能输出 C、输出为213.82 D、输出为-213.82 3.一个C程序的执行是从(C ) A、main函数开始,直到最后一个函数结束 B、第一个函数开始,直到最后一个函数结束 C、main函数开始,直到main函数结束 D、第一条语句开始,直到最后一条语句结 4.构成C语言源程序的基本单位是(B ) A、过程 B、函数 C、子程序 D、命令 5.以下叙述不正确的是(D ) A、注释说明被计算机编译系统忽略 B、注释说明必须跟在“//”之后不能换行或者括在“/*”和“*/”之间且注释符必须配对使用 C、注释符“/”和“*”之间不能有空格 D、在C程序中,注释说明只能位于一条语句的后面 6.在C程序中,main函数的位置( A) A、可以任意 B、必须作为最后一个函数 C、必须作为第一个函数 D、必须放在它所调用的函数之后 7. C语言属于(C ) A、机器语言 B、汇编语言 C、高级语言 D、低级语言

8.使用“scanf("a=%d,b=%d",&a,&b)”,要使a,b的值均为25,正确的输入是(D )。 A、a=25 b=25(空格分开) B、25 25(空格分开) C、25,25 D、a=25,b=25 9.下列叙述中,不正确的是( C) A、分号是C语句的必要组成部分 B、C语句的注释可以写在语句的后面 C、主函数的名字不一定用main表示 D、函数是C程序的基本单位 10.C程序是由( B)构成的 A、若干过程 B、一个或多个函数 C、若干子程序 D、一个主程序与若干子程序 11. 以下程序的输出结果是(B )。 #include int main(){ int a=010,b=0x10,c=10; printf("%d,%d,%d",a,b,c); } A、10,10,10 B、8,16,10 C、16,8,10 D、8,10,10 12.执行以下程序后,输出结果为(A) #include int main(){ int x; float y; y=3.6; x=(int)y+10; printf("x=%d,y=%f",x,y); } A、x=13,y=3.600000 B、x=13.5,y=3.60000 C、x=13,y=3 D、x=13,y=3.6

大学_C语言程序设计试题及参考答案

C语言程序设计试题及参考答案 C语言程序设计试题及答案(一) 1. 若有定义"float x=1.5;int a=1,b=3,c=2;",则正确的switch语句是() (2分) A.switch(x) { case 1.0: printf("__ "); case 2.0 printf("____ "); } B.switch((int)x) { case 1.0: printf("__ "); case 2.0 printf("____ "); } C.switch(a+b) { case 1: printf("__ "); case 2+1: printf("____ ");

} D.switch(a+b) { case 1: printf("__ ") case c: printf("____ "); } 标准答案:C 2. 若有宏定义如下: #define X 5 #define Y X+1 #define Z Y__X/2 则执行以下printf语句后,输出的结果是( ) int a; a=Y; printf("%d ",Z); printf("%d",--a); (2分) A.7,6 B.12,6 C.12,5 D.7,5 标准答案:D 3. 下面的.符号常量定义中,正确的是 ( ) (2分) A.#define PI 3.14; B.#include PI 3.14;

C.#define PI=3.14 D.#define PI 3.14 标准答案:D 4. 以下程序的输出结果是( ) int a, b; void fun() { a=100; b=200; } main() { int a=5, b=7; fun(); printf("%d%d ", a,b); } (2分) A.100200 B.57 C.00 D.75 标准答案:D 5. 若有以下调用语句,则不正确的fun函数的首部是( ) main() { … int a[50],n; … fun(n, a[9]);

C语言程序设计期末复习题及参考答案

C语言程序设计期末复习题及参考答案 1. 若变量a的值为10,b的值为20,则表达式a++ + ++b的结果是多少? 答案:32 解析:在表达式a++ + ++b中,a++表示先使用变量a的值,然后再对a的值进行自增操作;++b表示先对变量b的值进行自增操作,然后再使用变量b的值。因此,a++ + ++b相当于10 + 21,结果为32。 2. 字符串连接函数strcat()的原型和功能是什么? 答案:strcat()函数的原型为char *strcat(char *str1, const char *str2),其功能是将字符串str2追加到字符串str1的末尾,并返回拼接后的字符串起始地址。 3. 请简述switch语句的用法及其与if语句的异同点。 答案:switch语句用于根据不同的情况执行不同的代码分支。其语法结构为: ```c switch (表达式) { case 值1: 代码块1;

break; case 值2: 代码块2; break; ... default: 默认代码块; break; } ``` switch语句与if语句的异同点如下: - 相同点:都用于根据条件执行不同的代码分支; - 不同点: 1)switch语句的条件表达式只能是整型或字符型,而if语句的条件表达式可以是任意的关系表达式; 2)switch语句针对的是多个离散的取值,if语句则根据条件的真假执行对应的代码; 3)switch语句执行完一个匹配的分支后会跳出整个switch语句,而if语句在执行条件为真的分支后会继续执行后续的代码。

4. 请写出一个函数,实现将字符串中的大写字母转换为小写字母的功能。 答案:示例代码如下: ```c void convertToLower(char *str) { int i; for (i = 0; str[i] != '\0'; i++) { if (str[i] >= 'A' && str[i] <= 'Z') { str[i] += 'a' - 'A'; } } } // 使用示例: int main() { char str[] = "Hello World";

C语言程序设计题库及答案

第1次客观题作业 一、单选题(共30题,每题3分) 1 .下面表示正确的是__A___。 A.C语言中的逗号是一种运算符 B.在C语言中,一行只能有一个语句 C.C中的变量不区分大小写 D.c中的关键字可以做为变量名 2 .字符型常量在内存中存放的是__A____代码值。 A.ASCII B.二进制 C.十进制D.八进制 3 .以下不正确的C语言标识符是(C )。 A.AB1 B._ab3 C.4ab D.a2_b 4 .以下运算符中优先级最低的运算符是_D____。 A.&& B.& C.|| D.= 5 .在C语言中,要求运算数必须是整型的运算符是___A___。A.% B./ C.< D.! 6 . C语言程序的基本单位是__C_____。 A.程序行B.语句C.函数D.字符 7 .将高级语言编写的程序翻译成目标程序的是___B____程序。A.解释程序B.编译程序C.汇编程序D.源程序8 .以下选项中,与k=n++完全等价的表达式是__A___。 A.k=n,n=n+1 B.n=n+1,k=n C.k=++n D.k+=n+1 9 .下列(A )不属于结构化程序设计的循环结构。 A.For B.While C.if-else D.do-while

10 .以下叙述中错误的是__A___。 A.用户所定义的标识符允许使用关键字 B.用户所定义的标识符应尽量做到“见名知意 C.用户所定义的标识符必须以字母或下划线开头 D.用户定义的标识符中,大、小写字母代表不同标识 11 .若有输入语句scanf( %d%d%d,&x,&y,&z);则不能使x值为5,y值为6,z值为7的输入是__A____。 A.5,6 ,7 B.5回车换行 6 7 C.5 6 7 D.5,6,7 12 .若i,j已定义为int类型,则下程序段中内循环体的总的执行次数是( B )。 for (i=3;i>0;i--) for (j=0;j<=4;j++){...} A.12 B.15 C.16 D.20 13 .下列选项中,合法的C语言关键字是_D___。 A.VAR B.Cher C.Integer D.default 14 .C语言中___A____。 A.能使用do-while语句构成的循环 B.do-while语句构成的循环必须用break语句才能退出 C.do-while语句构成的循环,当while语句中的表达式为非零时结束循环D.do-while语句构成的循环,当while语句中的表达式值小于零时结束循环15 .以下__D_____不是高级语言。 A.Basic语言 B.C语言 C.JAVA语言 D.汇编语言 16 .已知int x=2,y=3;则计算表达式y+=x-=x*=y后,x和y分别为(B )。 A.6,5 B.0,3 C.0,5 D.-4,2

C语言程序设计试题及答案

C语言程序设计试题及答案 在计算机科学与技术领域中,C语言是一种非常重要的编程语言。 作为一门高级编程语言,C语言广泛应用于操作系统、嵌入式系统、 图形界面开发等领域。为了帮助广大学习者更好地掌握C语言的相关 知识,以下是一些C语言程序设计的试题及其答案。 一、基础知识题 1. C语言中的关键字有哪些?请列举至少5个。 答案: 在C语言中,关键字是具有特殊含义的保留字,不可以被用作变量 名或函数名等标识符。常见的C语言关键字有:int、float、char、if、while等。 2. 请解释一下C语言中的指针是什么?如何声明一个指针变量? 答案: 指针是一种特殊的变量,它存储了一个变量的内存地址。通过指针,我们可以直接访问或修改所指向的变量的值。在C语言中,可以通过 使用"*"来声明一个指针变量。例如,声明一个指向整数类型的指针变 量可以使用以下代码: ```c int *ptr; ```

3. 请编写一个C语言函数,实现两个整数的交换。 答案: ```c void swap(int *a, int *b) { int temp = *a; *a = *b; *b = temp; } ``` 二、语法题 1. 请编写一个C语言程序,计算并输出1到100之间所有整数的和。答案: ```c #include int main() { int sum = 0; for (int i = 1; i <= 100; i++) { sum += i; }

printf("1到100之间所有整数的和为:%d\n", sum); return 0; } ``` 2. 请编写一个C语言函数,判断一个整数是否为素数(质数)。答案: ```c #include int isPrime(int n) { if (n <= 1) { return 0; } for (int i = 2; i * i <= n; i++) { if (n % i == 0) { return 0; } } return 1; }

大学C语言程序设计考试试题及答案3套

C语言程序设计 期末考试试题及其答案 一、单项选择题(本大题共20题,每题2 分,共40分) 1、以下不是C语言的特点的是( ) A、C语言简洁、紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件进行操作 D、C语言移植性好 2、以下不正确的C语言标识符是( ) A、ABC B、abc C、a_bc D、ab.c 3、一个C语言程序是由( ) A、一个主程序和若干子程序组成 B、函数组成 C、若干过程组成 D、若干子程序组成 4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( ) A、有零个或多个输入 B、有零个或多个输出 C、有穷性 D、可行性 5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( ) A、int B、float C、double D、不确定 6、在C语言中,char型数据在内存中的存储形式是( ) A、补码 B、反码 C、源码 D、ASCII码 7、有如下程序,输入数据:12345M678<cR>后(表示回车),x的值是( ) 。 #include main(){ int x; float y; scanf("%3d%f",&x,&y); } A、12345 B、123 C、45 D、345 8、若有以下定义int a,b; float x,则正确的赋值语句是( ) A、a=1,b=2 B、b++; C、a=b=5 D、b=int(x); 9、以下程序的执行结果是( ) #include { int i=10,j=10;

printf("%d,%d\n",++i,j--); } A、11,10 B、9,10 C、11,9 D、10,9 10、巳知字 母A的ASCII码是65,以下程序的执行结果是( ) #include main() { char c1='A',c2='Y'; printf("%d,%d\n",c1,c2); A、A,Y B、65,65 C、65,90 D、65,89 11、下列运算符中优先级最高的是( ) A、< B、十 C、% D、!= 12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。 A、’x’&&’y’ B、x<=y C、x||y+z&&y-z D、!((x<y)&&!z ||1) 13、判断char型变量cl是否为小写字母的正确表达式为( ) A、’a’<=c1<=f’z’ B、(c1>=a)&&(c1<=z) C、(‘a’>=c1) (‘z’<=c1) D、(c1>=’a’)&&(c1<=’z’) 14、字符串"a"在内存中占据的字节个数为( ) A、0 B、1 C、 2 D、 3 15、下面有关for循环的正确描述是( ) A、for循环只能用于循环次数已经确定的情况 B、for循环是先执行循环体语句,后判定表达式 C、在for循环中,不能用break语句跳出循环体 D、for循环体语句中,可以包含多条语句,但要用花括号括起来 16、下面程序的运行结果是( ) #include main() {int num=0; while(num<=2) {num++; printf(“%d ,num); } } A、1 B、1 2 C、1 2 3 D、1 2 3 4 17、以下描述正确的是( ) A、由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句。 B、do-while循环由do开始,用while结束,在while(表达式)后面不能写分号。

C语言程序设计试题及答案解析

C语言程序设计试题及答案解析 C语言程序设计试题及答案解析 第1、2、3章概述、类型、表达式 一、选择题 1、一个C程序由若干个C函数组成,各个函数在文件中的位置顺序为: () A、任意 B、第一个函数必须是主函数,其他函数任意 C、必须完全按照执行的顺序排列 D、其他函数可以任意,主函数必须在最后 2、下列四个叙述中,正确的是:() A、C程序中的所有字母都必须小写 B、C程序中的关键字必须小写,其他标示符不区分大小写 C、C程序中的所有字母都不区分大小写 D、C语言中的所有关键字必须小写 3、下列四个叙述中,错误的是:() A、一个C源程序必须有且只能有一个主函数 B、一个C源程序可以有多个函数 C、在C源程序中注释说明必须位于语句之后 D、C源程序的基本结构是函数 4、下面不是C语言合法标识符的是:() A、abc B、5n C、_4m D、x3 5、以下叙述不正确的是:() A. 分号是C语句的必要组成部分 B. C程序的注释可以写在语句的

后面 C. 函数是C程序的基本单位 D. 主函数的名字不一定非用main 来表示 6、C语言中允许的基本数据类型包括:() A. 整型、实型、逻辑型 B. 整型、实型、字符型 C. 整型、字符型、逻辑型 D. 整型、实型、逻辑型、字符型 7、C语言中能用八进制表示的数据类型为:() A、字符型、整型 B、整形、实型 C、字符型、实型、双精度型 D、字符型、整型、实型、双精度 型 8、下列属于C语言合法的字符常数是:() A、’\97’ B、”A” C、’\t’ D、”\0” 9、在C语言(VC环境)中,5种基本数据类型的存储空间长度的排列顺序为: () A、char B、char=int<="float C、char 10、在C语言中(VC环境),一定是长整型常数的是:() A、0L B、4962710

C语言程序设计试卷含答案

C语言程序设计试卷含答案 一、选择题(共20题,每题2分,共40分。下面每题后面用小括号内标注了正确答案) 1. 下列关键字中,用于定义变量的是(A) A. int B. if C. while D. for 2. 变量的作用域是指变量的(C) A. 大小 B. 类型 C. 可访问范围 D. 值 3. 下列语句中,用于输出字符的是(B) A. scanf B. printf C. input D. output 4. 已知整型变量a和b,那么a += b; 等价于(D) A. a = a + b; B. a -= b; C. a = a - b; D. a = a + b; 5. 在C语言中,用于表示“不等于”的运算符是(C) A. = B. == C. != D. >= 6. 下面哪个for循环语句是正确的(A) A. for(int i=0; i<10; i++) B. for(int i<10; i++) C. for(int i=0; i<10) D. for(i=0; i<10; i++) 7. 下列选项中,表示“或”运算符的是(D) A. & B. && C. | D. ||

8. 在C语言中,用于声明宏定义的关键字是(B) A. define B. #define C. const D. int 9. 如果要判断一个整数是否为负数,正确的if条件语句是(C) A. if(n > 0) B. if(n => 0) C. if(n < 0) D. if(n <= 0) 10. 下列哪个不是C语言的基本数据类型(D) A. int B. float C. char D. string 11. 下列关键字中,用于定义函数的是(C) A. main B. include C. void D. for 12. 在C语言中,表示“或者”的条件语句是(B) A. if B. else if C. switch D. while 13. C语言中的“++”运算符表示(A) A. 自增 B. 自减 C. 相加 D. 相减 14. 下列哪个语句用于在C语言中声明字符类型的变量(C) A. String name; B. var name; C. char name; D. character name; 15. 下列哪个不是C语言的关键字(D) A. enum B. long C. double D. true 16. 在C语言中,用于跳出当前循环并继续执行下一次循环的关键字是(D)

c语言程序设计基础试题及答案(一)

c语言程序设计基础试题及答案(一) C语言程序设计是计算机科学与技术中非常重要的一门课程,而对于初学者来说,基础的试题训练是必不可少的。下面,我们就来介绍一些C 语言程序设计基础试题及答案。 一、基础语法试题 1. 下列标识符不正确的是: (A)int (B)enum (C)233g (D)gf_cxy 答案:(C)233g 2. 下面哪条语句不正确: (A)i++; (B)i+=3; (C)a[i] = i; (D)十六进制数:0x16。 答案:(A)i++; 3. 下面哪条语句不正确: (A)if(a==b) (B)for(i=1; i<=10; i++) (C)return 0; (D)while(a=b)

答案:(D)while(a=b) 4. 下列不是C语言关键字的是: (A)if (B)while (C)while_if (D)return 答案:(C)while_if 二、数组及指针试题 1. 给定以下程序: int b[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int *p = b+3; printf("%d", *(p+2)); 输出结果是: (A)5 (B)8 (C)7 (D)6 答案:(B)8 2. 下面程序的输出结果是什么: int a[] = {1, 2, 3, 4, 5, 6};

int *p1 = (int *)(&a+1); int *p2 = (int *)((int)a+1); printf("%x,%x", *p1, *p2); (A) 1000,2000 (B) 6000,2001 (C) 2000,2001 (D) 6000,2000 答案:(D) 6000,2000 三、函数及文件操作试题 1. 下面程序的输出结果是什么: #include void fun(int, char *); int main() { char s[] = "Keeshawn"; fun(8, s+2); return 0; } void fun(int n, char *p) { if(n<=0) return; fun(n-1, p+1); putchar(*p); }

c语言程序设计课后习题及答案

c语言程序设计课后习题及答案 C语言程序设计是计算机科学与技术专业的一门基础课程,通过学习该课程,我们可以掌握C语言的基本语法和编程技巧,培养我们的编程思维和解决问题的能力。在课程学习过程中,老师会布置一些课后习题,以巩固我们的知识和提高我们的编程水平。下面我将分享一些C语言程序设计课后习题及其答案,希望对大家有所帮助。 1. 习题一:编写一个程序,输入一个整数,判断该数是否为素数。 ```c #include int main() { int num, i, flag = 0; printf("请输入一个整数:"); scanf("%d", &num); for (i = 2; i <= num / 2; i++) { if (num % i == 0) { flag = 1; break; } }

if (flag == 0) printf("%d是素数。\n", num); else printf("%d不是素数。\n", num); return 0; } ``` 2. 习题二:编写一个程序,输入一个正整数n,计算并输出1到n之间所有偶数的和。 ```c #include int main() { int n, i, sum = 0; printf("请输入一个正整数:"); scanf("%d", &n); for (i = 2; i <= n; i += 2) { sum += i; }

printf("1到%d之间所有偶数的和为:%d\n", n, sum); return 0; } ``` 3. 习题三:编写一个程序,输入一个正整数n,计算并输出n的阶乘。```c #include int main() { int n, i; long long factorial = 1; printf("请输入一个正整数:"); scanf("%d", &n); for (i = 1; i <= n; i++) { factorial *= i; } printf("%d的阶乘为:%lld\n", n, factorial); return 0;

C语言程序设计基础试题及答案

第一部分C语言基础 一、选择题 1.以下正确的C语言表记符是() A.%X B.a+b C.a123D.test! 2.已定义inta,b;则以下不正确的C语句是() A.a*=5;B.b/=2;C.a+=;D.b&&=a; 3.若x、i、j和k都是整型变量,则履行下边表达式后x的值为()x=(i=4,j=16,k=32) A.4B.16C.32D.52 语言中的表记符只好由字母、数字和下划线三种字符构成,且第一个字符()A.必然是字母B.必然为下划线 C.必然为字母或下划线D.能够是字母、数字、下划线中的任一字符 5.下边正确的字符常量是() A.“c”B.’”C.‘w’D.” 6.设inta=2,b=0,c;则履行语句c+=b&&a--后,c的结果为()。A.0,1B.1,0C.2,0D.不确立 7.以下不正确的C语言表记符是( )A)int B)a_1_2 C)ab1exe D)_x 8.以下是正确的C语言表记符是( )。 A)#define B)_123 C)%d D)\n

A)print B)i\am C)Pxq D)str_l _3d one_half My->book Cpp oodbs tart$it line#pow 10.下边各选项组中,均是C语言重点字的组是( )。 A)auto,enum,include B)switch,typedef,continue C)signed,union,scanf D)if,struct,type 11.以下不属于C语言重点字的是( )。 A)default B)register C)enum D)external 语言程序从main( )函数开始履行,因此这个函数要写在( )。 A)程序言件的开始 B)程序言件的最后 C)它所调用的函数的前面 D)程序言件的任何地点 13.以下对于C语言的表达错误的选项是( ) A)大写字母和小写字母的意义同样 B)不同样种类的变量能够在一个表达式中 C)在赋值表达式中等号(=)左侧的变量和右侧的值能够是不同样种类 D)同一个运算符号在不同样的场合能够有不同样的含义 14.在C语言中,错误的int种类的常数是( )。 A)32768 B)0 C)037 D)0xAF 15.将字符g赋给字符变量c,正确的表达式是( )。

大学_C语言程序设计试题含答案

C语言程序设计试题含答案 C语言程序设计试题含答案(一) 一、填空题 1.以下程序输入3个整数值给a,b,c,变量b中的'值给a,变量c中的值给b,变量a中的值给c,交换后输出a,b,c的值。 #include stdio.h main() { int a,b,c,__①_d___; printf("enter a,b,c");scanf("%d%d%d",a,b,c); ___d=a_②____;__a=b_③_____;____b=c④_____;_c=d__⑤_____; printf("%d,%d,%d",a,b,c); } 2.求出200以内的整数中,最大的可以被17整除的数是哪个数。 #include stdio.h ___①main()____ {int i; for(_i=200___②____;___③i=0_______;i--) {if(____i%17==0____④________) break;}

printf("%d\n",__⑤_i____); } 3.以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和。 main() { int i,a[20],sum,count; sum=count=0; for(i=0;i20;i++) scanf("%d", __①_a[i]__ ); for(i=0;__ ②_i20_;i++) ? { if(a[i]0) ?? { count++; ?? sum+= _a[i]__③___ ; ?? } ? } printf("sum=%d,count=%d\n",__sum④___,__⑤__count___); } 4.以下程序的功能是调用函数fun计算:m=1+2+3+4+…+9+10,并输出结果。请填空。 int fun( int n) { int m=0,i;

C语言程序设计试题及参考答案

C语言程序设计 一、选择题(共40分,每小题2分) 1、以下叙述不正确的是(D) A、一个C源程序可由一个或多个函数组成 B、一个C源程序必须包含一个main函数 C、C程序的基本组成单位是函数 D在C程序中,注释说明只能位于一条语句的后面 2、下列四个选项中,是不合法的用户标识符的选项是(B) A、abc B、12ACC sunD A 3、设有语句inta=4 ;则执行了语句a+=a-=a*a后,变量a的值是(A) A -24B、OC 4D 16 4、下列运算符中优先级最高的是(B) A、<B +C &&D == 5、在C语言中,运算对象必须是整型数的运算符是(A) A、% B、/ C、%和/ D + &以下关于运算符的优先顺序的描述正确的是(C) A、关系运算符<算术运算符<赋值运算符<逻辑与运算符 B逻辑与运算符<关系运算符<算术运算符<赋值运算符 C、赋值运算符V逻辑与运算符<关系运算符<算术运算符 D算术运算符<关系运算符<赋值运算符<逻辑与运算符 7、在C语言中,如果下面的变量都是int类型,则输出的结果是(C) sum=pad=5 pAd=sum++ pAd++, ++pAc;printf(“%d\n ”,pad); A 7 B 6C、5D 4 8、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是(B) A INPUTx、y、z; B、scanf(“%d%d%d ”,&x,&y,&z); C scanf(“%d%d%d, x,y,z); D read(“ %d%d%d, &x,&y,&z); 9、假定从键盘输入23456<回车>,下面程序的输出结果是:(C) voidmai n() {intm ,n; scanf(“ %2d%3”,&m &n); printf(“ m=%dn=%d\n,m, n); } A m=23n=45 B m=234n=56 C m=23n=456 D 语句有错误 10、若运行时,给变量x输入12,则以下程序的运行结果是(A) mai n() {intx ,y; scanf(“ %d ,&x);

大学_大学《C语言》试题及答案

大学《C语言》试题及答案大学《C语言》试题及答案(一) 1.下列定义变量的'语句中错误的是______。 A、int _int B、double int_ C、char For D、float US$ 答案:D 知识点:常量、变量和标识符 2.以下不合法的用户标识符是______。 A、j2_KEY B、Double C、4d D、_8_ 答案:C 知识点:常量、变量和标识符 3.以下4组用户定义标识符中,全部合法的一组是______。 A、_main enclude sin B、If -max turbo C、txt REAL 3COM D、int k_2 _001 答案:A

4.以下定义语句中正确的是______。 A、char a=A b=B; B、float a=b=10.0;(正解a=10.0 b=10.0) C、int a=10,__b=a; D、float __a,b=a; 答案:C 知识点:常量、变量和标识符 5.以下不能定义为用户标识符的是______。 A、scanf B、Void C、_3com_ D、int 答案:D 知识点:常量、变量和标识符 6.以下有4组用户标识符,其中合法的一组是______。 A、For -sub Case B、4d DO Size C、f2_G3 IF abc D、WORD Void define 答案:C

7.C语言中最简单的数据类型包括______。 A、整型、实型、逻辑型 B、整型、实型、字符型 C、整型、字符型、逻辑型 D、整型、实型、逻辑型、字符型 答案:B 知识点:常量、变量和标识符 8、下列选项中,合法的C语言关键字是______。 A、VAR B、cher C、integer D、default 答案:D 知识点:常量、变量和标识符 9.以下不能定义为用户标识符的是______。 A、Main B、_0 C、_int D、sizeof 答案:D 知识点:常量、变量和标识符 10.下列叙述中正确的是______。 A、C语言中既有逻辑类型也有集合类型 B、C语言中没有逻辑类型但有集合类型

南开大学2021年9月《C语言程序设计》作业考核试题及答案参考4

南开大学2021年9月《C语言程序设计》作业考核试题及答案参考 1. C++利用类来实现面向对象程序设计的继承性。( ) A.错误 B.正确 参考答案:A 2. 在微型计算机系统中,存储一个汉字的国标码所需要的字节数是( ) A.1 B.2 C.3 D.4 参考答案:B 3. 如果(SP)=30H,执行PUSH BX指令后,(SP)=( )。 A.28H B.2EH C.32H D.31H 参考答案:B 4. 定义在main函数后的任何函数都需在main中进行函数声明。( ) A.错误 B.正确 参考答案:A 5. 下面关于静态成员的描述中,正确的是( )。 A.静态数据成员是类的所有对象共享的数据 B.类的每个对象都有自己的静态数据成员 C.类的不同对象有不同的静态数据成员值 D.静态数据成员不能通过类的对象访问 参考答案:A

6. C+利用类的派生机制实现面向对象程序设计的继承性。( ) A.错误 B.正确 参考答案:B 7. 在下面有关友元函数的描述中,正确的说法是( )。 A.友元函数是独立于当前类的外部函数 B.一个友元函数不能同时定义为两个类的友元函数 C.友元函数必须在类的外部定义 D.在外部定义友元函数时,必须加关键字friend 参考答案:A 8. 函数模板是基于不同的数据类型完成类似的操作,而重载函数则是对不同的数据类型完成相同的操作。( ) A.错误 B.正确 参考答案:A 9. 无论何时编译器都为类构造一个无参数的缺省的构造函数。( ) A.错误 B.正确 参考答案:A 10. 在C语言中,字母的大小写不被区分。( ) A.错误 B.正确 参考答案:A 11. 两个指针变量不可以( )。 A.相加

C语言程序设计试题含答案

C语言程序设计 (本试卷考试时间 120 分钟) 一、单选题 ( 本大题 10 道小题,每小题 1.5 分,共15 分),从下面题目给出的A、B、C、D四个可供选择的答案中选择一个正确答案。 1.下面标识符中,可以作为合法变量名的是( )。答案:B 知识点:【24010201】知识考核要求:【2】能力考核要求:【1】难度系数:【A】 A.m@q B.Mo_day C.mn/5 D.char 2.设有如下语句: int s,num; s=1005;num=2; 则表达式(float)s/num的值是()。答案:C 知识点:【24030704】知识考核要求:【2】能力考核要求:【1】难度系数:【A】 A.502.000000 B.502 C.502.500000 D.503.000000 3.设有如下定义语句: chara[10]="ABC"; 则printf("%s" , a+1);的输出结果为( )。答案:D 知识点:【24040101】知识考核要求:【3】能力考核要求:【1】难度系数:【B】 A.ABC B.C C.AB D.BC 4.下列语句的输出结果是()。 inta=0123,b=0456; printf("%o\n",b-a);答案:C 知识点:【24040101】知识考核要求:【3】能力考核要求:【1】难度系数:【B】 A.0456 B.0123 C.333 D.579 5.以下的for语句循环执行的次数是()。 for(x=0,y=0;(y!=20&&(x<20));x++);答案:C 知识点:【24040301】知识考核要求:【3】能力考核要求:【1】难度系数:【C】 A.无限次

大学C语言考试题库(含答案)

单项选择 ================================================== 题号:1482 执行以下程序段后,输出结果和a的值是()。 int a=10; printf("%d",a++); A、11 和 10 B、11 和 11 C、10 和 11 D、10 和 10 答案: C 题号:2100 已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'.执行语句printf("%d,%d",c1,c2-2);后,输出结果是 A、65,66 B、A,B C、65,68 D、A,68 答案: A 题号:5055 相同结构体类型的变量之间,可以()。 A、比较大小 B、地址相同 C、赋值 D、相加 答案: C 题号:3217 int a[10];合法的数组元素的最小下标值为()。 A、1 B、0 C、10 D、9 答案: B 题号:45 能正确表示逻辑关系:" a≥10或a≤0 "的C语言表达式是 A、a>=0 | a<=10 B、a>=10 or a<=0 C、a>=10 && a<=0

D、a>=10 || a<=0 答案: D 题号:157 main() {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,2 B、2,1 C、1,1 D、1,0 答案: B 题号:4784 设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的 数据类型为()。 A、不确定 B、double C、int D、float 答案: B 题号:1647 以下程序中,while循环的循环次数是______ main() { int i=0; while(i<10) { if(i<1) continue; if(i==5) break; i++; } } A、死循环,不能确定次数 B、6

国家开放大学C语言程序设计章节测试参考答案

国家开放大学《C语言程序设计》章节测试参考答案 第一章C语言概述 自测练习一:C语言字符集自测练习 1.在C语言字符集中,包含有全部26个英文大写字母和对应的小写字母。(√) 2.在C语言字符集中,一个大写英文字母和它的小写英文字母被视为不同的字符。(√) 3.在C语言程序中,ABC和abc被作为同一标识符使用。(×) 自测练习二:C语言字符集自测练习 1.在C语言中,保留字是有专门含义和作用的,不能作为一般标识符使用。(√) 2.在C语言中,作为标识符的第一个字符只能是英文字母或下划线,不能是数字字符。(√) 3.C语言中使用的字符常量,其起止标记符是()。 a. 双引号 b. 尖括号 c. 单引号 d. 中括号 4.C语言中使用的字符串常量,其起止标记符是()。 a. 双引号 b. 中括号 c. 尖括号 d. 单引号 自测练习三:C语句分类自测练习 1.在C语言中,一条简单语句的结束符是()。 a. 分号 b. 空格 c. 冒号 d. 逗号 2.在C语言中,每条复合语句的开始标记字符为()。

a. < b. [ c. ( d. { 3.不符合C语言规定的复合语句是()。 a. {x=0;} b. {} c. {;} d. {y=10} 4.C语言中的选择类语句有两条,它们是()。 a. else和case b. if和switch c. if和else d. switch和case 自测练习四:函数分类与使用自测练习 1.在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为()。 a. name b. main c. MAIN d. function 2.C语言程序中的基本功能模块为()。 a. 标识符 b. 函数 c. 表达式 d. 语句 3.一个函数定义所包含的两个部分是()。 a. 函数头和函数体 b. 函数原型和函数体 c. 函数名和参数表

相关主题
相关文档
最新文档