高级语言程序设计编程题
高级语言程序设计习题及答案

习题一1-1 Pascal语言的程序结构由哪几部分组成?试述各部分的构成形式和作用。
1-2 Pascal基本字符集有哪些成分构成?Pascal的保留字是什么?1-3 Pascal语言中标识符是怎样构成的?下列字符串哪些是正确的Pascal标识符?哪些是错误的?为什么?A5B,5H4,PEL,1,A31,x﹡y,AB,A + B,$500,G1(x),xyz,E-10,V AR1-4 下列数据哪些是整数?哪些是实数?哪些是非法的(假设计算机字长为32位)?256 2.54 25E+6 3.75E6 0.15E-61.2E70 1E-15 -673 E8 4,7345.7E-6.6 0 58989 -73451 E-31-5 下列哪些常量定义是正确的?CONSThvalue=200;lvalue=0 OR 1 OR 2;firstchar=’a’;t=true;b=true OR false;1-6 假定已作了下述说明:CONSTgap=’’;V ARm,n:integer;a,b:real;p,q:boolean;c1,c2:char;指出下列每一语句是否有效,并说明理由:⑴m:=trunk(b)+a⑵p:=m+n⑶read(c1,c2,’’)⑷c1:=gap⑸p:=q AND (ord(c1)<>’a’)⑹m:=n MOD a⑺‘c1’ :=’c2’⑻c2:=chr(‘a’)⑼m:=m-ord(‘0’)⑽writeln(a,p,m,n,q,q,b)⑾ n:=a-trunc(a)⑿b:=2.99*109⒀a:=m/n⒁b:ord(c1)+ord (c2)1-7 已知变量有下面指定的值:a=7,b=-6,c=30,d=10.8600,e=1E3,f=’*’,g=true求下面表达式的值:a+b DIV trunc(d)+3①d-0.75/(e+140.0)*70.0②sqrt(abs(b-a)+succ(ord(f))③chr(10* a MOD sqr(b))④NOT ((a>=b) AND g)⑤(ord(b) OR (sqr(b)>e)) AND (g AND NOT(abs(b)<>6))1-8 已知有如下说明VARp,q,r,s:Boolean;k:integer;试写出下列每一表达式的类型,如能确定,请写出它们的值。
高级语言及程序设计试卷与答案

高级语言程序设计一、选择题:(共20题,每题分,共30分)1. 下列四个选项中,均是合法的整型常量的选项是()A.160 –0XFFFF 011 B. -0XCDF 01A 0XE C. -01 986,012 0688 D. -0X48a 2e5 0x 2. 下列四个选项中,均是不合法的浮点数的选项是()A.160.e3 B. 123 .e5C.18 123e4 D. e3. 234 1e33. 合法的C语言字符常数是()A.'\t' B. "A"C.54 D. A4. 在C语言中,要求运算数一定是整型的运算符是()A./ B. ++C.!= D. %5. 字符串常量”mine”的字符个数是()A.4 B. 5C.6 D. 76. 以下属于非法的C语言转义字符的是()A.'\b' B. '0xf'C.'\037' D. '\'7. 若x、y、z均为int型变量,则执行以下语句后的输出是()x=(y=(z=10)+5)-5;printf("x=%d, y=%d, z=%d\n",x,y,z);y=(z=x=0,x+10);printf("x=%d, y=%d, z=%d\n",x,y,z);A. x=10, y=15, z=10B.x=10, y=10, z=10x=0, y=10, z=0x=0, y=10, z=0C.x=10, y=15, z=10D. x=10, y=10, z=10x=10, y=10, z=0 x=10, y=10, z=08. 在以下一组运算符中,优先级最高的运算符是()A.<= B. =C.% D. &&9. 已知:int x; float y; 所用的scanf调用语句格式为:scanf( “x=%d, y=%f”, &x, &y );为了将数据10和分别赋给x和y,正确的输入应当是()A.x=10, y=<回车> B. 10, <回车>C.10<回车><回车> D. x=10<回车>y= <回车>10. 已有如下定义的输入语句,若要求A1,A2,C1,C2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的数据输入方式是()(注:□表示空格,<CR>表示回车)int a1, a2,;char c1, c2;scanf( “%d%c%d%c”, &a1, &c1, &a2, &c2 );A.10□A□20B<CR> B. 10□A□20□B<CR>C.10A20B<CR> D. 10A20□B<CR>11. 能正确表达:“当x取值在[1,10]和[200,210]范围内为真,否则为假”的表达式是()A.(x>=1) && (x<=10) && (x>=200) && (x<=210)B. (x>=1) || (x<=10) || (x>=200) || (x<=210)C.(x>=1)&&(x<=10) || (x>=200)&&(x<=210)D. (x>=1) || (x<=10)&&(x>=200) || (x<=210)12. 假定所有变量均已正确说明,下列程序段运行后x的值是()a=b=c=0; x=35;if(!a) x--;else if (b);if(c) x=3;else x=4;A.34 B. 4C.35 D. 313. 若变量c为char类型,能正确判断出c为大写字母的表达式是()A.'A'<=c<= 'Z' B. (c>= 'A')||(c<= 'Z')C.('A'<=c)and ('Z'>=c) D. (c>= 'A')&&(c<= 'Z') 14. 若给定条件表达式:(!n) ? (c++) : (c--),则与表达式n等价的表达式是()A.n==0 B. n==1C.n!=0 D. n!=115. 已知:int a=4, b=5, c; 则执行表达式c=a=a>b后变量a的值为()A.0 B. 1C.4 D. 516. 定义int i=1; 执行语句while(i++<5); 后,i的值是()A.3 B. 4C.5 D. 617. 合法的数组说明是()A.int a[] = “string”; B.int a[] = { 0, 1, 2, 3, 4, 5 }; C.char a = “string”; D.char a[] = { 0, 1, 2, 3, 4, 5 };18. 当调用函数时,实参是一个数组名,则向函数传送的是()A.数组的长度 B. 数组的首地址C.数组每一个元素的地址 D. 数组每个元素中的值19. 函数调用:strcat(strcpy(str1,str2),str3)的功能是()A.将串str1复制到串str2中后再连接到串str3之后B. 将串str1连接到串str2之后再复制到串str3之后C.将串str2复制到串str1中后再将串str3连接到串str1之后D. 将串str2连接到串str1之后再将串str1复制到串str3中20. 已知:int a[]={1,2,3,4,5,6,7,8,9, *p=a; 则(*p) 的值是()A.1 B. 2C.3 D. a二、判断题:(共10题,每题1分,共10分)()1.C语言中能使用关键字作为标识符。
c高级程序设计试题及答案

c高级程序设计试题及答案一、选择题(每题2分,共20分)1. 在C语言中,下列哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个函数用于将字符串s复制到字符串t中?A. strcat(s, t)B. strcpy(s, t)C. strcmp(s, t)D. strncat(s, t)答案:B3. 在C语言中,下列哪个运算符用于执行逻辑与操作?A. &&B. ||C. !D. ~答案:A4. 下列哪个选项是正确的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 */答案:A5. 在C语言中,下列哪个函数用于打开一个文件?A. fopenB. fcloseC. freopenD. remove答案:A6. 下列哪个选项是C语言中的合法整型常量?A. 123B. 0x1AC. 1.23D. 0123答案:A7. 下列哪个关键字用于定义一个函数?A. intB. voidC. returnD. struct答案:A8. 在C语言中,下列哪个运算符用于执行算术右移操作?A. <<B. >>C. <=D. >=答案:B9. 下列哪个函数用于将整数n转换为字符串并存储在s指向的数组中?A. sprintf(s, "%d", n)B. scanf(s, "%d", &n)C. printf("%d", n)D. scanf("%d", &n)答案:A10. 在C语言中,下列哪个选项是正确的多行字符串字面量?A. "Hello, world"B. "Hello,\nworld"C. "Hello, " "world"D. "Hello, " 'world'答案:B二、填空题(每题2分,共20分)1. 在C语言中,使用________关键字可以定义一个指针。
高级语言程序设计习题(最新版带答案)

第1章C语言概述习题1.单项选择题(1)C语言是在B语言的基础上产生的。
A.AB.BC.DD.E(2)在C语言中,每个语句必须以D结束。
A.回车符B.冒号C.逗号D.分号(3)标识符和关键字间,要用C隔开。
A.回车符B.冒号C.空格D.分号(4)用C语言编写的源文件经过编译,若没有产生编译错误,则系统将(B)。
A.生成可执行目标文件B.生成目标文件C.输出运行结果D.自动保存源文件(5)下列说法中正确的是(B)。
A.由于C源程序是高级语言程序,因此一定要在TC软件中输入B.由C源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入C.由于C程序是高级语言程序,因此输入后即可执行D.由于C程序是高级语言程序,因此它由命令组成(6)下列说法中正确的是(A)。
A.C语言程序由主函数和0个或多个函数组成B.C语言程序由主程序和子程序组成C.C语言程序由子程序组成D.C语言程序由过程组成(7)下列说法中错误的是(D)。
A.主函数可以分为两个部分:主函数说明部分和主函数体B.主函数可以调用任何非主函数的其他函数C.任何非主函数可以调用其他任何非主函数D.程序可以从任何非主函数开始执行2.填空题(1)C语言只有32个关键字和9种控制语句。
(2)C语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。
(3)每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。
(4)在C语言程序中允许出现的字符集是ASCII码字符集。
(5)C语言的程序中有特殊含义的英语单词称为保留字。
(6)C语言标识符的长度是前8位有效。
(7)C语言中,标识符的定义规则是以字母或下划线为开头。
(8)C语言程序的注释可以出现在程序中的任何地方,它总是以/*符号作为开始标记,以*/符号作为结束标记。
第2章数据类型运算符和表达式习题1.单项选择题(1)以下选项中,正确的C语言整型常量是D。
高级语言程序设计参考答案及评分标准表

参考答案及评分标准一、填空(每空1分,共10分,答错不得分)1.fiS2.83. 34.125.J67.1_8._T9.x<011v<010.46二、请选择正确答案填在()内(每题2分,共16分,选错、多选均不得分)1.D2.D3.D4.C5.C6.B7.D8.B三、写出下列程序的运行结果(每小题5分,共20分)2.程序输出:pasca1basic评分标准:结果正确得5分。
3.程序输出:8, 17评分标准:结果正确得5分。
4.程序输出:8910评分标准:结果和格式都正确得5分。
4.程序输出:11 212312341 2345评分标准:结果正确得5分。
五、在阅读和理解原题程序的基础上,在空栏处填入适当的字符、语句,使其完成指定的功能(每空3分,共24分)评分标准:每空3分,答错不得分。
1.n=k*k;continue;break;n/10%10或(n-a*IOO)/10;或(限IOo)/10;或n∕10~a*10;intX,inty,intZ2.gets(str);'∖0';num++;六、编制完整的程序,使其完成指定的功能。
(共30分)说明:编程答案不唯一,结果正确即可得分。
1.(15分)ttinc1ude<stdio.h>voidmain(){inti,j,t,a[10];〃声明 ........ 1分for(i=0;i<=9;i++)〃数据输入........ 3分scanf(*%d*,&a[i]);for(i=1;i<=9;i++)〃数据排序........ 8分for(j=0;j<=9-i;j++)if(a[j]>a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}for(i=0;i〈=9;i++)〃数据输出........ 3分printf(z,%d",a[i]);}2.(15分)ttinc1ude<stdio.h>i∏tfib(intn)〃递归函数定义......... 9分{if(n==1I∣n==2)return1;e1sereturnfib(n-1)+fib(n-2):)voidmain(){intn=20;Printf(〃第20个月的兔子总对数为*1d∖n”,fib(n));〃函数调用,结果输出.......... 6分)。
高级语言C++程序设计--考试试卷 - 答案

高级语言C++程序设计-考试试卷—答案姓名: ________________ 成绩__________________答案:1-11题 D C D A C D A B D D B 答案:12-22题 D A D D A D D D A A D1. 按照C 语言规定的用户标识符命名规则,不能出现在标识符中的是A)大写字母B)下划线C)数字字符D)连接符2. 以下选项中不合法的标识符是A)cout B)FOR C)&&a D)_003. 设有定义:int x=2;,以下表达式中,值不为6的是A)x*=(1+x) B)x*=x+1 C)x++,2*x D)2*x, x+=24. C++ 源程序中不能表示的数制是A)二进制B)十六进制C)十进制D)八进制5. 以下关于结构化程序设计的叙述中正确的是A)一个结构化程序必须同时由顺序、分支、循环三种结构组成B)有三种基本结构构成的程序只能解决小规模的问题C)在C ++语言中,程序的模块化是利用类实现的D)结构化程序使用goto 语句会很便捷6. 以下定义语句中正确的是A)float a=1,*b=&a,*c=&b; B)int a=b=0;C)double a=0.0;b=1.1; D)char A=65+1,b=’b’;7. 计算机能直接执行的程序是A)可执行程序B)目标程序C)源程序D)汇编程序8. 以下叙述中正确的是A)C++ 语言程序中的注释必须与语句写在同一行B)简单C++ 语句必须以分号结束C)C++ 语句必须在一行内写完D)C++ 程序中的每一行只能写一条语句9. 以下选项中,不合法的C++语言用户标示符是A)AaBc B)a_b C)_1 D)a--b10.关于C++语言的变量,以下叙述中错误的是A)由三条下划线构成的符号名是合法的变量名B)所谓变量是指在程序运行过程中其值可以被改变的量C)程序中用到的所有变量都必须先定义后才能使用D)变量所占的存储单元地址可以随时改变11. C ++语言中double 类型数据占字节数为A)12 B)8 C)4 D)1612. 以下叙述中正确的是A)空语句就是指程序中的空行B)花括号对{}只能用来表示函数的开头和结尾,不能用于其他目的C)复合语句在语法上包含多条语句,其中不能定义局部变量D)当用cin 从键盘输入数据时,每行数据在没有按下回车键(Enter 键)前,可以任意修改13. 以下叙述中正确的是A)C++ 语言程序总是从main 函数开始执行B)C++ 语言程序所调用的函数必须放在main 函数的前面C)C++ 语言程序中main 函数必须放在程序开始位置D)C++ 语言程序总是从最前面的函数开始执行14. 以下叙述中正确的是A)if 语句只能嵌套一层B)不能在else 子句中在嵌套if 语句C)改变if-else 语句的缩进格式,会改变程序的执行流程D)if 子句和else 子句中可以是任意合法的C ++语句15. 以下叙述中正确的是A)在while 语句和do-while 语句中无法使用continue 语句B)当break 出现在循环体中的switch 语句体内时,其作用是跳出该switch 语句体,并终止循环C)continue 语句的作用是:在执行完本次循环体中剩余语句后,终止循环D)只能在循环体内和switch 语句体内使用break 语句16. 已定义以下函数:int fun(int *p){return *p;}fun 函数返回值是A)一个整数B)形参p 的地址值C)形参p 中存放的值D)不确定的值17. 设有定义:double a[10],*s=a;以下能够代表数组元素a[3]的是A)*s[3] B)(*s)[3] C)*s+3 D)*(s+3)18. 下列选项中,能正确定义数组的语句是A)int num[0...2008]; B)int num[ ];C)int N=2008; int num[N]; D)#define N 2008; int num[N];19. 设有以下函数:void fun(int n,char *s){......} 则下面对函数指针的定义和赋值均正确的是A)void *pf(); pf=fun; B)void (*pf)(int,char );pf=&fun;C)void *pf(); *pf=fun;D)void (*pf)(int ,char *) ; pf=fun;20. 以下叙述中正确的是A)int *p1,int **p2,int *p3;都是合法的定义指针变量语句B)语句p==NULL;与p==\0 是等价的语句C)p==NULL;执行后,指针p 指向地址为0 的存储单元D)指针变量只能通过求指针运算符(&)获得地址值21. int *func(int a[10], int n);则以下叙述中正确的是A)说明中的a[10]改为a[]或*a 效果完全一样B)函数中不能对a 进行移动指针(如a++)的操作C)只有指向10 个整数内存单元的指针,才能作为实参传递给形参D)形参a 对应的实参只能是数组名22. 若有以下语句typedef struct S{ int g;char h;} T;以下叙述中正确的是A)T 是struct S 类型的变量B)可用S 定义结构体变量C)S 是srurct 类型的变量D)可用T 定义结构体变量第二题:类与对象编程(25分)自定义一个简单的时间类TimeType,它具有数据成员h、m、s,用来表示当前时间的时、分、秒。
高级语言程序设计(Python)习题与答案

