C语言操作题
(完整word)C语言考试试题.

24.C语言中要求对变量作强制定义的主要理由是(B)
A.便于编辑预处理程序的处理B。便于确定类型和分配空间
C.便于移植D.便于写文件
25。以下数据中,不正确的数值或字符常量是(A)
25.若有定义:char s[]= ”turboC ";则Turbo C系统为数组s开辟【7】个字节的内存单元
二、判断共10题(共计20分)
1.inti,*p=&i;是正确的C说明(√)
2。若有说明intc;则while(c=getchar());是正确的C语句(√)
3。共同体变量所占的内存长度等于最长的成员长度(√)
23.当a=5,b=7,c=8时,执行以下程序段后c=【5】
if(a〈c) b=a;
a=c;
c=b;
24.已知a=5,写出表达式(0<a)‖(a〈2)的值是【1】
25。在TC2。0中,有以下结构类型说明和变量定义,则变量a在内存所占字节数是【22】
Strut stud
{char num[6];
int s [4];
4.charc[]=”Very Good”;是一个合法的为字符串数组赋值的语句(√)
5.在程序中定义了一个结构体类型后,可以多次用它来定义具有该类型的变量(√)
6。整数—32100可以赋值给int型和longint型变量(√)
7.如果函数值的类型和return语句中表达式的值不一致,则以函数类型为准(√)
for(i=0;i〈=2;i++)printf(“YES");printf(“\n”);
C语言考试题库及答案

C语言考试题库及答案1. 以下不是C语言的特点的是( C )A、C语言简洁,紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件进行操作D、C语言的移植性好2. 一个C程序是由()BA、一个主程序和若干个子程序组成B、一个或多个函数组成C、若干过程组成D、若干子程序组成3.以下描述正确的是( ) CA、由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句。
B、do-while循环由do开始,用while结束,在while(表达式)后面不能写分号。
C、在do-while循环体中,不一定要有能使while后面表达式的值变成零(“假”)的操作。
D、do-while循环中,根据情况可以省略while。
4.以下对一维整形数组a的正确说明是( ) DA、int a(10);B、int n=10,a[n];C、int n;D、int a[10];5.以下对二维数组a的正确说明是( ) CA、inta[3][];B、float a(3,4);C、double a[1][4];D、float a(3)(4);6.数组名作为实参传给被调用的函数时,形参获得的是()CA、该数组第一个元素的值B、该数组所有元素的值C、该数组第一个元素的首地址D、该数组所有元素的首地址7. C程序的开始是从()AA、main()函数开始,直到main()函数结束B、第一个函数开始,直到最后一个函数结束C、第一个语句开始,直到最后一个语句结束D、main()函数开始,直到最后一个函数结束8.在C程序中,main()函数的位置()CA、必须作为第一个函数B、必须作为第二个函数C、可以任意D、必须放在它所调用的函数之后9. C编译程序是()CA、C语言的机器语言版本B、一组机器语言指令C、将C源程序编译成目标程序的程序D、是由自己编制的10.以下叙述中错误的是( )CA、C程序经过编译、连接之后形成一个真正可执行的二进制机器指令文件B、用C语言编写的程序称为源程序,它以ASCⅡ代码形式存放在文件中C、C语言中的每条可执行语句和非执行语句最终被转换成二进制的机器指令非执行的语句不转换:例如//和/**/是注释的意思D、C语言源程序经编译后生成后缀为.obj的目标程序1.以下不正确的C语言标识符是( )D字母,数字,下划线组成,但是不能以数字开头A、ABCB、abcC、a_bcD、ab.c12.一个C语言程序是由( ) BA、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成13.以下叙述错误的是( ) C算法可以没有输入输入,但是一定不能没有输出A、算法正确的程序最终一定会结束B、算法正确的程序可以有零个输入C、算法正确的程序可以有零个输出D、算法正确的程序对于相同的输入一定有个相同的结果14.设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+ i*f值的数据类型为( ) C强制类型转换A、intB、floatC、doubleD、不确定15.以下叙述中错误的是( )CA、结构化程序由顺序、分支、循环三种基本结构组成B、C语言是一种结构化程序设计语言C、使用三种基本结构构成的程序只能解决简单问题D、结构化程序设计提倡模块化的设计方法16.以下叙述中错误的是()CA、算法正确的程序最终一定会结束B、算法正确的程序可以有零个输入C、算法正确的程序可以有零个输出D、算法正确的程序对于相同的输入一定有相同的结果17.以下选项中关于程序模块化的叙述错误的是()BA、把程序分成若干相对独立、功能单一的模块,可便于重复使用这些模块B、可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序C、把程序分成若干相对独立的模块,可便于编码和调试D、可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序18. 关于C语言的符号常量,以下叙述中正确的是()CA、符号常量的名是标识符,必须大写B、符号常量的名是标识符,必须小写C、符号常量是指用一个符号名来代表一个常量D、符号常量的符号名必须是常量19.关于C语言的变量,以下叙述中错误的是()BA、所谓变量是指在程序运行过程中其值可以被改变的量B、变量所占的存储单元地址可以随时改变C、程序中用到的所有变量都必须先定义后使用D、由三条下划线构成的符号名是合法的变量名20.以下选项中合法的变量名是()CA、5aB、A%C、_10_D、sizeof21.在C语言中,char型数据在内存中的存储形式是( ) DA、补码B、反码C、源码D、ASCII码22.有如下程序,输入数据:12345M678<cR>后(<CR>表示回车),x的值是( ) 。
C语言考试

试题一(一)选择题1.以下叙述中正确的是()。
构成C程序的基本单位是函数2.如果int a=2,b=3,c=0,下列描述正确的是。
!a!=(b!=c)表达式的值为13.sizeof(float)是()。
一个整形表达式4.设a为整型变量,初值为12,执行完语句a+=a-=a*a后,a的值是()。
-2645.经过以下语句定义后,表达式z+=x>y?++x:++y的值为()。
6int x=1,y=2,z=3;6.若变量a与i已正确定义,且i已正确赋值,合法的语句是()。
++i7.若以下变量均是整型,且num=sum=7;则计算表达式sum=num++,8.sum++,++num后sum的值为()。
89.C语言中不合法的字符串量是。
‘y=‟10.下列关于单目运算符++、--的叙述中正确的是______。
它们的运算对象可以是char型变量和float型变量11.整型变量x=1,y=3,经下列计算后,x的值不等于6的是。
X=9-(--y)-(y--)12.假设所有变量均为整型,表达式:a=2,b=5,a>b?a++:b++,a+b的值是()。
813.下列程序的输出结果是()。
0void main(){int a=7,b=5;printf("%d\n",b=b/a);14.以下程序的执行结果是________.4main(){ int w = 1, x = 2, y = 3, z = 4;w =( w < x ) ? x : w;w =( w < y ) ? y : w;w =( w < z ) ? z : w;printf( "%d " , w );}15.假定所有变量均已正确定义,下列程序段运行后x的值是()。
4k1=1;k2=2;k3=3;x=15;if(!k1) x--;else if(k2) x=4;16.下列程序的输出结果是()。
c语言c操作题库及详解答案

c语言c操作题库及详解答案C语言C操作题库及详解答案1. 请编写一个C程序,实现两个整数的加法运算,并输出结果。
答案:```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("两个整数相加的结果是:%d\n", sum);return 0;}```2. 编写一个C程序,实现字符串的复制功能。
答案:```c#include <stdio.h>#include <string.h>int main() {char src[] = "Hello, World!";char dest[50];strcpy(dest, src);printf("复制后的字符串是:%s\n", dest);return 0;}```3. 请编写一个C程序,实现求一个整数的阶乘。
答案:```c#include <stdio.h>int factorial(int n) {if (n == 0)return 1;elsereturn n * factorial(n - 1);}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);printf("%d的阶乘是:%d\n", num, factorial(num)); return 0;}```4. 编写一个C程序,实现判断一个数是否为素数。
答案:```c#include <stdio.h>#include <math.h>int isPrime(int n) {if (n <= 1)return 0;for (int i = 2; i <= sqrt(n); ++i) { if (n % i == 0)return 0;}return 1;}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (isPrime(num))printf("%d是素数。
计算机二级C语言操作题高频考卷(四)

一、程序填空题1 [填空题]函数fun的功熊是:输出a所指数组中的前a个数据,要求每行输出5个数。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!试题程序:参考解析:【参考答案】【解题思路】填空1:每行输出5个数,即当下标值能整除5时换行。
填空2:输出换行符'\n'。
填空3:输出数组元素。
二、程序修改题2 [简答题]下列给定程序中,函数fun的功能是:将s所指字符串中最后一次出现的与t1所指字符串相同的子串替换成t2所指字符串,所形成的新串放在W所指的数组中。
要求t1和t2所指字符串的长度相同。
例如,当s所指字符串中的内容为“abcdabfabc”,t1所指串中的内容为“ab”,t2所指子串中的内容为“99”时,结果在W所指的数组中的内容应为“abcdabf99c”。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!试题程序:参考解析:【参考答案】【解题思路】(1)此处要判断的是值的真假,而不是地址,所以改为while( * w)。
(2)c语言中关键字区分大小写,只需运行程序,就可以根据错误提示找到。
三. 程序设计题3 [简答题]请编写函数fun,其功能是:判断t所指字符串中的字母是否由连续递增字母序列组成(字符串长度大于等于2)。
例如字符串:uvwxyz满足要求;而字符串:uvxwyz不满足要求。
注意:部分源程序存放在PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun指定的部位填入所编写的若干语句。
试题程序:参考解析:【参考答案】【解题思路】函数fun的功能是判断指针t指向的字符串是否是由连续递增的字母构成,返回值为整数,0代表不满足条件。
根据题目要求,字符串长度必须大于等于2,所以首先需要对t指向的字符串进行长度判断,小于2的字符串返回0。
C语言上机150道题

C语言上机150道题及参考答案1.某一门课程考试之后,需要统计考生(10人)的平均成绩,并找出其中的最高分和最低分。
2.从键盘输入两个正整数,输出这两个整数的商,要求商的小数点后保留5位。
例如输入355和113,输出3.14159。
3.用while循环结构编写程序打印ASCII码为33-127的字符。
4.用do-while,for循环结构编写程序打印ASCII码为33-127的字符。
5.用for循环结构编写程序打印ASCII码为33-127字符。
6.在1-500中,找出能同时满足用3除余2,用5除余3,用7除余4的所有整数,用循环结构。
7.输入一个整数将其倒着输出,如54321——12345。
8.计算s=1+1/3+1/5+…+1/n,截止到1/n<10-4。
9.从键盘输入一整数n,计算1*1+2*2+...+n*n的值。
10.用while 循环计算1+2+……+100的和。
11.用do while循环计算1+2+……+100的和。
12.用for 循环计算1+2+……+100的和。
13.输入一个小于等于10的整数n ,计算n!。
14.输入两个正整数m和n,计算m!+n!,m和n的值均小于10。
15.用循环语句,计算1~100之间的所有3的倍数之和。
16.用循环语句,计算100-200之间的所有7的倍数之和。
17.输出1-100之间,7的整数倍数或数字尾数为7的数字,统计出这些数字个数。
18.输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数。
19.输入一个整数,统计它有几位数。
如输入367,则该数有3位数。
20.编写程序,输出1到50中间所有能被3整除的正整数。
21.把100~200之间不能被3整除的输出。
22.编程Y=1+3+5+7+...111。
23.编程y=1*1/2*1/3*1/4*1/5*1/6*...前十项之积。
24.编程输出九九乘法表。
25.求1到100奇数和。
c语言作业
1、用下面的scanf函数输入数据,使a=10, b=20, c1='A', c2='a', x=1.5, y=-3.75, z=67.8,请问在键盘上如何输入数据?scanf("%5d%5d%c%c%f%f%*f,%f", &a,&b,&c1,&c2,&x,&y,&z);2、设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。
用scanf函数输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字第三次作业1、有3个整数a,b,c,由键盘输入,输出其中最大的数。
2、有一个函数:x x<1y= 2x-1 1<=x<103x-11 x>=10写一段程序,输入x,输出y的值。
3、给出一百分制成绩,要求输出成绩等级A、B、C、D、E。
90分以上为A,80-89分为B,70-79为C,60-69为D,60分以下为E。
4、给一个不多于5位的正整数,输出这个数是几位数。
第四次作业1、给一个不多于5位的正整数,要求:a.求出它是几位数;+b.分别输出每一位数字;c.按逆序输出各位数字,例如:原数为321,应输出123。
2、教材P112页第5.8题(if语句解法创建一个独立文件,switch语句解法创建一个独立文件第五次作业1、输入两个正整数m和n,求其最大公约数和最小公倍数。
(经典题)2、输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数,并输出。
3、求s=a+aa+aaa+aaaa+....+(a...a)之值,其中a是一个数字,n表示a的位数。
1、输入两个字符串,使用指针p将两个字符串按次序复制到数组c中。
例:输入“zhe"和"jiang",将"zhejiang"保存在数组c中。
计算机二级c语言操作试题及答案
计算机二级c语言操作试题及答案一、选择题1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列关于C语言函数的描述中,错误的是?A. 函数可以没有返回值B. 函数可以返回多个值C. 函数可以嵌套定义D. 函数可以递归调用答案:C3. 在C语言中,以下哪个选项是合法的数组声明?A. int a[10];B. int a[2][3];C. int a[2,3];D. int a[];答案:A二、填空题1. 在C语言中,使用________关键字可以定义一个指针变量。
答案:int *p;2. 以下代码段的输出结果是________。
#include <stdio.h>int main() {int i = 5;printf("%d", i++);return 0;}```答案:53. C语言中,用于定义一个枚举类型的关键字是________。
答案:enum三、编程题1. 编写一个C语言程序,计算并输出100以内所有奇数的和。
```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i < 100; i += 2) {sum += i;}printf("Sum of odd numbers from 1 to 99 is: %d\n", sum); return 0;}```2. 编写一个函数,实现字符串的反转,并在主函数中调用该函数,输出反转后的结果。
#include <stdio.h>#include <string.h>void reverseString(char *str) {int len = strlen(str);for (int i = 0; i < len / 2; i++) { char temp = str[i];str[i] = str[len - i - 1];str[len - i - 1] = temp;}}int main() {char str[] = "Hello, World!";reverseString(str);printf("Reversed string: %s\n", str); return 0;}```。
C语言习题_答案
C语言章节习题目录C语言章节习题 (1)第一章C语言概述 (2)第三章数据类型、运算符和表达式 (3)第四章顺序结构程序设计 (4)第五章选择结构程序设计 (10)第六章循环结构程序设计 (17)第7章数组习题 (25)第8章函数习题 (34)第九章预处理 (41)第十章指针 (42)第一章C语言概述一、选择题:1、一个C程序的执行是从(A)。
A本程序的main函数开始,到main函数结束B本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C本程序的main函数开始,到本程序文件的最后一个函数结束D本程序文件的第一个函数开始,到本程序main函数结束2、在C 语言中,每个语句必须以(D)结束.A. 回车符 B。
冒号 C。
逗号 D. 分号3、C 语言规定:在一个源程序中,main函数的位置(C)。
A. 必须在最开始B。
必须在系统调用的库函数的后面C. 可以任意 D。
必须在最后4、一个C 语言程序是由(B).A. 一个主程序和若干子程序组成B。
函数组成C. 若干过程组成D。
若干子程序组成5、下列说法中错误的是(D).A。
主函数可以分为两个部分:主函数说明部分和主函数体B。
主函数可以调用任何非主函数的其他函数C。
任何非主函数可以调用其他任何非主函数D。
程序可以从任何非主函数开始执行6、用C 语言编写的源文件经过编译,若没有产生编译错误,则系统将(B)。
A。
生成可执行目标文件 B。
生成目标文件C. 输出运行结果 D。
自动保存源文件二、填空题:1、C 语言只有(37)个关键字和 (9)种控制语句。
2、每个源程序有且只有一个(main)函数,系统总是从该函数开始执行C语言程序。
3、C 语言程序的注释可以出现在程序中的任何地方,它总是以(\*) 符号作为开始标记,以(*\)符号作为结束标记。
4、C 语言中,输入操作是由库函数(scanf)完成的,输出操作是由库函数(printf)完成的。
5、系统默认的C 语言源程序文件的扩展名是(。
C语言题目
复习题一一、单项选择题1.C语言程序的执行,总是起始于【】。
A) 程序中的第一条可执行语句B) 程序中的第一个函数C) main函数D) 包含文件中的第一个函数2.下列说法中正确的是【】。
A) C程序书写时,不区分大小写字母B) C程序书写时,一行只能写一个语句C) C程序书写时,一个语句可分成几行书写D) C程序书写时每行必须有分号3.下面对C语言特点,不正确描述的是【】。
A) C语言兼有高级语言和低级语言的双重特点,执行效率高B) C语言既可以用来编写应用程序,又可以用来编写系统软件C) C语言的可移植性较差D) C语言是一种结构式模块化程序设计语言4.C语言源程序的最小单位是【】。
A) 程序行B) 语句C) 函数D) 字符5.以下四项中属于C语言关键字的是【】。
A) CHAR B) define C) unsigned D) return6.十进制数2403转换成十六进制数为【】。
A) 963 B) 369 C) 953 D) 3597.二进制数00110101转换成八进制数是【】。
A) 055 B) 065 C) 056 D) 1528.将二进制数1011011.011转换成十进制数是【】。
A) 91.75 B) 91.375 C) 91.125 D) 91.259.计算机内部运算使用的数是【】。
A) 十进制数B) 十六进制数C) 二进制数D) 八进制数10.一个字长的二进制位数是【】。
A) 2个BYTE,即16个bit B) 3个BYTE,即24个bit C) 4个BYTE,即32个bit D) 随计算机系统不同而不同11.在C语言系统中,假设int类型数据占2个字节,则double、long、unsigned int、char 类型数据所占字节数分别多少【】。
A) 8,2,4,1 B) 2,8,4,1 C) 4,2,8,1 D) 8,4,2,112.下面程序段执行结果是【】。
int i=5,k;k=(++i)+(++i)+(i++);printf("%d,%d",k,i);A) 24,8 B) 21,8 C) 21,7 D) 24,713.下面程序段执行结果是【】。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、分段函数。
输入一个x,输出y的值。
分段函数{y=4x-5x<0y=3x=0y=2x+1x>0main(){float x,y;scanf("%f",&x);if(x>0)y=2*x+1;if(x==0)y=3;if(x<0)y=4*x-5;printf("%f\n",y);}附加:main(){float x,y;scanf("%f",&x);if(x>0)y=2*x+1;else if(x==0)y=3;else y=4*x-5;printf("%f\n",y);}2、输入a,b,c;求一元二次方程ax2+bx+c=0的值。
(a≠0,b2-4ac≥0)。
求方程y=ax*x+bx+c 的根。
#include"math.h"main(){float a,b,c,x1,x2,d;scanf("%f%f%f",&a,&b,&c);d=b*b-4*a*c;x1=(-b+sqrt(d))/(2*a);x2=(-b-sqrt(d))/(2*a);printf("%f,%f\n",x1,x2);}3、输入三个整数,输出其中最大的数。
求a,b,c中最大的数。
main(){int a,b,c,d;scanf("%d%d%d",&a,&b,&c);if(a>b)d=a;else d=b;if(c>d)d=c;printf("%d\n",d);}4、求1+2+3+……+n。
(1)for语句{int i,n,long sum=0;scanf("%d",&n);for(i=1;i<=n;i++)sum=sum+i;printf("sum=%d\n",sum);}(2)do while语句main(){int i,n,sum=0;scanf("%d",&n);i=1;do{sum=sum+i;i++;}while(i<=n); printf("sum=%d\n",sum);}(3)goto语句main(){int i,n,sum=0;scanf("%d",&n);i=1;loop:if(i<=n){sum=sum+i;i++;goto loop;} printf("sum=%d\n",sum);}(4)while语句main(){int i,n,sum=0;scanf("%d",&n);i=1;while(i<=n){sum=sum+i;i++;}printf("sum=%d\n",sum);}5、求1*2*3*……*n。
(1)main(){int i,n;long sum=1;scanf("%d",&n);for(i=1;i<=n;i++)sum=sum*i;printf("%ld\n",sum);}(2)main(){int i,n;long sum;i=1;sum=1scanf("%d",&n);while(i<=n){sum=sum*i;i++;}printf("%ld\n",sum);}6、求1!+2!+3!+……+n!。
{int n,i;long s,f;s=0;f=1;scanf("%d",&n);for(i=1;i<=n;i++){f=f*i;s=s+f;}printf("%ld\n",s);}7、输出100以内(不含100)能被3整除且个位数为6的所有整数。
main(){int i,j;for(i=0;i<10;i++){j=i*10+6;if(j%3!=0)continue;printf("%d",j);}}8、求调和级数中第多少项的值大于10。
(调和极数第n项为:1+1/2+1/3+……+1/n)#define LIMIT10main(){int n;float sum;sum=0.0;n=1;for(;;){sum=sum+1.0/n;if(sum>LIMIT)break;n++;}printf("n%d\n",n);}9、输出100~200间的全部素数。
main(){int m,i,n=0;for(m=101;m<=200;m=m+2){if(n%10==0)printf("\n");for(i=2;i<m;i++)if(m%i==0)break;if(i>=m){printf("%d",m);n=n+1;}}printf("\nprime number=%d\n",n);}10、求Fabonacci数列的前20项,每5个数一换行。
main(){int i,f1,f2,f3;f1=0;f2=1;printf("%10d%10d",f1,f2);for(i=3;i<=20;i++){f3=f1+f2;printf("%10d",f3);if(i%5==0)printf("\n");f1=f2;f2=f3;}printf("\n");}11、百钱买百鸡。
(教材92页)main(){int x,y,z;for(x=0;x<=20;x++)for(y=1;y<=33;y++){z=100-x-y;if((z%3==0)&&(5*x+3*y+z/3==100))printf("cock=%d\t hen=%d\t chicken=%d\n",x,y,z);}} 12、输出三角形式的九九乘法表。
main(){int m,n;for(m=1;m<10;m++)printf("%4d",m);printf("\n");for(m=1;m<10;m++)printf("_");printf("\n");for(m=1;m<10;m++){for(n=1;n<=m;n++)printf("%4d",m*n);printf("\n");}13、将一个整数的各位数字颠倒后输出。
main(){int i,r;printf("input an integer\n");scanf("%d",&i);do{r=i%10;printf("%d",r);}while((i/=10)!=0);printf("\n");}14、输出任意两个正整数的最大公约数和最小公倍数。
main(){int m,n,r,p;printf("please type in two positive integers\n");scanf("%d%d",&m,&n);p=m*n;while(n){r=m%n;m=n;n=r;}printf("their greatest common divisor and lease common multiple are%d,%d\n",m,p/m);} 15、输出1000以内的完全数。
main(){int i,a,m;for(i=1;i<1000;i++){for(m=0,a=1;a<=i/2;a++)if(!(i%a))m+=a;if(m==i)printf("%4d",i);}}16、冒泡法排序。
main(){int i,j,t,a[9];printf("Input8numbers:\n");for(i=1;i<=18;i++)scanf("%d",&a[i]);printf("\n");for(j=1;j<=7;j++)for(i=1;i<=8-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("the sorted numbers:\n");for(i=1;i<=8;i++)printf("%d",a[i]);}17、比较交换法排序。
#define N6main(){int i,j,t,a[N+1];printf("Input6numbers:\n");for(i=1;i<=N;i++)scanf("%d",&a[i]);printf("\n");for(i=1;i<=N-1;i++)for(j=i+1;j<=N;j++)if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;}printf("the sorted numbers:\n")for(i=1;i<=N;i++)printf("%d",a[i]);}18、选择法排序。
#define N6main(){int i,j,k,t,a[N+1];printf("Input6numbers:\n");for(i=1;i<=N;i++)scanf("%d",&a[i]);printf("\n");for(i=1;i<=N-1;i++){k=i;for(j=i+1;j<=N;j++)if(a[j]>a[k])k=j;if(k!=i){t=a[i];a[i]=a[k];a[k]=t;}}printf("the sorted numbers:\n");for(i=1;i<=N;i++)printf("%d",a[i]);}19、求3*4矩阵第i行第j列元素的值。