C语言复习范围(答案)

合集下载

C语言复习60题

C语言复习60题

01计算机本身最擅长的能力是?A、推理B、想像C、重复D、分析正确答案: C、重复。

02 计算机(CPU)能够直截了当运行人类编写的程序A、√B、×正确答案: B、×、03编程语言是与计算机交谈的语言A、√B、×正确答案: B、×。

04 关于C语言,以下讲法错误的有:A、C语言是与Unix操作系统一同发展起来的B、C语言不能写图形界面的软件C、C语言一般是编译执行的D、C语言诞生于1970年代正确答案: B、C语言不能写图形界面的软件、06 IDE的中文翻译是什么?正确答案是:集成开发环境、07 给定:int a,b; 以下哪些scanf的使用是正确的?A、scanf("%d”,&a); scanf(”%d",&b);B、scanf(”%d %d”, &a, &b);C、scanf("%d, %d", &a,&b);D、scanf("%d%d”, a, b);正确答案: A、scanf("%d”,&a); scanf(”%d", &b);。

B、scanf(”%d%d", &a, &b);、C、scanf(”%d,%d”,&a,&b);、08 以下哪些是有效的变量名?A、mainB、4everC、monkey—kingD、__int正确答案:A、main。

D、__int。

09给定:inta,b; scanf("%d %d", &a, &b);则以下哪些输入方式是正确的?A、1 2B、1,2C、1(回车)2D、1、2正确答案:A、1 2。

C、1(回车)2、10给定以下代码段:inta,b=0;则a的初始值是0A、√B、×正确答案: B、×、11写出下式的运算结果:10/3、0*3 正确答案是:10、0。

12写出下式的运算结果:10/3*3、0正确答案是:9、0。

C语言复习参考答案

C语言复习参考答案

第一章 C语言概述一.知识点1.C语言的特点:①语言简洁、紧凑,使用方便、灵活;②运算符丰富;③数据结构丰富;④具有结构化控制语句;⑤语法限制不太严格,程序设计自由度大;⑥可以进行位操作,能实现汇编语言的大部分功能,能直接对硬件进行操作;⑦生成的目标代码质量高,程序执行效率高;⑧程序的移植性好。

2.C程序的组成:⑴C程序是由函数构成的;⑵一个函数包括函数的首部(即函数的第一行)和函数体(即花括号部分);⑶函数体一般包括声明部分和执行部分;⑷一个C程序总是从main函数开始执行,从main函数结束;⑸C程序书写格式自由,一行内可以写几个语句,一个语句可以分写在多行上;⑹每个语句和数据定义的最后必须有一个分号;⑺C语言本身没有输入输出语句,是通过函数实现输入输出的;⑻可以用/*……*/对C程序的任何部分作注释。

3.C语言程序的运行:源程序文件的扩展名为.c,目标程序文件的扩展名为.obj,可执行程序文件的扩展名为.exe。

二.练习㈠.填空题:1.在TURBO C环境中用RUN命令运行一个C程序时,所运行的程序的后缀是 .exe 。

2.C语言源程序文件的后缀是 .c ,经过编译后,生成文件的后缀是 .obj ,经过连接后,生成文件的后缀是 .exe。

3.结构化程序由顺序结构、选择结构、循环结构三种基本结构组成。

㈡.选择题:1.组成C语言程序的是( C )。

A.子程序 B.过程 C.函数 D.主程序和子程序2.以下叙述中正确的是( C )。

A.在C程序中无论是整数还是实数,只要在允许的范围内都能准确无误的表示。

B.C程序由主函数组成。

C.C程序由函数组成。

D.C程序由函数和过程组成。

㈢.程序设计题:1.编写一个C程序,输入a、b、c三个数,输出其中最大者。

第二章算法一.知识点1.算法:为解决一个问题而采取的方法和步骤。

2.算法的分类:数值算法、非数值算法。

3.算法的特点:有穷性、确定性、有零个或多个输入、有一个或多个输出、有效性。

c语言备考复习题与部分答案

c语言备考复习题与部分答案

一、判断题1. 格式字符%md中的m不能为负。

(×)2. 实际上,可以用顺序、分支、循环三种结构构造任何算法。

( )3. printf("%d",sizeof(1234));其结果是4。

(×)4. 在C语言中,任何一个表达式的最后加上一个分号就构成一个合法的语句。

( )5. 下面程序执行结果是32768。

(×)main( ){int a,b;printf("%d\n",b=(a=32767,a+1));}二、单选题1. 下述程序的输出结果是(B )#include <STDIO.H>void main(){int a,b,c=241;a=c/100%9;b=-1&&-1;printf("%d,%d",a,b);}2. 若有定义:int x,y; char a,b,c;并有以下输入数据:x=1 2 A B C<CR>,则能给x赋整数1,给赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是(D )A)scanf("x%d y=%d",&x,&y);a=getch();b=getch();c=getch();B)scanf("x=%d%d",&x,&y);a=getch();b=getch();c=getch();C)scanf("x=%d%d%c%c%c",7x,&y,&a,&b,&c); D)scanf("x=%d%d%c%c%c%c%c",&x,&y,&a,&b,&b,&c, &c);3. 已有定义double d,f;数据的输入方式为:3.45<CR> 1.2<CR>根据定义和数据的输入方式,输入函数调用语句的正确形式为(A )A)scanf("%lf%lf",&d,&f) B)scanf("%f%f",&d,&f)C)scanf("3.2f%3.1f",&d,&f)D)scanf("%3.2lf%3.1lf",&d,&f)4. 如下程序: #include <STDIO.H>void main(){ int m,n,k;m=(n=4)+(k=10-7);printf(“m=%d\n”,m);}运行后m的值为( C )。

c语言参考答案(全)

c语言参考答案(全)

习题11-1 填空题1.函数2.主函数main(),主函数main()3.主函数main()4.函数首部,函数体5.{, }6./*, */7.顺序结构,选择结构,循环结构8..c, .obj, .exe1-2 思考题1.结构化程序设计是指:为使程序具有一个合理的结构以保证程序正确性而规定的一套如何进行程序设计的原则。

顺序结构,选择结构,循环结构2.算法是对具体问题求解步骤的一种描述。

计算机算法的表达工具通常采用以下几种方法:(1)用自然语言表示算(2)用流程图表示算法(3)用伪代码表示算法(4)用程序设计语言表示算法3.语言简洁、紧凑,使用方便、灵活; 支持结构化程序设计;运算符丰富;数据类型丰富;较强的编译预处理功能;C语言的可移植性好;C语言本身既有一般高级语言的优点,又有低级(汇编)语言的特点;语法限制不太严格,程序设计自由度大。

4. 略5. 略1-3 编程题1.main(){ float a=3, b=4, c=5, s, area;s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));p rintf(“area=%f ” , area );}2.main(){ printf(“******************************”);printf(“* hello world *”);printf(“******************************”);}习题22-1 单选题1~5 DBDCA 6~10 DCABA 11~14 BCA A2-2 思考题1.2.000002.1,0.53.9,24.65.100,d6.(1)20 (2)0 (3)607. (1)10,6,4 (2)6,9,15 (3)3,60,838. 559.70习题33-1单选题1-5BBDAB 6-10DDBDC 11-15AADCA 16-20CBACC 21-25ABDBB 3-2填空题1. 32.02613.0x104.05. 2, 1 互换a,b的值6. 6.67.–038.79. 5.0,4,c=3<Enter>10.i=10,j=20<Enter>11.(1) 65(2) 65,A(3) 56.123400,123.456001(4) 3.141600(5) 8765.432(6) 5.86400e+02(7) 3.14160e+00(8) 3.1416(9) 8765(10) 3.1416,8765.4312.a=2 b=5x=8.8 y=76.34c1=65 c2=97 3-3 编程题1.main(){ int x, y ;scanf(“%d%d” , &x, &y);printf(“x y\n”);printf(“%4d%4d\n”, x, y );printf(“%4o%4o\n”, x, y );printf(“%4x%4x\n”, x, y );}2.main(){ float a, b, h, s;scanf(“%f%f%f”, &a, &b, &h );s=(a+b)*h/2 ;printf(“%8.1f\n”, s);}3.main(){ char c;scanf(“%c”, &c );printf(“%c, %c, %c\n”, c-1, c, c+1 ); }4.main(){ int a, a1, a2, a3;scanf(“%d”, &a );a1=a%10 ; a=a/10;a2=a%10; a=a/10;a3=a%10;printf(“%d%d%d\n”, a1, a2, a3);}5.main(){ double a, b, c, ave;scanf(“%lf%lf%lf”, &a, &b, &c );ave=(a+b+c)/3 ;printf(“%8.2f\n”, ave);}6.main(){ int a, b, c, t;scanf(“%d%d%d”, &a, &b, &c );t=a; a=c; c=b ; b=t ;printf(“a=%d, b=%d, c=%d\n”, a, b, c );}习题44-1单选题1~5 BADAC 6~10 DDACD 11~15 BBBAB4-2填空题1.12.if(x>0) y=1else if (x==0) y=0else y=-13.(1) a>0 || b>0 (2) x>0 && x<=10(3) a==1.5 && b==1.5 && c==1.5 (4)p<a || p<b || p<c4.(1)0 (2)1 (3)1 (4)0 (5)05. max=(max=a>b?a:b)>c?max:c6.-47.18.5,0,39.85 belongs to B10. (1) (a==0) (2) (b==0) (3) (disc<0)4-3 编程题1.#include “math.h”main(){ float a,b,c,s,area;scanf(“%f,%f,%f”,&a,&b,&c);if (a+b>c && a+c>b && b+c>a){ s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));printf(“%f”,area);}}2.main(){ int x,y;scanf(“%d,%d”,&x,&y);if (x*x+y*y>1000)printf(“%d\n”,(x*x+y*y)/100); elseprintf(“%d\n”,x+y);}3.main(){ int x,scanf(“%d”,&x);if(x%3==0 && x%5==0 && x%7==0) printf(“yes\n”);elseprintf(“no\n”);}4.#include “math.h”main(){ float x,y;scanf(“%f”,&x);if(x<-2) y=x*x-sin(x);else if (x<=2) y=pow(2,x)+1;else y=sqrt(x*x+x+1);printf(“%f\n”,y);}5. main( )long a,b,c,d,e,x;scanf("%ld",&x);a=x/10000;/*分解出万位*/b=x%10000/1000;/*分解出千位*/c=x%1000/100;/*分解出百位*/d=x%100/10;/*分解出十位*/e=x%10;/*分解出个位*/if (a!=0) printf("there are 5, %ld %ld %ld %ld %ld\n",e,d,c,b,a); else if (b!=0) printf("there are 4, %ld %ld %ld %ld\n",e,d,c,b);else if (c!=0) printf(" there are 3,%ld %ld %ld\n",e,d,c);else if (d!=0) printf("there are 2, %ld %ld\n",e,d);else if (e!=0) printf(" there are 1,%ld\n",e);}6.1.程序分析:main( ){long ge,shi,qian,wan,x;scanf("%ld",&x);wan=x/10000;qian=x%10000/1000;shi=x%100/10;ge=x%10;if (ge==wan&&shi==qian)/*个位等于万位并且十位等于千位*/ printf("this number is a huiwen\n");elseprintf("this number is not a huiwen\n");}7. main(){float p,w,s,d,f;scanf(“%f,%,%f”,p,s,w);if (s>3000) d=0.15else if( s>=2000) d=0.1;else if(s>=1000) d=0.08;else if(s>=500) d=0.05;else if(s>=250) d=0.02;else d=0f=p*w*s*(1-d);printf(“%f”,f);}习题55-1单选题1~5 CDACB 6~10 DCAAB 11~16 DBDBCB5-2填空题1.2 02.k=5,s=43.3334.How Are You5.2#18#6.(1) i<10 (2) j%3!=07.(1) flag*(float)k/(k+1) (2) flag=-flag8.(1) s=0,t=1; (2) t=t*x/i*pow(-1,i+1); (3) printf(“%f”,s); 9.(1) max=x (2) x!=-1 (3) scanf("%d", &x)10. (1) n=1 (2) s5-3 编程题1. (1) main(){ int i; lont s=0;for(i=1;i<=100;i++)s+=i*i;printf(“%ld”,s);}(2)main(){ int i; lont p=1,s=0;for( i=1;i<=10;i++){p=p*i;s+=p;}printf(“%ld”,s);}(3) main(){ int i=1; lont p=1;float s=0;do{s+=1.0/p;p*=++i;}while(1.0/p>1e-6)printf(“%f”,s);}(4)main(){ int i=1, flag=1,pi=0;do{s+=flag*1.0/(2*i-1);i++;}while(1.0/(2*i-1)>1e-6);pri ntf(”%f”,s);}2.main(){int m,n,t,a,b;scanf(“%d,%d” ,&m,&n) ;if (m<n){ t=m ;m=n ;n=t ;}a=m;b=n;t=m%n ;while(t){ m=n ; n=t ;t=m%n;}printf(”%d,%d”,n,a*b/n);}3. main(){int x,y,s=1;scanf(”%d,%d”,&x,&y) ;for( ;y>0 ;y--)s*=x ;printf(”%d,%d,%d\n ”,s%10,s/10%10,s/100%10); }4.main(){int i=1, k=2, sum=0;do{sum+=k;k=k*2;i++;}while(sum<=100);printf(”total=%f\n”, 0.4*sum/(i-1));}5. main(){ int x,y,z;for( x=1 ; x<20 ;x++)for( y=1 ;y<33 ;y++){ z=100-x-y ;if (z>=0 && (5*x+3*y+z/3)-100<1e-5)printf(”x=%d,y=%d,z=%d\n”,x,y,z) ;}}6. main(){int j,k ;for( j=1 ;j<=4 ;j++){for(k=1;k<=4-j;k++;)printf(” ”);for(k=1 ;k<=2*j-1 ;k++)printf(”*”) ;printf(”\n”) ;}for( j=3;j>=1;j--){ for(k=1;k<=4-j;k++;)printf(””);for(k=1;k<=2*j-1;k++)printf(”*”);printf(”\n”);}}7.分析:其实此问题的解法非常简单。

