当前位置:首页 大学排名 C语言的题目

C语言的题目

发布时间:2023-01-30 22:44:25

1 C 2 C 3 B 4 D

1

C语言的题目

这是一个if else 语句,首先你要明白,if的内嵌语句 是第一个分号之前的,因为在C语言中分号是一个分号 就是一个语句.第一个if 的内嵌语句是(y!=10)if(!ok1)a=1因为X<Y成立,所以与这个if配对的else不必再做,接着做这个if的内嵌语句,Y不等于10成立,接着做!ok1,因为ok1值为5所以!ok1为假,跳出做a=1.做完以后接着输出a=1既可选C

2

第一句定x=1

做if语句,x=2?不成立,所以不做if的内嵌语句printf("ok")而是做与if相应的else语句if(x<2)printf("%

dn",x)else printf("Quit")x<2成立,所以做这个if 语句,输出x,x的值为1,选C

3

条件运算符的做法是括号内为真执行逗号前的,为假执行逗号后的.所以exp?意思是如果exp不等于0(为真)执行表达式1,否则执行表达式2

4

首先要知道条件运算符是自右至左的结合方式,所以可以理解为k<a?k:(c<b?c:a),从右往左算,先算括号内的,结果为C.再算k<a?k:c得出结果为C

好好算下,不要心急,我是大一刚学过C语言,这些题都做过的.南大题库里就有.

c语言计算机二级考试选择题如图?

一、单项选择题(共10题,每题2分,共20分。在备选答案中选择一个最佳答案。多选、错选、不选不得分)

1、不是C语言基本数据类型的是( )。

A、指针类型B、整型

C、字符型D、实型

2、设有:int a=3, b= 4, c= 5,x , y表达式0 &&(x=a)&&(y=b)的值为()。

A、1 B、0C、3D、4

3、设有语句 int a=3 则执行了语句 a+=6后,变量a 的值为( )。

A、18B、-3C、9 D、12

4、执行以下程序段后,输出的y值为( )

void main()

{ int a[]={2,4,6,8,10}

int y, *p

p=&a[0]

y=*p printf(“%d”,y)

}

A、2 B、4C、6D、8

5、有定义语句:float a[4]则分配给数组a的内存空间为( )字节。

A、 20 B、 12 C、 16 C、10

6、以下描述错误的是( )。

A、break语句可用于while语句。

B、break语句和continue语句的作用是一样的。

C、在循环语句中使用break语句是为了跳出循环,提前结束循环。

D、在循环语句中使用continue语句是为了结束本次循环,而不终止整个循环。

7、C语言中规定,if语句的嵌套结构中,else总是( )。

A、与最近的if 配对 B、与第一个if 配对

C、按缩进位置相同的if配对 D、与最近的且尚未配对的if 配对

8、说明语句“int (*p)( )”的含义是( ) 。

A、p是一个指向一维数组的指针变量。

B、p是指针变量,指向一个整型数据。

C、p是一个指向函数的指针,该函数返回一个int型数据。

D、以上都不对。

9、以下对二维数组c的正确声明是 ( ) 。

A、int c[3][ ] B、int c(3,4)

C、int c(2)(2) D、int c[3][2]

10、下述程序段执行后输出结果为( )。

int x=100, y=200

printf ("% d", (x, y))

A、100 B、200 C、100,200 D、编译出错

二、填空题(共7题,共10空,每空1分,共10分。将答案填在题中横线上)

1、C语言提供的三种逻辑运算符是 && 、|| 和!

2、函数的返回值是通过函数中的 return语句获得的。

3、在"int a[ ][3]={{1},{3,2},{4,5,6},{0}}"定义后,a[2][2]的值为_6__ _;

4、对于"int *pa[5];" pa是一个具有5个元素的_数组指针_,每个元素是一个指向int型变量的__指针__;

5、单向链表的尾节点next指针应赋值__ NULL___;

6、在语句for(x=1,y=3;x>y;y++)中循环体执行的次数为0 。

7、int a[5]数组a的首地址为2000,则元素a[1]的地址为 2002 ,元素a[2]的地址为2004。

三、程序填空题(共2题,共5空,每空4分,共20分)

1、以下程序完成计算1-1/2+1/3-1/4+1/5+……前n 项和,请填空。

#include <stdio.h>

int main( )

{ int i, n, flag

float sum

scanf("%d", &n)

flag= 1

sum=0

for(i=1i<=ni++ )

{ sum+=(float)flag/i

flag=-flag

}

printf("%.3fn", sum)

}

2、以下程序的功能是从键盘输入n个整数,统计其中正数、0、负数的个数,请填空。

#include <stdio.h>

void main( )

{int a, i, count1,count2,count3

count1=count2=count3=0

for(i=1i<=ni++)

{ scanf(“%d”, &a)

if(a>0) count1++

else if(a==0)count2++

else count3++

}

printf(“正数:&d个,零:%d个,负数:%d个n”, count1,count2,count3 )

}

四、运行程序结果题(共4题,每题6分,共24分)

1、写出程序运行结果。

void main( )

{ int x=1,y=2,t;

int *p1,*p2

p1=&xp2=&y

t=*p1*p1=*p2*p2=t

printf("x=%d,y=%dn",x,y)

}

运行结果为:

程序有错,不能运行!或写:

x=2,y=1

2、写出程序运行结果。

#include<stdio.h>

int max(int a,int b)

{ int c

c=a>b?a:b

return(c)

}

int min(int a,int b)

{int c

c=a<b?a:b

return(c)

}

void main()

{ int a=2,b=6

printf("max=%dn",max(a,b))

printf(“min=%dn”,min(a,b))

}

运行结果为:

程序有错,不能运行!或写:

max=6

min=2

3、写出程序运行结果。

#include <stdio.h>

void main()

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

int i,j,sum=0

for (i=0i<3i++)

for(j=0j<3j++)

if(i==j) sum=sum+a[i][j]

printf(“sum=%dn”,sum)

}

