文档库 最新最全的文档下载
当前位置:文档库 › C程序练习题

C程序练习题

C程序练习题
C程序练习题

基本语句练习

1、若有以下程序段

#include”stdio.h”

void main( )

{ int a=2,b=5;

Printf(“a=%%d,b=%%d\n”,a,b);

}

其输出结果是(D)

A、a=%2,b=%5

B、a=2,b=5

C、a=%%d,b=%%d

D、a=%d,b=%d

2、以下程序段

float a=3.1415; printf(“|%6.0f|\n”,a);

其输出结果是(C)

A、|3.1415|

B、|3.0|

C、| 3|

D、|3.|

3、以下程序段的输出结果是( C )

float a=57.666; printf(“*%010.2f*\n”,a);

A、*0000057.66*

B、*57.66*

C、*0000057.67*

D、*57.57*

4、下面语句printf(“|%8.5f|\n”,3461.45); 的输出结果是(C )

A、|61.45000|

B、|3461.450|

C、|3461.45000|

D、|3461.4500|

5、若变量都已经正确说明,则以下程序段: C

a=2; b=3; printf(a>b? “***a=%d”: “###b=%d”,a,b);

A、没有正确的输出格式控制

B、输出为:***a=2

C、输出为:###b=2

D、输出为:***a=2###b=3

6、执行下列程序时输入1234567,程序的运行结果为(B)

#include”stdio.h”

void main( )

{int x, y;

scanf(“%2d%2ld”,&x,&y);

printf(“%d\n”, x+y);

}

A、17

B、46

C、15

D、9

7、已知char a; int b; float c; double d; 则表达式a*b+c-d结果为(A)型。

A、double

B、int

C、float

D、char

8、根据定义和数据的输入方式,输入语句的正确形式是(B)

已有定义float f1, f2;

数据的输入方式:4.52

3.5

A、scanf(“%f,%f”,&f1,&f2);

B、scanf(“%f%f”,&f1,&f2);

C、scanf(“%3.2f%2.1f”,&f1,&f2);

D、scanf(“%3.2f, %2.1f”,&f1,&f2);

9、以下程序的输出结果为(*3.140000, 3.142* )

#include”stdio.h”

void main( )

{printf( “ *%f, %4.3f*\n”, 3.14, 3.1415);}

10、结构化程序流程图中一般包含3种基本结构,在下述结构中不属于其基本结

构的是(B )。

A、顺序结构

B、嵌套结构

C、循环结构

D、选择结构

11、若有语句:int a=7; float x=2.5, y=4.7; 则表达式x+a%3×(int) (x+y)%2/4的值是( A )。

A、2.500000

B、2.750000

C、3.500000

D、0.000000

12、设有说明语句:int x=43, y=0; char ch=?A?; 则表达式x>=y && ch

A、语法错误

B、0

C、假

D、1

13、若a为int类型,且其值为3,则执行完表达式a+=a*a后,a的值是_12_。

14、int a; 表达式(a=3*4, a*2), a+8的值为___20____。

15、表达式8.0*(1/2)的值为 0 。

16、下列符号中,可以作为变量名的是(C)。

A、3aB

B、$X

C、_b

D、if

17、设int x=1,y=1;表达式(!x||y)的值是( B )。

A、0

B、1

C、2

D、-1

18、下列标识符中,合法的标识符是( C )。

A、—abc1

B、8abc

C、_abc1

D、for

19、下列关系表达式中结果为假的是(C)。

A、0!=1

B、2<=8

C、(a=2*2)= =2

D、y=(2+2)= =4

选择结构

1、对下述程序,正确的判断是(A )

#include”stdio.h”

void main( )

{int x, y;

scanf(“%d, %d”, &x, &y);

if(x>y)

x=y; y=x;

else

x++; y++;

printf(“%d,%d”, x,y);

}

A、有语法错误,不能通过编译

B、若输入数据3和4,则输出4和5

C、若输入数据4和3,则输出3和4

D、若输入数据4和3,则输出4和4

2、以下程序的输出结果是(B )

#include”stdio.h”

void main( )

{ int x=1,y=0,a=0,b=0;

switch(x)

{case 1:

switch(y)

{ case 0: a++;break; a=1

case 1: b++; break;

}

case 2:

a++; b++;break; a=2 b=1

case 3:

a++;b++;

}

printf(“\na=%d,b=%d”,a,b);

}

A、a=1,b=0

B、a=2,b=1

C、a=1, b=1

D、a=2, b=2

3、以下程序的输出结果是(C )

#include”stdio.h”

void main( )

{ int a=2, b=—1, c=2;

if(a

if(b<0) c=0;

else c+=1;

printf(“%d\n”,c);

}

A、0

B、1

C、2

D、3

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

#include”stdio.h”

void main( )

{ int w=4, x=3, y=2, z=1;

Printf(“%d\n”,(w

}

A、1

B、 2

C、3

D、4

5、以下程序的运行结果是(B)

#include”stdio.h”

void main( )

{int k=2;

switch(k)

{ case 1: prinft(“%d\n”,k++);

break;

case 2: printf(“%d\n”,k++); k=2 case 3: printf(“%d\n”,k++);

break; k=3 case 4: printf(“%d\n”,k++);

default:printf(“Full!\n”);

}

}

A、1

B、2

C、2

D、3

3 3 2 2

6、请写出以下程序的输出结果(1 )

#include”stdio.h”

void main( )

{ int a=100;

if(a>100)

printf(“%d\n”, a>100);

else

printf(“%d\n”, a<=100);

}

7、当a=1,b=2,c=3时,以下语句执行后,a,b,c中的值分别是3、2、2。if(a>c)

b=a;a=c;c=b;

8、若变量已经正确定义,以下语句段的输出结果是—* #—。

x=0;y=2;z=3;

switch(x)

{

case 0:switch(y= =2)

{ case 1: printf(“*”); break;

case 2: printf(“%”);break;

}

case 1: switch(x)

{

case 1: printf(“$”);

case 2: printf(“*”); break; *

Default: printf(“#”); #

}

}

9、如下程序的输出结果是(C)

#include”stdio.h”

void main( )

{ int a=12,b=5,c= —3;

if (a>b)

if(b<0) c=0;

else c++;

printf(“%d\n”,c);

}

A、0

B、1

C、-2

D、-3

10、以下程序运行后,如果从键盘输入5,则输出结果是(B )#include”stdio.h”

void main( )

{ int x;

scanf(“%d”,&x);

if(x――<5) printf(“%d”,x);

else printf(“%d”,x++);

}

A、3

B、 4

C、5

D、6

11、以下程序的输出结果是(A)

#include”stdio.h”

void main( )

{ int a=15, b=21, m=0;

switch(a%3)

{ case 0: m++; break;

case 1: m++;

switch(b%2)

{default : m++;

case 0: m++; break:

}

}

printf(“%d\n”,m);

}

A、 1

B、 2

C、3

D、4

12、两次运行下面的程序,如果从键盘上分别输入6和4,则输出的结果是(A )#include”stdio.h”

void main( )

{ int x;

scanf(“%d”,&x);

if(x++>5) printf(“%d”,x);

else printf(“%d\n”,x ——);}

A、7和5

B、6和3

C、7和4

D、6和4

13、以下程序的输出结果是(C )

#include”stdio.h”

void main( )

{ int a= -1, b=1, k;

if ((++a<0)&&!(b――<=0))

printf( “%d%d\n”, a,b);

else

printf( “%d%d\n”, b, a);

}

A、-1

B、0

C、1

D、0

1 1 0 0

14、以下关于运算符优先顺序的描述中正确的是(C )

A、关系运算符<算术运算符<赋值运算符<逻辑运算符

B、逻辑运算符<关系运算符<算术运算符<赋值运算符

C、赋值运算符<逻辑运算符<关系运算符<算术运算符

D、算术运算符<关系运算符<赋值运算符<逻辑运算符

16、若从键盘输入58,则以下程序输出的结果是(58 58 58 )# include”stdio.h”

void main( )

{int a;

scanf(“%d”,&a);

if(a>50) printf(“%d”,a);

if(a>40) printf(“%d”,a);

if(a>30) printf(“%d”,a);

}

17、以下程序输出的结果是(0 )?????

#include”stdio.h”

void main( )

{ int a=5, b=4,c=3,d;

d=(a>b>c);

printf(“%d\n”,d);

}

18、以下程序输出的结果是(20,0 )

#include”stdio.h”:

void main( )

{ int x=10, y=20, t=0;

if(x= =y) t=x; x=y; y=t;

printf(“%d,%d\n”,x ,y);

}

19、int a=2, b=3, c=4; 则执行语句a *=16+(b++) –(++c); 后a的值是(28 )。

20、以下程序的输出结果是(2 )

#include”stido.h”

main( )

{int x=2, y= -1, z=2;

if(x

if(y<0) z=0;

else z+=1;

printf(“%d\n”,z);

}

20、若从键盘输入B,则以下程序输出的结果是_>=60___<60__

main( )

{char grade;scanf("%c",&grade);

case …A?: printf(">=85\t");

case ?B?:

case ?C?: printf(">=60\t");

case?D?: printf("<60\t");

}

循环结构

1、下述for循环语句(B )

int i, k;

for(i=0, k= -1; k=1; i++, k++)

printf(“***”);

A、判断循环结束的条件非法

B、是无限循环

C、只循环一次

D、一次也不循环

2、以下程序的输出结果是(A )

#include”stdio.h”

void main( )

{ int i;

for(i=1;i<=5; i++)

{ if(i%2)

putchar(…

else

continue;

putchar(…>?);

}

putchar(…#?);

}

A、< > < >< >#

B、>< > < > < #

C、< > < >#

D、>< > <#

3、以下程序段的输出结果是(C )

int x=3;

do

{ printf(“%d”,x-=2); } while(!(--x));

A、1

B、3 0

C、1 -2

D、死循环

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

#include”stdio.h”

void main( )

{ int y=10;

for( ; y>0; y――)

if( y%3 = =0)

{ printf(“%d”,――y);

continue;

}

}

A、741

B、852

C、963

D、8754321

5、若x是int型变量,以下程序段的输出结果是(D )

for(x=3;x<6;x++)

printf ((x%2)?(“ **%d”):(“##%d\n”), x);

A、**3

B、##3

C、##3

D、**3##4

##4 **4 **4##5 **5

**5 ##5

6、以下程序的输出结果是(—1)

#include”stdio.h”

void main( )

{ int x=2;

while(x――);

printf(“%d”,x);

}

7、以下程序段的输出结果是(11 )

int i=0,sum=1;

do

{sum+=i++;}

while(i<5);

printf(“%d\n”,sum);

8、下述程序的运行结果是(s=3 )#include”stdio.h”

void main( )

{ int s=0,k;

for(k=7;k>4;k——)

{ switch(k)

{ case 1:

case 4:

case 7: s++; break;

case 2:

case 3:

case 6: break;

case 0:

case 5: s+=2;break;

}

}

printf(“s=%d”,s);

}

9、下面程序输出结果是(%@%@%@ )

#include”stdio.h”

void main( )

{ int a;

for(a=0; a<6;a++)

{ if(a%2)

printf(“%%”);

else

continue;

printf(“@”);

}

printf(“\n”);

}

10、以下循环体的执行次数是(C )

#include”stdio.h”

void main( )

{ int i,j;

for(i=0,j=1;i<=j+1;i+=2,j——) printf(“%d\n”,i); }

A、3

B、2

C、1

D、0

11、以下程序中,while循环的次数是(D )#include”stdio.h”

void main( )

{int i=0;

while(i<10)

{if(i<1) continue;

if(i= =5) break;

i++;

}

}

A、1

B、10

C、6

D、死循环,不能确定次数

12、以下for循环的循环次数(C )

for(x=0,y=0;(y!=123)&&(x<4); x++);

A、无限循环

B、循环次数不定

C、循环执行4次

D、循环执行3次

13、执行下面程序片段的结果是(23 )

int x=23;

do

{

printf(“%d”,x--);

}while(!x)

A、321

B、23

C、没有输出

D、死循环

13、下面程序的输出结果是(D )

#include”stdio.h”

void main( )

{ int k,j,m;

for(k=5;k>=1; k- -)

{ m=0;

for(j=k; j<=5; j++)

m=m+k*j;

}

printf(“d\n”,m);

}

A、124

B、25

C、36

D、15

14、下面程序的输出结果是(D )

#include”stdio.h”

void main( )

{int x=10, y=10,i;

for(i=0;x>8;y=++i)

printf(“%d %d”,x- -, y);

}

A、10 1 9 2

B、9 8 7 6

C、10 9 9 0

D、10 10 9 1

15、下面程序段的输出结果是(A )

a=1; b=2; c=2;

while(a

printf(“%d,%d,%d”,a,b,c);

A、1,2,0

B、2,1,0

C、1,2,1

D、2,1,1

16、若有如下语句,则程序段(B )

int x=6;

do{printf(“%d\n”, x - =2); }

while( - -x);

A、输出的是1

B、输出的是4和1

C、输出的是3和0

D、死循环

17、下面程序的功能是计算1~10之间的奇数之和与偶数之和,请填空。

#include”stdio.h”

void main( )

{ int a, b, c,i;

a=c=0;

for(i=0; i<=10; i+=2)

{ a+=i;

___if(i<10)___;

c+=b; }

}

printf(“%d”, a);

printf(“%d”,c);

}

18、以下程序的输出结果是(52 )

#include”stdio.h”

void main( )

{ int i=10, j=0;

do

{ j=j+i;

i- -;

}while( i>2);

printf(“%d\n”,j);

}

19、有以下程序

#include”stdio.h”

void main( )

{ char c;

while( (c=getchar( ))!=??? ) putchar( - -c);

}

程序运行时,如果从键盘输入:Y?N? 则输出结果是(X );

20、下面程序段的运行结果是(** )

x=2;

do {printf(“*”); x- - ;} while(x);

21、下面程序的运行结果是(1,-2 )

#include”stdio.h”

void main( )

{ int y,a;

y=2; a=1;

while(y--!= —1)

C程序设计题库

填空题 20*2 ■对于51系列单片机,现有4种语言支持程序设计,它们是(汇编语言)、PL/M、(C语言)、BASIC。 ■单片机程序设计时需要在主程序中设计死循环来防止程序跑飞。在C语言中采用(while(1))或for(;;)语句实现死循环。 ■单片机程序设计中经常用到中断,在C语言程序设计中外部中断1的中断入口序号(2),而汇编语言程序设计中外部中断1的入口地址是(0013H)。 ■编写串口中断程序时要在函数说明部分后写interrupt 4 。 ■编写定时器0中断程序时要在函数说明部分后写interrupt 1 。 ■C语言程序设计中有一个无符号形字符变量temp和一个位变量Flag,现在分别对它们取反。相应的语句为temp=__~___temp; Flag=_!___Flag;。 ■I2C总线在传送数据过程中共有三种类型控制信号,它们分别是:_(起始信号)____、应答信号、_(停止信号)_____。 ■I2C的地址由(协议规定)与(硬件设置)两部分组成。 ■I2C器件的两条信号线分别为串行时钟线SCL 与串行数据线 SDA 。 ■MCS-51单片机操作I2C器件时,单片机必须做为主机,I\O编程。 ■在Cx51所有的数据类型中,只有bit 与unsigned char 直接支持机器指令。 ■编译器性能比较有如下几个方面:算数支持、生产代码大小、开打速度、支持浮点和long 。 ■在KEIL开发套件中,BL51链接器/定位器用于创建一个绝对目标横快。 ■Cx51中函数分为两大类:标准库函数和用户自定义函数。 ■在函数名前如果不指定函数类型,则该函数的类型为整型。 ■具有一定格式的数字或数值叫做数据,数据的不同格式叫做数据类型, 数据按一定的数据类型进行的排列、组合及架构称为数据结构。 ■数据类型的转换有自动转换与强制转换两种。 ■直接出现在程序中的数值(如TMOD=0x21)称为常数。在程序运行的过程中,其值不能改变且被定义为符号的(如#define CONST 60)称为常量。 ■软件对常量与变量的命名规范是:常量名用大写字母,变量名用小写字母。 ■MCS-51单片机串口用于中断通讯时,在进行初始化时必须设置的特殊功能寄存器有:

《C程序设计》作业内容

实验一C语言的运行环境的使用 一、目的与要求 1. 了解Windows系统下C语言的运行环境,熟悉C程序调试、运行的基本操作方法。 2. 熟练掌握编辑、编译、连接和运行C程序的方法。 3. 通过运行简单的C程序,初步了解C源程序的特点。 4. 初步理解C语言的数据类型,了解变量定义、变量赋值以及简单运算方法,了解程序运 行结果的基本输出方法。 二、实验例题 在C语言运行环境下,按以下例题要求完成程序的编辑、编译、连接和运行,直至取得正确的运行结果。 【例1】编程实现在屏幕上显示如下三行文字 Hello, world ! Wolcome to the C language world! Everyone has been waiting for. (1)输入如下程序: #include int main() { printf("Hello,World!\n"); printf("Wolcome to the C language world!\n"); printf("Everyone has been waiting for.\n"); return 0; } (2)将输入的程序以文件名example.c存盘。 (3)编译:通过“组建”(Build) 下拉菜单中的“编译”(compile)命令,编译example.c,若出现编译错误,则修改程序,重新编译,直至编译成功,系统自动生成目标文件example.obj。 (4)连接:通过“组建”(Build)下拉菜单中的“组建”(Build)命令,生成以.exe为扩展名的可执行文件example.exe。 (5)运行:通过“组建”菜单下的“执行”(Excute)命令运行程序并观察运行结果。 【例2】编写程序,将两个整数相加,并输出结果。 #include int main() { int a,b,sum; a=123;b=456; sum=a+b; printf(“sum is %d\n”,sum); return 0;}

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

程序填空题 导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。 【】下面程序的功能是不用第三个变量,实现两个数的对调操作。#include <> main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b); a= ①; b= ②; a= ③; printf("a=%d,b=%d\n",a,b); }

【】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。 #include <> double pi(long n) { double s=; long i; for(i=1;i<=n;i++) s=s+ ①; return( ②); } 【】下面的程序的功能是求一维数组中的最小元素。 findmin(int *s,int t,int *k) { int p; for(p=0,*k=p;p

C语言程序设计教程第一章练习题题目

单选题 1、下列语言中不属于计算机语言的三大类的是(C)。 A.机器语言 B.汇编语言 C.脚本语言 D.高级语言 2、下列说法中不正确的是(C) A.计算机语言大致可分为三大类,即机器语言、汇编语言和高级语言 B.C语言是一种通用的、过程式的编程语言,具有高效、灵活、可移植等优点 C.C语言属于汇编语言 D.高级语言比汇编语言更贴近于人类使用的语言,易于理解、记忆和使用 3、以下开发工具中不属于主流的开发工具的是(B) A.Visual Studio B.Xcode C.Code::Block D.Eclipse 4、下列选项是对主流开发工具的介绍,其中错误的是(B) A.Visual Studio支持C/C++、C#、F#、VB等多种程序语言的开发和测试 B.Code::Block是一个免费的跨平台IDE,支持C、C++和Fortan程序的开发 C.Eclipse是一种被广泛使用的免费跨平台IDE,最初由IBM公司开发 D.Vim是一款功能非常强大的IDE ( 和其他IDE不同的是,Vim本身并不是一个用于开发计算机程序的IDE,而是一款功能非常强大的文本编辑器,它是UNIX系统上Vi编辑器的升级版。) 5、下列选项中,不属于开发一个C语言应用程序的具体实现步骤的是(A) A.启动开发工具 B.添加源文件 C.编写代码 D.运行程序 6、下列选项中,关于main()函数叙述不正确的是(C) A.一个完整的C语言程序中,有且只能有一个main()函数 B.main()函数是程序的主入口,程序总是从main()函数开始执行 C.如果没有声明main()函数,程序将从第1行开始执行 D.main()函数可以有返回值,也可以没有返回值 7、下面程序中,合法的选项是(D) A.#includeint main() { printf("hello world\n"); return 0; } B.#includeint man() { printf("hello world\n"); return 0; } C.#includeint main() { printf("hello world\n") return 0; } D.#includeint main() { print("hello world\n"); return 0; } 8、下面程序中,运行结果为“1,2”的是(A) A.#includeint main() { int a = 1; int b = 2; printf("%d %d\n",a,b); return 0; } B.#includeint main() { int a = 1; int b = 2; printf("%d,"a); printf("%d\n",b); return 0; } C.#includeint main() { int a = 1, b = 2; printf("%d,,%d\n",a,b); return 0; }

C程序设计第三版答案

C程序设计第三版答案 1.5请参照本章例题,编写一个C程序,输出以下信息:************ Very Goodj! ************ 解: main() { printf(" ************ \n"); printf("\n"); printf(" Very Good! \n"); printf("\n"); printf(" ************\n"); } 1.6编写一个程序,输入a b c三个值,输出其中最大者。解:main() {int a,b,c,max; printf("请输入三个数a,b,c:\n"); scanf("%d,%d,%d",&a,&b,&c); max=a; if(max

if(max

C语言程序设计作业参考答案

《C语言程序设计》作业参考答案 作业一 C语言概述 一、选择题: 1-5 ACDCB 二、编程题: main() { printf(“****************************************\n”); printf(“ Hello,world! \n”); printf(“****************************************\n”); } 作业二程序的灵魂——算法 一、填空题: 1.确定性有效性有零个或多个输入有一个或多个输出 2.顺序结构选择结构循环结构 3.函数 作业三数据类型、运算符与表达式 一、选择题: 1-5 BDDAB 6-10 BCAAB 11-15 BCADC 16-20 DACCA 21-25 ADDBA 26-30 DDDDD 作业四顺序结构 一、选择题: 1-5 BCDDD 6-10 BDADD 二、填空题: 1.【31.415920,3.14159e+01】 2.【c=k】 3.【a=1,b=空格,c=2】 4.【a=12,b=345】 5.【c=A】 作业五选择结构 一、选择题:1-5 ADCBC 6-10 BBBBA 11-15 DBAAC 16-17 CB 二、填空题: 1.【-1】 2.【3】 3.【4】 4.【11】 5.【97或'a'】 作业六循环结构 一、选择题: 1-5 CBAAC 6-10 CBCCB 11-15 DBDDB 16-20 BCAAC 21-25 CDBBB

作业七数组 一、选择题: 1-5 CDDAC 6-10 CCDBC 11-15 DDBCA 16-20 DCBDD 21-23 BDB 二、填空题: 1. LBLMNP 2. SW* 3. mo 4. a=2,b=1 作业八函数 一、选择题: 1-5 AAACA 二、填空题: 1.【编程中的main( )函数】 2.【函数说明部分】和【函数体】 3.【–125= –5*5*5】 4.【void add (float a, float b)】【float add (float a, float b)】 5.【i=7; j=6; x=7 i=2; j=7; x=5】 6.【111】 三、编程题: 1.参考代码 main() { int score,temp,log; char grade; log=1; while (log) { printf(“enter score:”); scanf(“%d”,&score); if ((score>100)||(score<0)) printf(“\n error,try again! \n”); else log=0; } if (score==100)temp=9; else temp=(score-score%10)/10; switch(temp) { case 0:case 1:case2: case 3:case 4:case 5:grade=’E’;break; case 6:grade=’D’;break; case 7:grade=’C’;break; case 8:grade=’B’;break; case 9:grade=’A’; } printf(“score=%d,grade=%c\n”,score,grade); } 2.解:设计以高度n为参数的函数trangle(int n),打印等边三角形。参考程序如下: #include

C语言程序设计期末考试试题(含答案)

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

《C程序设计》试题

《C程序设计》试题 一、单项选择题。(每题1分,共20分) 1. C程序的基本单位是:() A.子程序 B.程序 C.子过程 D.函数 2.在C语言中,非法的八进制是:() 3. 不是C语言实型常量的是:() .字符串“xyzw”在内存中占用的字节数是:() 5. 若已定义f,g为double类型,则表达式:f=1,g=f+5/4的值是:() A.2.0 若有语句char c1=`d`,c2=`g`;printf(“%c,%d\n”,c2-`a`,c2-c1);则输出结果为:() (a的ASCII码值为97) ,2 ,3 ,2 ,g 7. 使用语句scanf(“a=%f,b=%d”,&a,&b);输入数据时,正确的数据输入是: =,b=3 = b=3 3 表示关系12<=x<=y的C语言表达式为:() A.(12<=x)&(x<=y) B. (12<=x)&&(x<=y) C. (12<=x)|(x<=y) D.(12<=x)||(x<=y) 9.设x=1,y=2,m=4,n=3,则表达式x>yx:mc4)后,s,t的值为:() ,2 ,1 ,1 ,0 12. 语句for(a=0,b=0;b!=100&&a<5;a++)scanf(“%d”,&b); scanf 最多可执行次数为:() 13. 对于for(s=2;;s++)可以理解为:() A. for(s=2;0 ;s++) B. for(s=2;1 ;s++) C. for(s=2;s<2 ;s++) D. for(s=2;s>2;s++)

C程序设计作业样本

第一章作业 答案:一,59,14.4,28.e 二1小题,59 2,15 一、将数89、20.25、40.875用十六进制表达 二、填空 1.在C语言中,数值常量0x3b十进制值是。 2.字母f ASCII码为十进制数___________。 第三章作业 一、选取题: 1、下列变量名中, B 是非法。 A) Tom B) 3n C) little_boy D) c10 2、若有如下类型阐明 char a; int b; float c; double d;则表达式a*b+d-c成果类型是(A ) A)float B)char C)int D)double 3、若x为整型,则逗号表达式(x=4*5,x*5),x+25成果及x值分别是(C )对的答案是100,45 A)45 20 B)125 20 C)125 45 D)100 100 4、假设所有变量均为整型,则表达式(a=3,b=2,b++,a+b)值是 C 。 A) 5 B) 8 C) 6 D)7 5、已知c2为字符型,则执行语句c2=’E’+’8’-‘A’后,c2值为 C 。 A) 12 B) 11 C)不拟定值D) 10