C语言答案(删减版)

C语言答案(删减版)

C语言答案()第一章C语言程序设计基础习题参考答案1-1 冯·诺依曼体系结构的基本原理:五大构成部分:输入、输出、CPU、控制器、存储器;程序存储、自动执行、逻辑判断功能;二进制的信息表示。

1-6 编辑、编译、链接、执行。

1-7 必须有一个主函数,它是程序执行的起点;一个C语言程序由函数构成;每一条可执行语句都必须由分号结束;函数的代码段必须由花括号对括住。

一个函数中的语句组由声明区和可执行语句区两部分构成。

1-8 三个一缩;每遇到一个结构时均缩格,每结束一个结构时回退;缩格格式必须对齐。

1-9 试给出以下问题的程序设计过程描述:1) 求两个数中之最大者。

#include<stdio.h>int main(void){float fA,fB;clrscr();printf("Please input two values(fA,fB)::"); /*输入要比较的两个数fA,fB*/scanf("%f,%f",&fA,&fB); /*格式化输入fA,fB*/if(fA>=fB) printf("the max is %f",fA);if(fA<fB) printf("the max is %f",fB);return 0;} /*main()函数结束*/2) 求三个数中之最大者。

#include<stdio.h>int main(void){float fA,fB,fC,fMax;printf("Please input three values(fA,fB,fC)::");/*fA,fB,fC是输入的3个数,fMax存放最大值*/scanf("%f,%f,%f",&fA,&fB,&fC);fMax=fA;/*假定fA最大*/if(fMax<fB) fMax=fB;if(fMax<fC) fMax=fC;printf("The max is %f\n",fMax);/*输出最大值*/return 0;} /*main()函数结束*/3) 求1+2+3+…+100,即。