运行结果为:

程序有错,不能运行!或写:

sum=15

4、写出程序运行结果。

void main( )

{ int n,f

n=1

while(n<=10)

{ f=f*n

n+=2

}

printf(“f=%dn”,&f)

}

运行结果为:

程序有错,不能运行!或写:

f=不确定

五、程序设计题(共2题,每题13分,共26分)

1、将一个数组按逆序存放,如元素1、2、3、4、5,按逆序存放后为5、4、3、2、1。

全国计算机二级考试试题题库(附答案)

下列各题 A) 、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项在答题

卡相应位置上涂黑,答在试卷上不得分。

(1) 应用软件是指

A) 所有能够使用的软件 B) 能被各应用单位共同使用的某种软件

C) 所有微机上都应使用的基本软件 D) 专门为某一应用目的而编制的软件

(2) 下列述叙中错误的是

A) 计算机要经常使用不要长期闲置不用

B) 为了延长计算机的寿命,应避免频繁开关计算机

C) 在计算机附近应避免磁场干扰

D) 计算机用几小时后,应关机一会儿再用

(3) 下列字符中,ASCII码值最小的是

A) A B) a C) Z D) x

(4) 用晶体管作为电子器件制成的计算机属于

A) 第一代 B) 第二代 C) 第三代 D) 第四代

(5) 下列各不同进制的四个无符号数中,最小的数是

A) ()2 B) (37)8 C) (75)10 D) (2A)16

(6) 二进制数转换成十六进制数是

A) B) C) D)

(7) 下列各无符号十进制数中,能用八位二进制表示的是

A) 296 B) 333 C) 256 D) 199

(8) 计算机的软件系统可分类为

A) 程序与数据 B) 系统软件与应用软件

D) 操作系统与语言处理程序 D) 程序、数据与文档

(9) 486机中的CPU同时能处理的二进制位数为

A) 8 B) 16 C) 32 D) 64

(10) 在使用计算机的过程中,需要重新启动DOS,则要

A) 按Ctrl+Break键 B) 按^C键 C) 按Ctrl+Alt+Del键 D) 按^H键

(11) 现要从软盘启动DOS(软盘中已存有DOS系统),设有如下一些操作:①打开计算机

电源②将该软盘插入A驱动器③关好A驱动器门。则冷启动的操作顺序应为

A) ①→②→③ B) ③→②→① C) ②→①→③ D) ②→③→①

C语言的题目

(12) 设当前盘中某一文件路径为ACB,当前目录为A。下列命令中错误的是