6、设a为double变量,b为int型变量,c为字符型变量,则a+b+c为( C )型 A) int B) float C) double D) char 7、C语言中不可用作标记符字符有( C ) A下划线 B % C数字 D字母 8、下面四个选项中,均是合法整型常量是(D ) A)160 B)- 0xcdf C)- 01 D)0x - 0xffff 01a 0668 2e5 9、设a为字符变量,b为int型变量,c为double型变量,则a*b+c为( C )型 A. int B. float C. double D. char 10.若a是int型变量,则表达式(a=4*5,a*2),a+4值为( C ) A. 20 B.22 C. 24 D. 44 第四章作业 一、选取题 1、若x为int型变量,则执行如下语句后x= C 。 x=5; x-=x-=x+x; A. -10 B. -5 C.0 D.10 2、在printf()函数格式阐明符中,字符型数输出格式阐明符是 D 。

C语言程序设计期末练习填空题.docx

面向对象程序设计期末综合练习二(填空题) 填空题 1.C++ 语言是在 _________语言的基础上发展起来的。 2.C++ 语言的编译单位是扩展名为 __________的 __________文件。 3.行尾使用注释的开始标记符为 __________ 。 4.多行注释的开始标记符和结束标记符分别为__________ 和 __________。 5.用于输出表达式值的标准输出流对象是_________。 6.用于从键盘上为变量输入值的标准输入流对象是________。 7.一个完整程序中必须有一个名为 ________的函数。 8.一个函数的函数体就是一条 _________语句。 9.当执行 cin 语句时,从键盘上输入每个数据后必须接着输入一个________符,然后才能继续输入下一个数据。 10.在 C++程序中包含一个头文件或程序文件的预编译命令为__________。 11.程序中的预处理命令是指以______字符开头的命令。 12.一条表达式语句必须以 ______ 作为结束符。 13.在#include 命令中所包含的头文件,可以是系统定义的头文件,也可以是 ________定义的头文件。 14.使用 #include 命令可以包含一个头文件,也可以包含一个______文件。 15.一个函数定义由 ________和 ________两部分组成。 16.若一个函数的定义处于调用它的函数之前,则在程序开始可以省去该函数的______语句。 17. C++头文件和源程序文件的扩展名分别为______和 ______。 18.程序文件的编译错误分为 ________和 ________两类。 19.当使用 _______保留字作为函数类型时,该函数不返回任何值。 20.当函数参数表用 ______保留字表示时,则表示该参数表为空。 21 .从一条函数原型语句“int fun1(void);”可知,该函数的返回类型为______,该函数带有______ 个参数。 22.当执行 cout 语句输出 endl 数据项时,将使 C++显示输出屏幕上的光标从当前位置移动到 ________的开始位置。 23.假定 x=5,y=6,则表达式 x++*++y 的值为 __________ 。 24.假定 x=5,y=6,则表达式x--*--y的值为__________。 25.假定 x=5,y=6,则执行表达式 y*=x++ 计算后, x 和 y 的值分别为 __________和 __________ 。 26.假定 x=5,y=6,则执行表达式 y+=x-- 计算后, x 和 y 的值分别为 __________和 __________ 。 27.C++ 常数 0x145 对应的十进制值为 __________。 28.C++ 常数 0345 对应的十进制值为 __________ 。 29.十进制常数 245 对应的十六进制的 C++表示为 __________。 30.十进制常数 245 对应的八进制的 C++表示为 __________ 。 31.signed char类型的值域范围是________至__________之间的整数。 32.int和float类型的数据分别占用_________和__________个字节。 33.float和double类型的数据分别占用_________和________个字节。 34.bool和char类型的数据分别占用_________和________个字节。 35.unsigned short int和int类型的长度分别为_________和________。