C语言复习资料,有答案

C语言复习资料,有答案

一、填空题1.C语言所提供的基本数据类型包括:单精度、双精度、整型、字符型。

2.若定义int m=8,y=3;则执行y*=y+=m-=y;后y的值是64。

3.Ox10相当于八进制数20 。

4.%m.n表示数据输出的总宽度占M列,其中小数部分占N 列。

5.C语言提供的3种逻辑运算符是非、或者、与。

6.当m=3,n=4,a=5,b=1,c=2时,执行完d=(m=a!=b)&&(n=b>c)后,n的值为1,m 的值为1,d的值为0。

7. 在数组定义格式中,放括号中的元素个数是量。

8. 判断字符串a和b是否相等,应当使用strcmp函数。

9. 在C语言中不能被调用的函数是函数。

10、目前,有两种重要的程序设计方法,分别是面向对象和面向过程。

12、面向对象程序设计的三个特征:多态、继承和封装。

13、在一个C源程序中,注释部分两侧的分界符为___ * */ __ 。

14、do----while 语句至少执行____1____次循环体。

15、在C语言中,一个double型数据在内存中所占的字节数为__8___。

16、若s是unsigned int型变量且已赋初值,则表达式s%2+(s+1)%2的值是__1_______17、表达式3>4的值是___0________18、若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n++后,x的值为11,n的值为6。

19、若x=0,y=0,z=0,则计算表达式x++||y++&&z++后,x的值为1,y的值为1,z的值为1。

二、单项选择题1、下列各高级语言中,(B)是面向对象的程序语言。

A)Basic B)C C)C++ D)Pascal2、一个C程序的执行是从( A )。

A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序的main函数开始,到本程序文件的最后一个函数结束D) 本程序文件的第一个函数开始,到本程序main函数结束3、C语言规定,不同类型的数据占用存储空间的长度是不同的。

C语言复习题及参考答案

C语言复习题及参考答案

C语言复习题及参考答案一、单项选择1、以下叙述正确的是:__B__。

A)C语言的源程序不必通过编译就可以直接运行。

B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令。

C)C语言源程序经编译形成的二进制代码可以直接运行。

D)C语言中的函数不可以单独进行编译。

2、以下4个用户定义标识符中,全部合法的一组是__A__。

A)_main enclude sin B)if –max turbo C)txt REAL 3COM D)int k_2 _001 3、以下不能定义为用户标识符的是_D__。

A)scanf B)Void C)_3com D)int4、C语言中用于结构化程序设计的3种基本结构是__A__。

A)顺序结构、选择结构、循环结构B)if、switch、breakC)for、while、do-whileD)if、for、continue5、为解决某一特定问题而设计的指令序列称为__C__。

A)文档B)语言C)程序D)系统6、用高级程序设计语言编写的程序称为__C__。

A)目标程序B)可执行程序C)源程序D)伪代码7、能将高级语言编写的源程序转换成目标程序的是__B__。

A)编辑程序B)编译程序C)驱动程序D)链接程序8、下列叙述中,正确一条是__C__。

A)计算机语言中,只有机器语言属于低级语言。

B)高级语言源程序可以被计算机直接执行。

C)C语言属于高级语言。

D)机器语言是所用机器无关的。

9、以下符合C语言语法的实型常量是__C__。

A)1.2E0.5B)3.14159E C).5E-3D)E1510、下面叙述正确的是__A___。