A) CD.. B) RD ACB

C) TYPE ACB D) TYPE CB

(13) 设当前盘中的根目录下有一子目录AB,在子目录AB下有一文件。现要查看文件

的内容,应使用命令

A) TYPE AB B) TYPE AB

C) TYPE D) DIR AB

(14) 自动批处理文件必须放在

A) C盘根目录中 B) A盘根目录中

C) 启动盘的任一个目录中 D) 启动盘的根目录中

(15) 设当前盘当前目录为C:USERXYP,且当前盘当前目录为空,则下列命令中能正

确执行的是

A) RD C:USERXYP B) RD USERXYP

C) MD USERXYPUSER D) MD USERXYPXY

(16) 下列DOS命令中,合法的是

A) DISKCOMP B) TYPE >>

C) COMP A: B: D) COMP A: A:

(17) 设当前盘为C盘,所用的所有软盘已格式化,且容量相同,则下列DOS命令中错

误的是

A) DISKCOPY A: A: B) COPY A:*.* C) COPY *.* D) COPY A:*.* C:

(18) 下列DOS命令中错误的是

A) TYPE >PRN B) TYPE PRN

C) COPY *.TXT PRN D) COPY CON PRN

(19) 下列四组DOS命令中,互相等价的一组是

A) COPY A:*.* B:与DISKCOPY A: B:

B) COPY +与TYPE >>

C) COPY + 与COPY +

D) TYPE *.FOR>CON与COPY *.FOR CON

(20) 设C盘目录结构如下:

且C盘根目录下文件的内容为

CD FORTRAN

CD TC

如果在A驱动器中插入一张根目录中只有扩展名为.C的若干文件(即A盘中无DOS系统

文件)的软盘片,则由C盘启动DOS系统后,第一次键入下列命令中,正确的是

A) COPY A:*.C B) COPY A:*.C TC

C) COPY A:*.C FORTRAN D) CD USER

(21) C语言提供的合法的数据类型关键字是

A) Double B) short C) integer D) Char

(22) 在C语言中,合法的长整型常数是

A) 0L B) 4962710 C) D)

(23) 表达式:10!=9的值是

A) true B) 非零值 C) 0 D) 1

(24) 合法的C语言中,合法的长整型常数是

A) 't' B) "A" C) 65 D) A

(25) 若有说明和语句:

int a=5

a++

此处表达式a++的值是

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

(26) 在下列选项中,不正确的赋值语句是

A) ++tB) n1=(n2=(n3=0))C) k=i==jD) a=b+c=1

(27) 若有说明:int i,j=7, *p=&i,则与i=j等价的语句是

A) I= *PB) *P=*&JC) i=&jD) i=* *p

(28) 不能把字符串:Hello!赋给数组b的语句是

A) char b[10]={'H','e','l','l','o','!'}

B) char b[10]b="Hello!"

C) char b[10]strcpy(b,"Hello!")

D) char b[10]="Hello!"

(29) 若有以下说明:

int a[12]={1,2,3,4,5,6,7,8,9,10,11,12}

char c='a',d,g

则数值为4的表达式是

A)a[g-c] B)a[4] C)a['d'-'c'] D)a['d'-c]

(30) 若有以下说明:

int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a

则数值为6的表达式是

A) *p+6 B) *(p+6) C) *p+=5 D) p+5

(31) 若有以下说明:

int w[3][4]o={{0,1},{2,4},{5,8}}

int(*p)[4]=w

则数值为4的表达式是

A) *w[1]+1 B) p++,*(p+1) C) w[2][2] D) p[1][1]

(32) 若程序中有下面的说明和定义

struct abc

{int xchar y}

struct abc s1,s2

则会发生的情况是

A) 编译进错 B) 程序将顺利编译`连接`执行