《C语言程序设计》综合练习题与答案

《C语言程序设计》综合练习题与答案 一、简要问答下列问题 1.什么是源程序? 2.C语言源程序的编译过程是怎样的? 3.简述C语言的特点 4.C/C++程序都是由函数组成的,其中最主要的、不可缺少的函数是哪一个?举例说明该函数的结构。 5.函数的返回值是通过什么语句来实现的,它的格式是什么? 6.在编写C程序时,为什么要把库函数的头文件包含到用户源程序中?如何把用户的头文件包含到用户源程序? 7.在计算机中,存储的数据为什么要分成多种不同的数据类型? 8.什么是常量?什么是变量? 9.C语言的五种基本数据类型有哪些?它们的关键字和所占的字节数分别是什么? 10.判断标识符是否合法的三条规则是什么? 11.什么是C语言的关键字?关键字对标示符有何影响? 12.全局变量和局部变量有什么区别? 13.什么是空语句,什么是语句块? 14.结构化程序设计的三种基本结构是什么? 15.三种循环语句各有什么特点? 16.什么叫多重循环结构? 17.Continue语句与break语句有什么区别? 18.字符与字符串有什么区别?‘b’与“b”相同吗? 19.什么是数组?一维数组的定义形式是怎样的? 20.字符串的结束标记是什么? 21.什么是按位操作?C语言对按位操作有哪些要求? 22.什么是指针?指针的两个操作符表示什么意义? 23.指针和数组有什么关系? 24.指针有那几种算术运算?说明指针变量的算术运算与一般变量的算术运算有何区别? 25.函数是由哪三部分组成的?函数定义的一般形式是什么? 26.函数原型是什么情况下使用?有什么作用? 27.形参和实参有什么关系,函数的两种调用方式是什么? 28.什么是函数的递归调用? 29.什么是函数指针?说明定义函数指针的一般形式。 30.什么是内部函数?什么是外部函数? 31.C语言的四种用户定义数据类型是什么? 32.C系统提供的三种主要预处理功能是什么? 33.什么是文件包含? 34.什么是文件?什么是流?