A)C程序中注释部分可以出现在程序中任何合适的地方。

B)花括号“{”和“}”只能作为函数体的定界符。

C)构成C程序的基本单位是函数,所有函数名都可以由用户命名。

D)分号是C语句之间的分隔符,不是语句的一部分。

11、设有以下定义:int a=0; double b=1.25; char c=’A’;#define d 2则下面语句中,错误是__D__。

C语言全部章节习题集(参考答案)

C语言全部章节习题集(参考答案)
}
选择结构答案
一、单项选择题
1.B 2.A 3.D 4.C 5.D 6.B 7.C
二、填空题
1. 5 5 4
5 5 4
3 3 4
2. 4 0
3. VeryGood
Good
VeryGood
A. 8 B. 4 C. 2 D. 出错
14、设a=1,b=2,c=3,d=4,则表达式:a<b? a : c<d? a : d的结果为( D )。
A. 4 B. 3 C. 2 D. 1
15、设a 为整型变量,不能正确表达数学关系:10<a<15的 C 语言表达式是( A )。
{ float a,b,temp;
printf("input a and b:");
scanf("%d,%d",&a ,&b);
temp = a; a = b; b = temp;
printf("a=%d , b=%d\n", a , b);
scanf(“%f”,&t);
if(t>=90) ch=’A’;
else if(t>=80) ch=’B’;
24、下列不正确的转义字符是( C )。
A. \\ B. \' C. 074 D. \0
二、填空题:
1、C 语言中的逻辑值“真”是用 1 表示的,逻辑值“假”是用 0 表示的。
2、若x和n都是int型变量,且x的初值为12,n的初值为5,则计算表达式x%=(n%=2)后x的值为 0 。
5、判断变量 a、b 的值均不为 0 的逻辑表达式为a!=0&&b!=0 。

C语言期末复习资料

C语言期末复习资料

《C语言》课程综合复习资料一、单项选择1. 若有如下语句: int *p1,*p2; 则其中int所指的是()A. p1的类型B. *p1和*p2的类型C. p2的类型D. p1和p2所能指向变量的类型2. 下列程序段的输出结果是() x=9; while(x>7) {printf(“*”);x--;}A. ****B. ***C. **D. *3. 下列变量的定义及赋值正确的是()A. int i=0;j;B. char c=”A”;C. double x,y,z; x=y=z=100;D. float a=b=100;4. 设有语句:int x=10; x = x -= x - x;,则执行语句后,x的值为()A. 30B. 20C. 10D. 405. 设有语句:float x=1,y; y=x 3/2; 则y的值是()A. 1B. 2C. 2.0D. 2.56. 设有如下定义和执行语句,其输出结果为()int a=3,b=3; a = --b + 1; printf(“%d %d”,a,b);A. 3 2B. 4 2C. 2 2D. 2 37. 设有两字符串“Beijing”、“China”分别存放在字符数组str1[10],str2[10]中,下面语句中能把“China”连接到“Beijing”之后的为()A. strcpy(str1,str2);B. strcpy(str1, “China”);C. strcat(str1,“China”)D. strcat(“Beijing”,str2);8. 设有定义语句:char str[][20]={""Hello"",""Beijing""},*p=str; 则printf(""%d\n"",strlen(p+20)); 输出结果是()A. 0B. 5C. 7D. 209. 设有定义int a[ ]={1,5,7,9,11,13},*p=a 3;则*(p-2),*(a 4)的值是()A. 5 11B. 1 9C. 5 9D. 有错误10. 设有定义:int x=0,y=1,z=1;则运行表达式:x=y >z--后,x,y,z的值分别是()A. 1,1,1B. 1,2,0C. 0,1,1D. 0,2,011. 设有定义:int x=12,n=5; 则表达式 x%=(n%2) 的值为()A. 0B. 1C. 2D. 312. 设有定义 int a=3,b=4,c=5; ,则以下表达式中,值为0的表达式是()A. a&&bB. a<=bC. a||b c&&b-cD. !((a<b)&&!c||1)13. 设有定义 int a[ ]={1,5,7,9,11,13}, *p=a 3; 则*(p-2) , *(a 4) 的值是()A. 5 11B. 1 9C. 5 9D. 有错误14. 设有定义 char *p=“abcde\0fghjik\0”; 则printf(“%d\n”,strlen(p));输出结果是()A. 12B. 15C. 6D. 515. 设有int x=11;则表达式(x *1/3)的值是()A. 3B. 4C. 11D. 1216. 设a=3,b=4,c=-5,则逻辑表达式:a || b c && b==c 的值是()A. 1B. 0C. 非0D. 语法错17. 若有以下定义:int a[10],*p=a; 则*(p+3)表示的是()A. 元素a[3]的地址B. 元素a[3]的值C. 元素a[4]的地址D. 元素a[4]的值18. 若有以下定义:char s[20]= "programming",*ps=s;则不能代表字符g的表达式是()A. ps 3B. s[3]C. ps[3]D. ps =3,*ps19. C语言中,函数返回值的类型是由()A. return语句中的表达式类型决定B. 调用函数的主调函数类型决定C. 调用函数时的临时类型决定D. 定义函数时所指定的函数类型决定20. C语言提供的合法关键字是()A. swicthB. chaC. CaseD. default二、读程序题1. "#include <stdio.h>void main(){ int a=4,x=3,y=2,z=1;printf(""%d\n"",(a<x ? a : z<y ? z : x));}"2. "#include <stdio.h>void main(){ int x=12,y=0;if(x>=0){ if(x>0) y=10; }else y=-10;printf(“y=%d\n”,y);}"3. "#include <stdio.h>void main(){ int k=1;switch(k){ case 0: printf(""A""); break;case 1: printf(""B"");case 2: printf(""I"");case 3: printf(""G""); break;default: printf(""E"");}}"4. "#include <stdio.h>#define S(x) x*xvoid main(){int a,k=3,m=1;a=S(k+m);printf(""%d"",a);}"5. "#include <stdio.h>int fun(int a, int b){ if(a>b) return(a);else return(b);}void main(){ int x=3, y=8, z=6, r;r=fun(fun(x,y), 2*z);printf(""%d\n"", r);}"6.#include <stdio.h&>void main(){ int k=4,n=0;for(;n<k;){ n++;if(n%3!=0) continue;k- -;}printf(""%d,%d\n"",k,n);}三、编程题1. 写一个判断素数的函数。

c语言复习试题及答案

c语言复习试题及答案

c语言复习试题及答案1. 什么是C语言?C语言是一种通用的、过程式的编程语言,广泛用于系统软件与应用软件的开发。

2. C语言中的关键字有哪些?C语言的关键字包括:int, char, float, double, void, struct, union, enum, return, break, continue, if, else, switch, case, default, while, do, for, goto, sizeof, typedef。

3. 请写出C语言中声明一个整型变量的语句。

int variable_name;4. 如何在C语言中定义一个函数?在C语言中,定义一个函数需要指定返回类型、函数名和参数列表。

例如:int add(int a, int b) {return a + b;}5. 请解释C语言中的数组。

数组是相同数据类型元素的集合,存储在连续的内存位置。

声明数组的语法如下:数据类型数组名[数组大小];6. C语言中如何实现字符串的输入和输出?使用`scanf`函数输入字符串,使用`printf`函数输出字符串。

7. C语言中如何进行文件操作?使用`fopen`函数打开文件,`fprintf`函数写入文件,`fscanf`函数读取文件,`fclose`函数关闭文件。

8. 请写出一个C语言程序,实现计算两个整数的和。

#include <stdio.h>int main() {int a, b, sum;printf("Enter two numbers: ");scanf("%d %d", &a, &b);sum = a + b;printf("Sum of the numbers is: %d", sum);return 0;}9. 什么是指针?指针是一个变量,其值为另一个变量的地址。

C语言基础知识(答案)

C语言基础知识(答案)

第一章C语言基础知识一,选择题1 答案是AA正确B {}可以作为复合语句的标志C main 函数不是用户命名的D 分号是语句结束的标志,肯定是语句的一部分做这个题目需要对书上的概念透彻的理解2 答案是AA 错误用户标识符:命名时,标识符的选择由用户自定,但是不能与关键字相同,所以A选项错误。

这个题目考察用户标识符3 答案是B用户标识符是标识符,所以可以是有下划线,但是中划线不属于字母,数字,下划线其中一种。

这个题目考察用户标识符的概念。

4 答案是Bdefine 是预定义标识符,而预定义标识符可以是用户标识符,所以define可以是用户标识,if 是关键字,而关键字不能是用户标识符,所以if不可以是用户标识符5 答案是Dlong 是关键字,参照附录二注:6--13 考察用户标识符概念6 答案是DD答案以数字2开头了,不符合标识符定义7 答案是CC答案以数字开头了8 答案是Dint 是关键字9 答案是B答案A 是关键字,答案C是以数字开头了,不符合概念,答案D出现了小数点10 答案是A答案A出现了小数点11 答案是C答案C 以数字开头了12 答案是AB答案中float 是关键字,C答案中3c以数字3开头了,D答案中-5d 中- 不属于字母,数字,下划线中一种13 答案是AB答案中-max中-错误,C答案中3COM以字母3开头了,D答案中int 是关键字,不是用户标识符14 答案是BA答案中15. 后面不应该有点,C答案中出现了逗号,D中字母B有问题15 答案是DVisual C++6.0中int类型的变量占的字节数为4。

16 答案是BB中出现了8,而八进制只能有0到7组成17 答案是D答案D中开头是0不是o18 答案是C答案A中E后面是整数,0.5是小数答案B 中E后面不能为空答案D中E前面不能为空本题目考察指数的表示形式19 答案是C答案A中2.0有问题,不能为小数形式答案B中E前面不能为空答案D中E后面不能为空本题目考察指数的表示形式20 答案是AB中八进制中不能出现数字8,C中e后面不能是小数,D中e后面不能为空21 答案是BB中0.4是小数,不正确22 答案是CC中0.5是小数,不正确23 答案是D3.6-5/2+1.2+5%2=3.6-2+1.2+1=3.8本题目考察算术运算符,需要注意整数除以整数结果只能是整数24 答案是D%不能用于实型的计算25 答案是DD答案中$不属于字母,数字,下划线26 答案是AA答案是逗号表达式,B答案中x+1=y是赋值表达式,左边只能是变量,而这里是x+1, 同理答案C中x+10也是错误的,在D答案中,考察的是强制类型转换,正确的是(double)x/1027 答案是A本题考察的是注释需要注意的地方,具体解答见课本第2页中间部分28 答案是B答案A中n2没有定义,答案C中在定义f之前不能使用它,答案D 中E后面必须是整数29 答案是C考察的是强制类型转换,正确的是k%(int)f30 答案是D本题目类似与第七课时的例一,解题方法是要抓住++m,--n,--m,表达式的值是变量变化之后的值,而n--表达式的值是变量n变化之前的值31 答案是B本题目考察的是负整数与无符号正整数在计算机中存放的格式的一样的,但表示的不同的两个数32 答案是CA答案中%运算对象不能为实型,26.8错误,B答案中考察的赋值运算符,赋值运算符左边必须是变量,所以赋值运算符左边1+2错误,同理答案D错误33 答案是C本题目考察的是课本第15页的关于自加与自减运算符的第一点说明,即增量运算符的运算对象只能是变量,而在C答案中++(i+1)中,i+1是表达式34 答案是B本题目考察的是整数除以整数结果是整数,在B答案中1/2结果是0,导致整个表达式的值是0,明显是错误的35 答案是D对于++、--单目运算符来说,其运算对象可以是char型、int型和float 型变量36 答案是A本题目主要考察n++表达式的值是n变化之前的值,然后使n的值增加137 答案是Bc=a/b+0.4 c=8/5+0.4 c=1+0.4 c=1.4 因为c 是int 型的,所以c的值是1 ,做此题目需要仔细阅读题目38 答案是D(int)a+b/b=(int)5.5+2.5/2.5=5+1.000000=b=6.000000同样a,b的类型是double型的39 答案是Dlong 和short不能相互修饰40 答案是C标识符中不能有$41答案是CA选项中,在变量赋值时不能赋给表达式,而y*5是表达式;选项B 中进行强制类型转换时,类型标识符要加上括号,所以错误;选项D 中,%(求余运算符)运算对象只能是整形数。

C语言复习题与答案

C语言复习题与答案

考试时选择题部分需要涂答题卡,请带2B铅笔考试题型:单项选择:填空题:读程序:程序填空:编写程序:一、单项选择1.一个C语言程序是由()。

A.函数组成B.一个主程序和若干子程序组成C.若干过程组成 D.若干子程序组成2.在C语言中,复合语句()。

A. 必须出现在循环或分支中B. 必须包含多条语句C. 必须使用{}将有关语句括起来D. 以上三种都对3. 以下叙述不正确的是()。

A.一个C源程序可由一个或多个函数组成B. 一个C源程序必须包含一个main函数C. C程序的基本组成单位是函数D. 在C程序中,注释说明只能位于一条语句的后面4. C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符()。

A.必须为字母B.可以是字母、数字和下划线中任一种字符C.必须为下划线D.必须为字母或下划线5. 下面不正确的字符串常量是()。

A. …abc‟B.“12‟12”C.“0”D.“”6. 下面正确的字符常量是()。

A."c" B. "\\" C. 'W' D. ''7. 以下表达式值为3的是()。

A.16-13%10 B. 2+3/2C. 14/3-2D.(2+6)/(12-9)8. 下列表达式的值为0的是()。

A. 3<5B. 3/5.0C. 3/5D. 3%59. 若有代数式3ae/(bc),则不正确的C语言表达式是()。

A. a/b/c*e*3B. 3*a*e/b/cC. 3*a*e/b*cD. a*e/c/b*310. 在C语言中,要求运算数必须是整型的运算符是()。

A. /B. ++C. !=D. %11. 若x、i、j和k都是int型变量,则执行下面表达式后x的值为()。

x=(i=4,j=16,k=32)A. 4B. 16C. 32D. 5212. 执行表达式a=12,a=a+13,a+20后a的值为()。

c语言程序设计复习资料(答案)【最新精选】

c语言程序设计复习资料(答案)【最新精选】

C语言程序设计复习资料一、填空题1、C语言程序是函数构成的,其中有且只有1个主函数,程序的的执行总是从该函数开始。

2、用条件运算符写出求两个整数x,y中大数的表达式z =x>y?x:y。

3、定义一个符号常量PI,其值为3.1415926,格式是#define PI 3.1415926。

4、设整型变量X=5,Y=6,Z=7,执行X%=Y+Z后,X = 5。

5、执行语句“for(j=15 ;j >=5 ;j-- );”后,变量j的值为4。

6、在一个函数中有定义int a=60,*p=&a ;执行*p=*p +15;后,a的值为。

7、结构化程序设计的三种基本结构是顺序结构、选择结构和循环结构。

8、定义一个长度为100的整形一维数组a ,且前5个元素的初值为3,6,9,12,15,定义的格式为:int a[100]={3,6,9,12,15}。

9、写出表达式25>15&&65<25||88>75的值1。

10、函数的传值调用中,实际参数把它的值传递给形式参数。

11、表达式(int)(20+2.5*3+6+5.3) 的值是38 。

12、若有以下定义:char a;int b;float c;double d;则表达式a*b+d-c的值的类型是。

13、写出表达式66>65&&65<85||85>95的值1。

14、在C语言中,允许在程序中用typedef来定义新的类型名代替已有的类型名,例如typedef int INTEGER;。

15、C语言采用编译方式将源程序转换为二进制的目标代码,编写好一个C程序到完成运行一般经过以下几个步骤:编辑、编译、连接、执行;16、C程序是由函数组成的,一般情况下函数体由说明部分和执行部分组成,其中说明部分的作用是;17、表达式m = a > b ? a+b : b+5 当a=15,b=11时,m的值为:26;18、函数的传值调用中,实际参数把它的值传递给形式参数;19、写出表达式1<4&&7<5的值;20、在C语言中,字符串是用双引号引起来的一串字符。

C语言复习提纲(含答案)

C语言复习提纲(含答案)


B) 一个整型表达式 D) 一个不合法的表达式
10
Logo
常见运算符
①算术运算符(+ - * / % ++ --):运算结果为数值。 注意:
自增、自减运算符的应用
②关系运算符(> < == >= <= !=):运算结果为1(真)或0 (假)。
③逻辑运算符(! && ||):运算结果为1(真)或0(假)。
变量:先定义,再使用
标识符:掌握标识符的命名规则:以下划线或字母开始,后 面跟着数字、字母、下划线。 a_b (合法) a-b (不合法)
Logo
8
短整型short 整 数值类型 基本类型 字符类型char 数组 结构体struct 构造类型 共用体union 浮点型 型 整型int 长整型long
第4章 选择结构程序设计
第5章 循环结构程序设计 第6章 利用数组处理批量数据 第7章 用函数实现模块化程序设计 第8章 善于利用指针 第9章 用户自己建立数据类型 第10章 对文件的输入输出
Logo
3
第1章 程序设计和C语言
C语言程序基本构成(1.4.2节),包括:
函数与主函数 程序由一个或多个函数组成 必须有且只能有一个主函数main() 程序执行从main开始,在main中结束,其它函数通过 嵌套调用得以执行。
a/10%10的值为(2),a%10的值为( 3 )
表达式 j=i++/2 的值
注意:两整数相除,结果为整数
Logo
15
C语句分类
程序控制语句(9种):
分支:if( )~else~ ;switch
循环:for( )~;while( )~;do~while( ) 辅助控制:continue;break;goto;return 函数调用语句 表达式语句:表达式加分号构成。