C) 能顺利通过编译`连接`但不能执行 D) 能顺利通过编译`但连接出错

(33) 能正确表示a≥10或a≤0的关系表达式是

A)a>=10 or a<=0 B)a>=10│a<=0

C)a>=10││a<=0 D)a>=10 ││a<=0

(34) 下面程序的输出是

main()

{ int x=3,y=6,a=0

while(x++!=(y+=o1))

{ a+o=1

if(y

#include

main()

{ char ss[10]="12345"

strcat(ss,"6789")

gets(ss)printf("%sn",ss)

}

A) ABC B) ABC9 C) 123456ABC D) ABC456789

(35) 下面程序的输出是

main()

{ char *a=""

int v1=0,v2=0,v3=0,v4=0,k

for(k=0s[k]k++)

switch(s[k])

{ default:v4++

case '1': v1++

case '3': v3++

case '2': v2++}

printf("v1=%d,v2=%d,v3=%d,v4=%dn",v1,v2,v3,v4)}

A) v1=4,v2=2,v3=1,v4=1 B) v1=4,v2=9,v3=3,v4=1

C) v1=5,v2=8,v3=6,v4=1 D) v1=8,v2=8,v3=8,v4=8

(36) 下面程序的输出是

main()

{int k=11printf("k=%d,k=%o,k=%xn",k,k,k)}

A)k=11,k=12,k=11 B)k=11,k=13,k=13 C)k=11,k=013,k=0xb D)k=11,k=13,k=b

(37) 若有以下程序段,w和k都是整型变量:

w=k

LB: if(w==0) go to LE

w--

printf("*")

goto LB

LE: ┆

则不能与上面程序段等价的循环语句是

A)for(w=kw!=0w--) printf("*")B)for(w=kw--w)printf("*")

C)w=kD)w=k

while(w--!=0)printf("*")w++do{ w--printf("*")}while(w!=0)

(38) 若有说明,double *p,a则能通过scanf语句正确给输入项读入数据的程序段是

A)*p=&ascanf("%lf",p)B)p=(double *)malloc(8)scanf("%f",p)

C) p=&ascanf("%lf",a)D)p=&ascanf("%le",p)

(39) 当执行下面程序且输入:ABC时,输出的结果是

#include

#include

main()

{ char ss[10]="12345"

gets(ss)printf("%sn",ss)}

A) ABC B) ABC9 C) 123456ABC D) ABC456789

(40) 若有以下的说明和语句:

main()

{int t[3][2], *pt[3],k

fpr(k=ok<3k++)pt[k]=t[k]

}

则以一选项中能正确表示t数组元素地址的表达式是

A) &t[3][2] B) *pt[0] C) *(pt+1) D) &pt[2]

(41) 下面程序输出数组中的最大值,由s指针指向该元素.

main()

{ int a[10]={6,7,2,9,1,10,5,8,4,3,},*p,*s

flr(p=a, s=ap-a<10p++)

if(---?---)s=p

printf("The max:%d",*s):

}

则在if语句中的判断表达式应该是

A) p>s B) *p>*s C) a[p]>a[s] D) p-a>p-s

(42) 下面程序的输出是

#include

main()

{ char*a="abcdefgh"

fun(a)puts(a)}

fun (char * s)

{ int x=0,ychar c

for(y=strlen(s)-1x

A)abcdefgh B)hgfdecba C)dcbahgfe D)hgfedcba

(43) 若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,b)))在此函数调用语句

中实参的个数是

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

(44) 下面程序的输出是

main()

{ int t=1fun(fun(t))}

fun(int h)

{ static int a[3]={1,2,3}

int k

for(k=0k<3k++) a[k]+=a[k]-h

for(k=1k<3k++) printf("%d",a[k])

printf("n")return(a[h])}

A)1,2,3, B)1,3,5, C) 1,3,5, D) 1,3,5,

1,5,9, 1,3,5, 0,4,8, -1,3,7,

(45) C语言中,函数的隐含存储类别是

A)auto B)static C)extern D)无存储类别

(46) 下面程序的输出是

C语言的题目

int w=3

main()

{ int w=10printf("%dn",fun(5)*w)}

以上就是关于C语言的题目全部的内容,如果了解更多相关内容,可以关注醉学网,你们的支持是我们更新的动力!

温馨提示:
本文【C语言的题目】由作者 大学全部排名 转载提供。 该文观点仅代表作者本人, 自学教育网 信息发布平台,仅提供信息存储空间服务, 若存在侵权问题,请及时联系管理员或作者进行删除。
(c)2008-2025 自学教育网 All Rights Reserved 汕头市灵创科技有限公司
粤ICP备2024240640号-6