C程序设计(双语版)习题答案

第二章数据类型课后习题 1.下列哪些是合法的变量名?如果合法,你认为它是一个好的助记符(能提醒你它的用途)吗? (a) stock_code 合法、好的助记符 (b) money$ 非法,$为非法字符 (c) Jan_Sales 合法、好的助记符 (d) X-RAY 非法,–为非法字符 (e) int 非法,int为关键字 (f) xyz 合法、不是好的助记符 (g) 1a 非法,变量名必须以字母或下划线打头 (h) invoice_total合法、好的助记符 (i) john's_exam_mark非法,’为非法字符 (j) default 非法,default为关键字 2.请确定下列常量的数据类型: (a) 'x' char (b) -39 int (c) 39.99 double (d) -39.0 double 3.下列哪些是合法的变量定义? (a) integer account_code ; 非法,无integer类型 (b) float balance ; 合法 (c) decimal total ; 非法,无decimal类型 (d) int age ; 合法 (e) double int ; 非法,int为关键字,不能作为变量名 (f) char c ; 合法 4.写出下列各小题中的变量定义: (a) 整型变量number_of_transactions和age_in_years int number_of_transactions, age_in_years; (b) 单精度浮点型变量total_pay,tax_payment,distance和average float total_pay, tax_payment, distance, average; (c) 字符型变量account_type char account_type; (d) 双精度浮点型变量gross_pay double gross_pay; 5. 为下列各小题写出最合适的变量定义: (a) 班级中的学生人数int number_of_students; (b) 平均价格float average_price; (c) 自1900年1月1日以来的天数int days_since_1900;