C语言1-5章复习题 参考答案

C语言1-5章复习题 参考答案

一.选择题1、若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是(C)。

A .-3 B.9 C.-12 D.62、若有定义:int a=8,b=5,c;执行语句c=a/b+0.4;后,c的值为(B)。

A .1.4 B.1 C.2.0 D.23、有如下程序:void main(){int i,sum;for(i=1;i<=3;sum++)sum+=i;printf("%d\n",sum);}该程序的执行结果是(C)。

A .6 B.3 C.死循环 D.0 。

4、下列关于表达式的描述中,错误的是(D)。

A . 常量和变量都是表达式。

B. 运算符类型对应表达式的类型。

C. 每一个表达式都有自己的值。

D. 表达式必须以分号结尾。

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

A . '\t' B.” A” C.65 D.a6、若已定义x和y为double类型,则表达式x=1;y=(x+3)/2的值是(C)。

A .1 B.2 C.2.00000 D.2.500007、表达式:10!=9的值是(D)。

A . true B. 非零值 C.0 D.18、以下程序的输出结果是(B)。

#include<stdio.h>void main(){printf("%d\n",NULL);}A . 不确定的 B.0 C.-1 D.19、请选出合法的C语言赋值语句。

(B)A . a=b=58 B.i++; C. a=58,b=58 D. k=int(a+b);10、假设int b=2;表达式(b>>2)/(b>>1)的值是(A)。