一、单选题1、计算机为什么采用二进制,而非十进制作为数制的基础?A.因为二进制比十进制计算速度快B.因为二进制比十进制表示能力更强C.因为二进制数精度更高D.因为二进制数更容易被硬件存储和计算正确答案:D2、Python语言为什么被称为高级程序设计语言?A.因为它是编译型语言B.因为它是解释型语言C.因为它比低级语言更复杂D.因为它比低级语言更抽象正确答案:D3、关于Python语言的执行过程,描述正确的是?A.可以同时执行多条语句B.由解释器一条语句一条语句地执行C.执行过的语句将不会再被执行D.由编译器将源程序转化为机器语言,然后执行正确答案:B4、下列Python程序,没有错误的是?A.print 'Hello, ' print 'World!'B.print 'Hello, I\'m Tom.'C.print 'Hello, this's Tom.'D.Print 'Hello, World!'正确答案:B5、在Spyder IDE中编写Python程序,输出“Hello World”,要求将这两个单词分两行输出,以下哪个程序不正确?A.print 'HelloWorld'B.print 'Hello\nWorld'C.print 'Hello'print 'World'D.print "Hello\nWorld"正确答案:A6、执行下列语句,输出的结果是?x = 7.0y = 5print x % yA.1B.2C.1.0D.2.0正确答案:D7、能实现下面功能的程序是?接收用户输入的一个整数。
如果输入的是偶数,则输出“True”,否则输出“False”。
A.print not bool(raw_input() % 2)B.print int(raw_input()) % 2 == 0C.print int(raw_input()) % 2 == 1D.print bool(int(raw_input()) % 2)正确答案:B8、以下程序的输出结果是?y = 0for i in range(0, 10, 2):y += iprint yA.30B.20C.9D.10正确答案:B9、以下程序的输出结果是?number = 30if number % 2 == 0:print number, 'is even'elif number % 3 == 0:print number, 'is multiple of 3'A.30 is evenB.30 is multiple of 3C.程序出错D.30 is even30 is multiple of 3正确答案:A10、以下程序的输出结果是?x = 1y = -1z = 1if x > 0:if y > 0: print 'AAA'elif z > 0: print 'BBB'A.语法错误B.BBBC.AAAD.无输出正确答案:D11、下列程序的输出结果是:def foo():m = 1def bar():n = 2return m + nm = bar()print mfoo()A.1B.3C.程序出错D.2正确答案:B12、字符串s长度为奇数,则显示中间字符的表达式为?A.s[len(s)/2 - 1]B.s[len(s)/2 + 1]C.s[len(s)/2]D.s[(len(s) + 1)/2]正确答案:C13、关于元组数据结构,下面描述正确的是:A.元组不支持切片操作B.所有元素数据类型必须相同C.支持 in 运算符D.插入的新元素放在最后正确答案:C14、一个学生的信息包括:学号、姓名、年龄、性别、电话。
(完整版)高级语言程序设计习题答案(免费)