c程序设计作业

1、分析下面程序: # include int main() { char c1,c2; c1=97; c2=98; printf("c1=%c,c2=%c\n"c1,c2); printf("c1=%d,c2=%d\n",c1,c2); return 0; } (1)运行时会输出什么信息?为什么? (2)如果将程序第4,5行改为 c1=197; c2=198; 运行时会输出什么信息?为什么? (3)如果将程序第3行改为 int c1,c2; 运行时会输出什么信息?为什么? 答:(1)程序运行不了,因为程序存在错误。正确的程序为:#include int main() { char c1,c2; c1=97; c2=98; printf("c1=%c,c2=%c\n",c1,c2); printf("c1=%d,c2=%d\n",c1,c2); return 0; } (2)如果将程序第4,5行改为 c1=197; c2=198; 运行时会输出: (3)如果将程序第3行改为 int c1,c2; 运行时会输出:

因为int表示整型,%c是输出字符,a的ASCLL代码是97,b的是98,所以输出 c1=a,c2=b.%d是表示输出十进制整型,所以输出c1=97,c2=98 2、用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1=’A’,c2=’a’。 问在键盘上如何输入? #include int main() { int a,b; float x,y; char c1,c2; scanf("a=%db=%d",&a,&b); scanf("%f%e",&a,&y); scanf("%c%c",&c1,&c2); return 0; } 答:输入如图: 输出如图: (此文档部分内容来源于网络,如有侵权请告知删除,文档可自行编辑修改内容, 供参考,感谢您的配合和支持)