A .0 B.2 C.4 D.811、关于语句printf(“hello world\n”);,下列描述中错误的是(C)。

A . printf()是格式化输出函数,用于输出信息。

B. printf()括号中的内容为函数的参数。

c语言复习试题及答案

c语言复习试题及答案

c语言复习试题及答案C语言复习试题及答案一、选择题1. C语言中,一个整型变量的取值范围是:A. -128 到 127B. -32768 到 32767C. -2147483648 到 2147483647D. 取决于编译器答案:D2. 下列哪个关键字用于定义C语言的结构体?A. structB. defineC. unionD. enum答案:A3. C语言中,字符串在内存中是以什么方式存储的?A. 字符串名B. 字符串长度C. 字符串本身D. 字符串结束标志 '\0'答案:D4. 在C语言中,函数返回值的类型由什么决定?A. return 语句B. 函数名C. 函数定义时指定的类型D. 函数参数的类型答案:C5. 下列哪个操作符不能用于位操作?A. &B. |C. ^D. ++答案:D二、填空题6. C语言中,预处理器指令 `#include` 的作用是_______。

答案:引入其他文件7. `int main()` 函数中的 `void` 表示该函数_______。

答案:不返回任何值8. 在C语言中,数组的索引是从_______开始的。

答案:09. `printf` 函数的返回类型是_______。