7. a+b>c && b+c>a && c+a>b
8. (year%4 == 0) && (year%100!=0)||(year%400==0)
1.4
1.#include <ioห้องสมุดไป่ตู้tream.h>
void main()
23.已知i=0,j=1,k=2,则逻辑表达式++i||--j&&++k的值为(b)。
(a)0(b)1(c)2(d)3
24.执行下列语句后,x的值是( d ),y的值是( c )。
int x , y ;
x = y = 1;++ x || ++ y;
(a)不确定(b)0(c) 1(d) 2
25.设X为整型变量,能正确表达数学关系1< X < 5的C++逻辑表达式是( b, c, d )。
2. x * ( x * ( x * ( a * x + b ) + c ) + d ) + e
3. log( 1 + pow( fabs( ( a + b )/( a – b ) ),10)
4. sqrt(1 + 3.14159/2 * cos( 48 * 3.14159/180 ) )
5. 1/tan( ( 1 - x*x )/( 1 + x*x))
default:s+=2;
}
cout<<"s="<<s<<endl;
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
“高级语言程序设计”编程题1. 从键盘输入3个整数,求其中的最大数和最小数,并输出结果。
2. 从键盘上输入一个3*3的整数矩阵,求其各行的平均值并输出,输出时保留两位小数。
3. 输出x2的值,x取值从0到10。
4. 从键盘上输入一个3*4的整数矩阵,要求输出其最大元素的值,以及它的行号和列号。
5.编写一个程序从键盘输入10个数,要求输出其中最小的。
6.编写一个函数根据以下公式计算s,计算结果作为函数值返回;n通过形参传入。
s=7.输出1000年(包括1000年)到1999年之间的所有闰年,要求每三个一行,分行输出。
8. 编写程序打印所有的“水仙花数”。
“水仙花数”指一个三位数,其各位数字立方和等于该数本身,例如153是一个“水仙花数”,因为 153=1×1×1+3×3×3+5×5×5。
9.编写一个程序,输入一个3位数的正整数,然后反向输出对应的数。
如:123,则输出321。
参考答案:#include <stdio.h>void main(){int i,s=0,j;scanf("%d",&i);if(i>=100&&i<=999){j=i%10;s=s+j;j=(i-j)/10%10;s=s*10+j;j=i/100;s=s*10+j;printf("the inverse number is %d",s);}elseprintf("input erroe!");}10. 从键盘输入10名学生的C语言成绩存入一维数组内,编写程序计算10名学生的最高分、平均分和及格人数。
参考答案:#include <stdio.h>void main(){int i,score[10],max,min;float ave;for(i=0;i<10;i++)scanf("%d",&score[i]);max=score[0];min=score[0];ave=score[0];for(i=1;i<10;i++){if(score[i]>max)max=score[i];if(score[i]<min)min=score[i];ave=ave+score[i];}ave=ave/10.0;printf("max=%d,min=%d,ave=%f",max,min,ave);}11. 编写一个程序,判断用户输入的字符是否是数字,若是数字,则输出“a numerical character”,否则输出“other character”。
参考答案:#include <stdio.h>void main(){char ch;ch=getchar();if(ch>='0'&&ch<='9')printf("a numerical character");elseprintf("other character");}12. 从键盘输入12个数存入二维数组a[3][4]中,编写程序求出最大元素的值及它所在的行号和列号。
参考答案:#include <stdio.h>void main(){int i,j,a[3][4],max,index_i,index_j;for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];index_i=0;index_j=0;for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];index_i=i;index_j=j;}printf("max=%d,index_x=%d,index_y=%d",max,index_i,index_j);}13.打印所有的“水仙花数”,所谓“水仙花数”是指一个三位正整数,其各位数字的立方和等于该数本身。
参考答案:#include <stdio.h>void main(){int i, j, k, n;printf ("result is: ");for (n = 100; n < 1000; n++){i = n / 100;j = (n - i *100) / 10;k = n % 10;if (n == i*i*i + j*j*j + k*k*k)printf ("%d ", n);}printf ("\n");}14.利用函数将给定的3×3二维数组转置。
参考答案:#include "stdio.h"void convert(int array[3][3]){int i,j,k;for(i=0;i<3;i++)for(j=i+1;j<3;j++){k=array[i][j];array[i][j]=array[j][i];array[j][i]=k;}}void main(){int i,j;int a[3][3]={1,2,3,4,5,6,7,8,9};printf("转换前:\n");for(i=0;i<3;i++){for(j=0;j<3;j++)printf("\t%d",a[i][j]);printf("\n");}convert(a);printf("\n转换后:\n");for(i=0;i<3;i++){for(j=0;j<3;j++)printf("\t%d",a[i][j]);printf("\n");}}15.编程输入a、b、c的值后,输出一元二次方程ax2+bx+c=0的解。
参考答案:#include <stdio.h>#include <math.h>void main( ){float a, b, c,d, x1, x2;printf("input a,b,c: ");scanf("%f%f%f", &a, &b, &c);d = sqrt(b * b - 4 * a *c);x1 = (-b + d) / (2 * a);x2 = (-b - d) / (2 * a);printf("x1 = %.2f x2 = %.2f\n", x1, x2);}16.从键盘上输入任意两个数和一个运算符(+、-、*、/),根据输入的运算符对两个数计算,并输出结果。
参考答案:#include <stdio.h>void main(){float a, b;int tag = 0;char ch;float result;printf("input two number: ");scanf("%f%f", &a, &b);fflush(stdin);printf("input arithmetic lable(+ - * /): ");scanf("%c", &ch);switch(ch){case '+': result = a + b; break;case '-': result = a - b; break;case '*': result = a * b; break;case '/': if (!b){printf("divisor is zero!\n");tag = 1;}elseresult = a / b;break;default: printf("illegal arithmetic lable\n");tag = 1;}if (!tag)printf("%.2f %c %.2f = %.2f\n", a, ch, b, result);}17.编写输入一个字符串,计算其中空格的个数。
18. 采用二维数组输入多个学生五门课的成绩,分别求出每个学生的平均成绩和每门课的成绩。
19.编写程序,逆转字符串。
20. 编写程序,统计一个英语文本中的英语单词个数。
21. 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。
例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。
参考答案:#include “stdio.h”void main(){int i,j,k,n;for(i=1;i<=9;i++)for(j=0;j<=9;j++)for(k=0;k<=9;k++)if(i*i*i+j*j*j+k*k*k==i*100+j*10+k){n=i*100+j*10+k;printf("n=%d\n",n);}}22.有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。
参考答案:#include "stdio.h"main(){int n,t,number=20;float a=2,b=1,s=0;for(n=1;n<=number;n++){s=s+a/b;t=a;a=a+b;b=t;}printf("sum is %9.6f\n",s);}23.找出101~200中所有的素数。
参考答案:#include <stdio.h>#include <math.h>int isprimer(int n){int i,m;m=(int)(sqrt(n));for(i=2;i<=m;i++){if(n%i==0)return 0;}return 1;}void main(){int i;for(i=101;i<=200;i++)if(isprimer(i))printf("%d\n",i);}24.使用循环结构编写程序,打印出如下图案*********参考答案:#include “stdio.h”void main(){int i,j,k;for(i=1;i<=3;i++){for(j=1;j<=3-i;j++)printf(" ");for(k=1;k<=2*i-1;k++)printf("\n");}}25.用冒泡排序法将10个整数由大到小排序。