大学计算机C语言程序设计(填空题)

一、填空共219题 第1题题号:422 设有以下结构类型说明和变量定义,则变量a在内存所占字节数是【1】 . Struct stud { char num[6]; int s[4]; double ave; } a,*p; 答案: 1). 22 第2题题号:533 设x和y均为int型变量,则以下for循环中的scanf语句最多可执行的次数是【1】. for (x=0,y=0;y!=123&&x<3;x++) scanf ("%d",&y); 答案: 1). 3 第3题题号:496 静态变量和外部变量的初始化是在【1】阶段完成的,而自动变量的赋值是 在【2】时进行的. 答案: 1). 编译 2). 函数调用 第4题题号:96 已知a=13,b=6, a&b的十进制数值为【1】. 答案: 1). 4 第5题题号:398

程序段int k=10; while(k=0) k=k-1循环体语句执行【1】次. 答案: 1). 0 第6题题号:651 设w=5;w+= -2;则w的值为【1】. 答案: 1). 3 第7题题号:258 下面程序段的输出结果是【1】. int a=12; a=a&0377;pritnf("%d\n",a); 答案: 1). 12 第8题题号:457 设a,b,c,t为整型变量,初值为a=3,b=4,c=5,执行完语句t=!(a+b)+c-1&&b+c/2 后,t的值是【1】. 答案: 1). 1 第9题题号:402 设a取二进制数00101101,若想通过a^b运算使a的高4位取反,低4位不变,则b的 二进制数是【1】. 答案: 1). 11110000 第10题题号:311 若所用变量均已正确定义,则执行下面程序段后的值是【1】. for(i=0 ; i<2 ; i++ ) printf("YES"); printf("\n"); 答案: 1). YESYES