答案:int10. 表达式 `3.0 / 0` 在C语言中会导致_______。

答案:运行时错误三、简答题11. 请简述C语言中指针的概念及其用途。

答案:指针是一种变量,它存储的是另一个变量的内存地址。

指针在C语言中用于直接访问内存、动态内存分配、数组操作、函数参数传递等。

12. 解释C语言中数组和指针之间的关系。

答案:在C语言中,数组名可以作为指针使用,它指向数组的第一个元素的地址。

通过指针可以遍历数组,也可以通过指针修改数组元素的值。

四、编程题13. 编写一个C语言程序,实现对整数数组的排序。

```c#include <stdio.h>void sort(int arr[], int n) {int i, j, temp, min_idx;for (i = 0; i < n - 1; i++) {min_idx = i;for (j = i + 1; j < n; j++) {if (arr[j] < arr[min_idx]) {min_idx = j;}}if (min_idx != i) {temp = arr[i];arr[i] = arr[min_idx];arr[min_idx] = temp;}}}int main() {int arr[] = {64, 34, 25, 12, 22, 11, 90}; int n = sizeof(arr) / sizeof(arr[0]);sort(arr, n);printf("Sorted array: \n");for (int i = 0; i < n; i++) {printf("%d ", arr[i]);}printf("\n");return 0;}```14. 编写一个C语言程序,实现字符串的反转。

c语言复习范围(答案)

c语言复习范围(答案)

C语言复习范围一、选择题(每小题1分,共30分)二、程序填空题(每空1分,共10分)三、程序运行结果题(每小题2分,共10分)四、编程题(每小题5分,共20分)1.判断100~200之间的所有素数并输出。

#include <>#include <>void main(){ int m,k,i,n=0;for(m=101;m<=200;m=m+2){ k=sqrt(m);for (i=2;i<=k;i++)if (m%i==0) break;if (i>=k+1){printf("%d ″,m);n=n+1;}if(n%10==0) printf(″\n″);}printf ("\n");}2.将一个3×3矩阵转置并输出。

#include<>void main()|{int a[3][3],i,j,x;for(i=0;i<3;i++)for(j=0;j<3;j++)scanf("%d",&a[i][j]);for(i=0;i<3;i++)for(j=0;j<i;j++){ x=a[j][i];a[j][i]=a[i][j];a[i][j]=x;?}for(i=0;i<3;i++){for(j=0;j<3;j++)printf("%d ",a[i][j]);printf("\n");}}3.编写一个求两个数最大值的函数,在主函数输3个整数,调用该函数输出其中最大值。

#include<>int max(int a,int b)){return (a>ba:b );}void main(){int a,b,c,z;scanf("%d%d%d",&a,&b,&c);z=max(max(a,b),c);printf("最大的数是%d\n",z);}~4.编程程序,判断某一年是否是闰年。

C语言概念复习-参考答案

C语言概念复习-参考答案

C语言概念复习-参考答案C语言概念复习-参考答案(1-8章)第一章1.怎么学习C语言?对程序设计语言有所了解,不断的编程实践,领会和掌握其基本思想和方法。

模仿教材中程序,改写和体会,循序渐进,到独立编写复杂问题。

2. Visual C++整型(int)占用几个字节,取值范围是多少?4字节,-2147483648-21474836473.程序设计语言必须具有什么样的能力?数据表达和处理4.在程序设计语言中,一般都事先定义几种基本数据类型,供程序员直接使用,这些基本数据类型在程序中的具体对象主要是哪两种形式?并解释这两种形式。

常量和变量常量值在程序中识不变的。

变量可对它做一些相关的操作。

5.为了使程序员能充分的表的各种复杂的数据,程序设计语言还提供了构造的具体数据类型的手段,有哪些?数组、结构、文件、指针等。

6.按照结构化程序设计的观点,任何程序都可以将模块通过哪3种基本的控制结构进行组合的实现?顺序控制结构、分支控制结构、循环控制结构。

7. C语言的语法中标识符是由什么组成,其中第一个字符必须是什么?C语言的语法中标识符由字母、数字和下划线组成,其中第一个字符必须是字母或下划线。

8.除了标识符意外C语言还有哪些主要的“单词”,C语言一共有多少个关键字?还有保留字、用户自定义标识符、常量、运算符、分隔符。

C语言一共有32个关键字。

9.什么是复合语句?用一对大括号{}将若干个语句顺序组合在一起就形成了一个复合语句。

10. C语言本身有没有提供相关的输入输出语句?它是怎么实现输入输出的?C语言本身没有提供相关的输入输出语句。

它通过调用系统库函数中的有关函数实现数据的输入输出。

11.对C语言而言,编译器对程序编译过程怎样的?编译器首先要对源程序进行词法分析,然后进行语法与语义分析,最后生成可执行的代码。

如果程序中由语法错误,编译器会直接指出程序中的错误。

12.对于程序的逻辑错误我们可以通过什么实现发现问题?主要的方法是什么?通过程序的调试。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C语言复习范围一、选择题(每小题1分,共30分)二、程序填空题(每空1分,共10分)三、程序运行结果题(每小题2分,共10分)四、编程题(每小题5分,共20分)1.判断100~200之间的所有素数并输出。

#include <stdio.h>#include <math.h>void main(){ int m,k,i,n=0;for(m=101;m<=200;m=m+2){ k=sqrt(m);for (i=2;i<=k;i++)if (m%i==0) break;if (i>=k+1){printf("%d ″,m);n=n+1;}if(n%10==0) printf(″\n″);}printf ("\n");}2.将一个3×3矩阵转置并输出。

#include<stdio.h>void main(){int a[3][3],i,j,x;for(i=0;i<3;i++)for(j=0;j<3;j++)scanf("%d",&a[i][j]);for(i=0;i<3;i++)for(j=0;j<i;j++){ x=a[j][i];a[j][i]=a[i][j];a[i][j]=x;}printf("\n");for(i=0;i<3;i++){for(j=0;j<3;j++)printf("%d ",a[i][j]);printf("\n");}}3.编写一个求两个数最大值的函数,在主函数输3个整数,调用该函数输出其中最大值。

#include<stdio.h>int max(int a,int b){return a>b?a:b;}void main(){int a,b,c,z;printf("input three numbers:\n");scanf("%d%d%d",&a,&b,&c); z=max(max(a,b),c);printf("最大的数是%d\n",z);}4.编程程序,判断某一年是否是闰年。

#include "stdio.h"void main(){int year;scanf("%d",&year);if((year%4==0&&year%100!=0)||y ear%400==0)printf("%d 是闰年。

",year); elseprintf("%d 不是闰年。

",year);}5.编程求∑∑==+5015012k k k k 。

#include "stdio.h" void main() {int i,s=0;for(i=0;i<=50;i++) s=s+i;for(i=0;i<=50;i++) s=s+i*i;printf("%d\n",s); }6.将一个二维数组行和列的元素互换,存到另一个二维数组中。

例如:⎥⎦⎤⎢⎣⎡=654321a ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=635241b 。

#include<stdio.h>void main() {int a[2][3]={1,2,3,4,5,6},i,j,b[3][2];for(i=0;i<=1;i++)for(j=0;j<=2;j++)b[j][i]=a[i][j];for(i=0;i<=2;i++){for(j=0;j<=1;j++)printf("%d ",b[i][j]);printf("\n");}}7.把100~200之间的不能被3整除的数输出。

#include<stdio.h>void main(){int i;for(i=101;i<=200;i++)if(i%3!=0)printf("%d ",i);}8.求一个3×3的整数矩阵主对角线元素之和。

#include<stdio.h>void main(){int a[3][3]={1,2,3,4,5,6,7,8,9},i,s=0; for(i=0;i<=2;i++)s=s+a[i][i];printf("%d\n",s);}9.编写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的信息。

#include<stdio.h>int prime(int n){int flag=1,i;for(i=2;i<=n/2&&flag==1;i++)if(n%i==0)flag=0;return(flag);}void main(){int n;scanf("%d",&n);if(prime(n))printf("%d is a prime.\n",n); elseprintf("%d is not a prime\n",n); }10.编程实现顺序输出26个大写英文字母。

(A的ASCII为65)#include<stdio.h>void main(){char ch;for(ch='A';ch<='Z';ch++)printf("%c ",ch);}11.求1~100之间的奇数和并输出。

#include<stdio.h>void main(){int i,s=0;for(i=0;i<=100;i++)if(i%2!=0)s=s+i;printf("%d ",s);}12.编程求出3×3矩阵副对角线元素之和。

#include<stdio.h>void main(){int a[3][3]={1,2,3,4,5,6,7,8,9},i,s=0;for(i=0;i<=2;i++)s=s+a[i][2-i];printf("%d\n",s);}13.编写一个求2个数中最大值Max 的函数,然后用这个函数求4个数的最大值。

#include<stdio.h>int max(int x,int y){return((x>y)?x:y);}void main(){int a,b,c,d,m,n;scanf("%d%d%d%d",&a,&b,&c,&d); m=max(a,b);n=max(c,d);printf("max=%d\n",max(m,n)); }14. 编程求n!#include<stdio.h>void main(){int i=2,fact=1,n;scanf("%d",&n);while(i<=n){fact=fact*i;i++;}printf("%d",fact);}15.编写程序输出100-200间的所有素数。

#include <stdio.h>#include <math.h>void main(){ int m,k,i,n=0;for(m=101;m<=200;m=m+2){ k=sqrt(m);for (i=2;i<=k;i++)if (m%i==0) break;if (i>=k+1){printf("%d ″,m);n=n+1;}if(n%10==0) printf(″\n″);}printf ("\n");}16.用数组实现菲波那契数列(即第1项和第二项均为1,从第三项开始每项等于前两项之和)。

#include <stdio.h>void main(){int i;int f[10]={1,1};for(i=2;i<10;i++)f[i]=f[i-2]+f[i-1];for(i=0;i<10;i++){printf(″%12d″,f[i])if((i+1)%5==0) printf(″\n″);}}17.输入一个华氏温度,要求输出摄氏温度。

公式为)32(95-=F c 输出要有文字说明,取2位小数。

#include <stdio.h> void main() {float c,f;printf("input f :\n"); scanf("%f",&f); c=(5.0/9.0)*(f-32); printf("c=%5.2f\n",c); }18.编程程序,输入一个整数,打印出它是奇数还是偶数。

#include<stdio.h>void main(){int i;scanf("%d",&i);if(i%2!=0)printf("%d是奇数。

",i);elseprintf("%d是偶数。

",i);}19.试求出1000以内的“完全数”。

(提示:如果一个数恰好等于它的因子之和(因子包括1,不包括数本身),则称该数为“完全数”。

如:6的因子是1、2、3,而6=1+2+3,则6是个“完全数”。

)#include<stdio.h>void main(){ int i,a,m;for(i=1;i<1000;i++)/*判断i是否完数*/{for(m=0,a=1;a<=i/2;a++)if(i%a==0) m=m+a; /*如a是i的因子,则累加到m*/ if (m==i)printf("%4d",i);/*如因子和m与自身相等,则是完数,输出*/}}20.写一函数,计算x 的n 次方。

#include<stdio.h> int f(int a,int n) {int i,f=1;for(i=1;i<=n;i++) f=f*a; return(f); }void main() {int x,i;scanf("%d%d",&x,&i); printf("%d",f(x,i)); }21.有一分数序列 ,,,,,,132181358352312...求出这个数列的前20项之和。

相关文档
最新文档