C语言程序设计练习题(含程序及参考答案)21182

C语言练习题 (所提供的源程序均采用自定义函数方式解决,如不采用函数方式,也可直接在main函数中借鉴该思想编程,因时间有限,所有程序未能一一验证,仅供参 考使用) 1、定义一个函数int fun(int a,int b,int c),它的功能是:若a,b,c能构成等边三角形函数返回3,若能构成等腰三角形函数返回2,若能构成一般三角形函数返回1,若不能构成三角形函数返回0。 #include int fun(int a,int b,int c) { if(a+b>c && b+c>a && a+c>b) { if(a==b && b==c ) return 3; else if(a==b||b==c||a==c) return 2; else return 1; } else return 0; } void main() { int a,b,c,shape; printf("\nInput a,b,c: "); scanf("%d%d%d",&a,&b,&c); printf("\na=%d, b=%d, c=%d\n",a,b,c); shape =fun(a,b,c); printf("\n\nThe shape : %d\n",shape); }

2、编写一个程序,将两个变量的值交换, 例如变量a中的值原为 3,b中的值原为8,程序运行后 a 中的值为8,b中的值为3。 #include void fun(int *x,int *y) { int t; t=*x;*x=*y;*y=t } void main() { int a=3,b=8; printf("%d %d\n",a,b); fun(&a,b); printf("%d %d\n",a,b); }

C程序设计习题解答

一、选择题(蓝色加粗为正确选项) 在C语言中,合法的字符常量是()。 A. '字' B. "A" C. "ABC" D. '\x41' 在C语言中,用户能使用的合法标识符是()。 A. 姓名 B. _xyz C. 5i D. for 在C语言中,不合法的实型常量是()。 A. -0.123 B. -.123 C. -1.23e-1 D. -123e-3.0 C语言的下列运算符中,优先级最高的运算符是()。 A. ++ B. += C. || D. != 设有说明语句int k,i=5,j=10;,则表达式k=(++i)*(j--)的值是()。 A. 50 B. 60 C. 45 D. 55 设有说明语句int i,j;,则表达式i>=j||i

C. TRUE D. 1 已知'A'的ASCII码的十进制值为65,'0'的ASCII码的十进制值为48,则以下程序运行结果是()。main() { char ch1,ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf("%d,%c\n",ch1,ch2); } A. 67,D B. C,D C. C,68 D. 67,68 设有语句int x=2,y=3;,则表达式x=(y==3)的值是()。 A. 0 B. 1 C. 2 D. 3 以下程序的运行结果是()。 main() { unsigned a = 0x3ef, b; b = a << 2; 页脚内容2

printf("%x,%x\n", a, b); } A. 3ef,fb B. 3ef,fbc C. fbc,3ef D. fbc,fbc 下列语句中,符合C语言语法的赋值语句是()。 A. a=7+b+c=a+7; B. a=7+b++=a+7; C. a=7+b,b++,a+7; D. a=7=b,c=a+7; 为表示x≥y≥z,须用的C语言表达式为()。 A. (x>=y)&&(y>=z) B. (x>=y)AND(y>=x) C. x>=y>=z D. (x>=y)&(y>=z) 设int a,b;,用语句scanf('%d%d",&b); 输入a、b值时,不能作为输入数据分隔符的是()。 A. 空格 B. , C. 回车 D. [Tab] 以下程序运行时,若从键盘输入5,则输出结果是()。 main() { int a; 页脚内容3

《C语言程序设计》课后习题答案(第四版)谭浩强

第1章程序设计和C语言1 1.1什么是计算机程序1 1.2什么是计算机语言1 1.3C语言的发展及其特点3 1.4最简单的C语言程序5 1.4.1最简单的C语言程序举例6 1.4.2C语言程序的结构10 1.5运行C程序的步骤与方法12 1.6程序设计的任务14 1-5 #include int main ( ) { printf ("**************************\n\n"); printf(" Very Good!\n\n"); printf ("**************************\n"); return 0; } 1-6#include int main() {int a,b,c,max; printf("please input a,b,c:\n"); scanf("%d,%d,%d",&a,&b,&c); max=a; if (max

2.5结构化程序设计方法34 习题36 第章最简单的C程序设计——顺序程序设计37 3.1顺序程序设计举例37 3.2数据的表现形式及其运算39 3.2.1常量和变量39 3.2.2数据类型42 3.2.3整型数据44 3.2.4字符型数据47 3.2.5浮点型数据49 3.2.6怎样确定常量的类型51 3.2.7运算符和表达式52 3.3C语句57 3.3.1C语句的作用和分类57 3.3.2最基本的语句——赋值语句59 3.4数据的输入输出65 3.4.1输入输出举例65 3.4.2有关数据输入输出的概念67 3.4.3用printf函数输出数据68 3.4.4用scanf函数输入数据75 3.4.5字符数据的输入输出78 习题82 3-1 #include #include int main() {float p,r,n; r=0.1; n=10; p=pow(1+r,n); printf("p=%f\n",p); return 0; } 3-2-1 #include #include int main() {float r5,r3,r2,r1,r0,p,p1,p2,p3,p4,p5; p=1000;

C语言程序设计-作业与答案

《C 语言程序设计》课程作业 适用层次:专升本 培养类型:理工科专业 专业班级: 姓名: 学号: 作业要求:题目可打印,答案要求手写,考试时交作业。 第1次: 1.编写程序,分别计算1到100之间的奇数之和及偶数之和,并输出。 2.输入三角形的三条边a 、b 、c ,如果能构成一个三角形,则计算并输出三角形的周长和面积(结果保留两位小数);否则输出“无效的边长!”。 三角形面积计算公式为: s=))()((c x b x a x x ---,其中,x=(a+b+c)/2。 3.输入一个整数,求它的各位数字之和。例如,123的各位数字之和为6,-63的各位数字之和为9。 4.使用格里高利公式求π的近似值,精确到最后一项的绝对值小于10-6 。 +-+-=71 513114π …… 5.中国古代数学史上著名的“百鸡问题”:鸡翁一,值钱五;鸡母一,值钱三,鸡雏三,值钱一。百钱买百鸡,问翁、母、雏各几何? 6.编写程序,键盘输入正整数n (0= 2 2. 编写一个函数prime(int n),判断一个整数是否是素数,若是素数,函数值返回1,否则返回0。利用该函数找出100-200之间的所有素数。素数是只能被1和自身整除的正整数,2是最小的素数。 3.写一函数int strlength(char *s)求一个字符串的长度。主函数中输入一个字符串,调用函数strlength 求其长度并输出。

相关文档
相关文档 最新文档