数组程序设计作业-1
C语言专题编程练习——数组
编程练习4 ——数组1. 随机数数组输出。
要求:产生一个由10个元素组成的一维数组并输出,数组元素由随机数(0-99)构成。
输出结果:2. 求数组最大值、最小值、总和、平均数。
要求:产生一个由10个元素组成的一维数组并输出,数组元素由随机数(0-99)构成。
求该数组的最大值、最小值、总和和平均值并输出。
输出结果:3. 冒泡法排序。
要求:产生一个由10个元素组成的一维数组并输出,数组元素由随机数(0-99)构成。
按照升序排列并输出。
输出结果:4. 选择法排序。
输出结果:同上5. 比较法排序。
输出结果:同上6. 数组逆序输出要求:产生一个由10个元素组成的一维数组并输出,数组元素由随机数(0-99)构成。
编程将逆序数组输出。
输出结果:7. 数组插数。
要求:产生一个由10个元素组成的一维数组并输出,数组元素由随机数(0-99)构成。
按照升序排列并输出。
再输入一个数,按照原来的规律将其插入并输出。
输出结果:8. 用数组输出Fibonacci数列的前40项。
要求:每行输出5个元素,每个元素10位。
输出结果:(略)9. 用筛选法求100以内的素数。
输出结果:10. 数组查找。
要求:产生一个由15个元素组成的一维数组并输出,数组元素由随机数(0-99)构成。
按照升序排列并输出。
再输入一个数,要求找出该数是数组中的第几个元素,如果不在数组中,输出找不到。
11. 二维数组行列互换。
要求:将一个二维数组(3行4列)的行和列互换(转置),存到另一个二维数组(4行3列)中并输出。
输出结果:12. 编程输出杨辉三角(要求输出10行)。
输出结果:13. 编程输入5阶魔方阵。
输出结果:14. 找出一个二维数组中的鞍点。
要求:即该位置上的元素在该行最大,在该列最小。
可能没有鞍点。
输出结果:15. 输入一行字符,统计大写字母、小写字母、数字、空格以及其他字符个数。
输出结果:16. 编写程序实现strcat函数功能。
输出结果:17. 编写程序实现strcpy函数功能。
C语言程序设计课题作业(一)
C语言程序设计课题作业(一)一、简答题1、C++单词包含哪些种类?2、一个标识符中的首字符必须是什么字符?其余位置上的字符必须是什么字符?3、数值常量、字符常量、字符串常量和标识符在表示上各有什么区别?4、C语句分为哪几种类型?5、#include命令的格式和功能各是什么?使用尖括号和双引号在含义上有什么区别?二、选择题1、程序中的预处理命令是指以( )字符开头的命令。
A.@ B.# C.$ D.%2、一条简单语句是以( )字符作为结束符的。
A. ,B. :C. ;D. <空格>3、空白符是( )符的统称。
A.空格、制表、回车B.空格、制表、逗号C.空格、回车、分号D.冒号、制表、回车4、#imclude命令中不可以包含( )。
A.头文件B.程序文件C.用户头文件D.目标文件5、一个函数定义由( )两部分组成。
A.函数头和函数体B.函数头和函数尾C.函数原形和函数体D.函数名和参数表6、一个程序中必须有并且只有一个命名为( )的函数。
A.MainB.mainC.cppD.c7、C程序文件的扩展名为( )。
A.objB.exeC.voidD.intmain8、在VC环境下,为运行一个程序而建立的工作区文件的扩展名为( )。
A.objB.exeC.dswD.dsp9、数据类型int,char,float,double的类型长度之和为( )。
A.10B.12C.16D.1710、常数120和-4.205的类型为( )。
A.整形和双精度型B.短整型和单精度型C.长整型和双精度型D.整型和单精度型C语言程序设计课题作业(二)一、选择题1、流程控制类语句包括( )3类语句。
A.选择、循环、跳转B.选择、循环、输入C.选择、输入、输出D.循环、选择、函数2、在switch语句中,每个语句标号中的关键字case后面的表达式必须是( )。
A.变量B.常量C.一般表达式D.函数调用3、作为语句标号使用的C保留字case和default只能用于( )语句中。
C语言数组编程题及解答
C语言数组编程题及解答【程序1】用筛选法求100之内的素数筛选法又称筛法,是求不超过自然数N(N>1)的所有质数的一种方法。
据说是古希腊的埃拉托斯特尼(Eratosthenes,约公元前274~194年)发明的,又称埃拉托斯特尼筛子。
具体做法是:先把N个自然数按次序排列起来。
1不是质数,也不是合数,要划去。
第二个数2是质数留下来,而把2后面所有能被2整除的数都划去。
2后面第一个没划去的数是3,把3留下,再把3后面所有能被3整除的数都划去。
3后面第一个没划去的数是5,把5留下,再把5后面所有能被5整除的数都划去。
这样一直做下去,就会把不超过N的全部合数都筛掉,留下的就是不超过N的全部质数。
因为希腊人是把数写在涂腊的板上,每要划去一个数,就在上面记以小点,寻求质数的工作完毕后,这许多小点就像一个筛子,所以就把埃拉托斯特尼的方法叫做“埃拉托斯特尼筛”,简称“筛法”。
#include <stdio.h>#include <math.h>void main(){int i,j;int a[100];for(i=0;i<100;i++)a[i]=i+1;for(i=1;i<100;i++){if(a[i]==0)continue;for(j=i+1;j<100;j++)if(a[j]%a[i]==0)a[j]=0;}for(j=1;j<100;j++) //j从1开始,去除a[0](其值为1),因为1既不是质数,也不是合数if(a[j]!=0)printf("%d,",a[j]);printf("\n");}【程序2】题目:一个数如果恰好等于它的因子之和,这个数就称为“完数”。
例如6=1+2+3.编程找出1000以内的所有完数。
程序源代码:#include <stdio.h>int main(){int k[10];int i,j,n,s;for(j=2;j<1000;j++){n=-1;s=j;for(i=1;i<j;i++){if ((j%i)==0){n++;s=s-i;k[n]=i;}}if(s==0) //说明是完数{printf("%d is a wanshu:",j);for(i=0;i<=n;i++)printf("%d ",k[i]);printf("\n");}}return 1;}【程序3】题目:用选择法对10个数进行从大到小排序1.程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换,下次类推,即用第二个元素与后8个进行比较,并进行交换。
C语言程序设计习题 数 组
数组1:输入10个整数,分别输出这10个数,再计算并输出它们的和。
2:输入10个不同的整数,将它们存入数组a中,再输入1个数x,然后在数组中查找x。
如果找到,则输出相应的下标,否则输出“not found”.3:输入1个正整数n(1<n<=10),再输入n个整数,将它们存入数组a中:(1)输出最小值与它所对应的下标(2)将最小值与第一个数交换,输出交换后的n个数4:编一函数,把一个字符串中从第i个字符开始的n个字符保存在另一个字符数组中,并输出。
5:编写程序:由键盘任意输入一串字符,判断是否为回文。
回文是首位对称相等的字符串,如:abcdcba是回文。
6:编写程序:验证下列矩阵是否为魔方阵。
魔方阵是每一行、每一列、每一对角线上的元素之和都是相等的矩阵。
17 24 1 8 1523 5 7 14 164 6 13 20 2210 12 19 21 311 18 25 2 97:编写程序:由键盘任意输入一串字符,再输入一个字符,统计这个字符在这串字符串中出现的次数。
8:编写程序:由键盘任意输入一串字符,在输入一个字符和一个位置,将此字符插入在这个字符串的这个位置上。
如:原来串为abcdef,输入字符k,位置是3,新串为abkcdef。
9:有3 ×4矩阵,其中数字为整型常数(如下图),求出其中最大元素和最小元素,并输出。
10:由键盘任意输入两个字符串,不用库函数strcat,将两个字符串连接。
11:由键盘任意输入一串字符,对其进行加密,加密原则为:如果为字母,将其循环右移两个字母,其他字符不变。
如:原串为ab12CDxyz,新串为cd12EFzab。
12:输入一个5*5的数组,分别求其主对角线和辅对角线上元素的和。
13:由键盘任意输入10个数,将最大数调到最前面,最小数调到最后面。
14:由键盘任意输入10个学生的姓名(以拼音形式),将它们按ASCII码的顺序从小到大排序,并输出。
C语言数组作业编程题答案
1、请先用记事本创建文件original.txt,往其中写入一组已排好序的整型数,今输入一个整数,要求按原来排序的规律将它插入数中,仍写入文件。
例如:原来整数依次为4、6、8、41、56、77、102(数据间的分隔符为空格)。
若将42插入数中,则插入后整数依次为4、6、8、41、42、56、77、102。
答案:#include <stdio.h>#include <stdlib.h>void main(){int a[100];int ijnumber;int n;FILE *fp;fp=fopen("e:\\C语言\\original.txt""r");if(fp==NULL){printf("open error");exit(0);}i=0;while(!feof(fp)){fscanf(fp"%d"&a[i++]);fgetc(fp);}number=i-1; //number中存最后一个数据的下标fclose(fp);scanf("%d"&n);//以下的while循环用来找n要放的位置循环结束时正好是a[i]的位置i=0;while(n>a[i]){i++;}//for循环的功能是将a[i]到最后一个元素全后移一个位置for(j=number;j>=i;j--)a[j+1]=a[j];//将n放入找到的位置a[i]=n;number=number+1; //加入n后,元素个数增1,用来控制向文件中的写入次数fp=fopen("e:\\C语言\\original.txt""w");if(fp==NULL){printf("open error");exit(0);}//写入数据for(i=0;i<=number-1;i++)fprintf(fp"%d "a[i]);fprintf(fp"%d"a[i]); //最后一个数据后没有空格fclose(fp);}2、假定整型数组中的元素值不重复。
c语言数组编程题目
c语言数组编程题目含详解共5道1. 计算数组元素的和编写一个程序,计算给定数组中所有元素的和。
```c#include <stdio.h>int main() {int arr[] = {1, 2, 3, 4, 5};int n = sizeof(arr) / sizeof(arr[0]);int sum = 0;for (int i = 0; i < n; ++i) {sum += arr[i];}printf("数组元素的和: %d\n", sum);return 0;}```2. 查找数组中的最大值和最小值编写一个程序,查找给定数组中的最大值和最小值。
```c#include <stdio.h>int main() {int arr[] = {5, 2, 8, 1, 4};int n = sizeof(arr) / sizeof(arr[0]);int max = arr[0];int min = arr[0];for (int i = 1; i < n; ++i) {if (arr[i] > max) {max = arr[i];}if (arr[i] < min) {min = arr[i];}}printf("最大值: %d\n", max);printf("最小值: %d\n", min);return 0;}```3. 反转数组元素的顺序编写一个程序,反转给定数组的元素顺序。
```c#include <stdio.h>int main() {int arr[] = {1, 2, 3, 4, 5};int n = sizeof(arr) / sizeof(arr[0]);int temp;for (int i = 0; i < n / 2; ++i) {temp = arr[i];arr[i] = arr[n - i - 1];arr[n - i - 1] = temp;}printf("反转后的数组: ");for (int i = 0; i < n; ++i) {printf("%d ", arr[i]);}return 0;}```4. 删除数组中的指定元素编写一个程序,删除给定数组中的指定元素。
C语言程序设计第六章数组习题及答案
1.以下对一维整型数组a的定义,正确的是_。
(2分)A.int a(10) ;B.int n = 10 , a[n] ;C.int n ;scanf( "%d" , &n ) ;int a[n] ;D.int a[10] ;2.若有定义:int a[10] ;,则对a数组元素的正确引用是_。
(2分)A.a[10]B.a[3.5]C.a(5)D.a[10-10]3.对定义int a[10] = {6 , 7 , 8 , 9 , 10} ; 的正确理解是_。
(2分)A.将5个初值依次赋给a[1]--a[5]B.将5个初值依次赋给a[0]--a[4]C.将5个初值依次赋给a[6]--a[10]D.因为数组长度与初值个数不相同,所以此语句不正确4..若有定义:int a[3][4]; , 则对a数组元素的正确引用是_。
(2分)A.a[3][4]B.a[1,3]C.a[1+1][0]D.a(2)(1)5.以下对二维数组a初始化正确的语句是_。
(2分)A.int a[2][ ]={{0 , 1 , 2}, {3 , 4 , 5}};B.int a[ ][3]={{0, 1, 2}, {3, 4, 5}};C.int a[2][4]={{0, 1 , 2}, {3 , 4}, {5}};D.int a[ ][3]={{0, 1, 2}, { }, {3, 4}};6.对二维数组a进行如下初始化:int a[ ][3]={0 , 1 , 2 , 3 , 4 , 5};则a[1][1]的值是_。
(2分)A.0B.3C.4D.17.下面程序段的运行结果是_。
(2分)#include<stdio.h>int main( ){int i , x[3][3] = {1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9} ;for( i = 0 ; i < 3 ; i++ )printf( "%2d" , x[i][2-i] ) ;return 0 ;}A.1 5 9B.1 4 7C.3 5 7D.3 6 98.以下对数组s的初始化,错误的是_。
C程序设计(数组)习题与答案
C程序设计(数组)习题与答案C程序设计(数组)习题与答案数组是C语言中常用的数据结构之一,它可以存储多个相同类型的元素。
掌握数组的使用对于C程序设计至关重要,下面将为大家介绍一些关于C数组的习题及其答案。
1. 习题一:计算数组元素的和题目描述:编写一个程序,计算给定数组中所有元素的和,并输出结果。
解题思路:```c#include <stdio.h>int main() {int arr[5] = {1, 2, 3, 4, 5}; // 定义一个包含5个元素的整型数组int sum = 0; // 用于存储和的变量// 遍历数组,累加每个元素的值for (int i = 0; i < 5; i++) {sum += arr[i];}printf("数组元素的和为:%d\n", sum);return 0;}```2. 习题二:查找数组中的最大值题目描述:编写一个程序,找出给定整型数组中的最大值,并输出结果。
解题思路:```c#include <stdio.h>int main() {int arr[7] = {4, 7, 2, 9, 1, 5, 8}; // 定义一个包含7个元素的整型数组int max = arr[0]; // 假设第一个元素为最大值// 遍历数组,比较每个元素的值与当前最大值的关系for (int i = 1; i < 7; i++) {if (arr[i] > max) {max = arr[i];}}printf("数组中的最大值为:%d\n", max);return 0;}```3. 习题三:查找数组中的特定元素题目描述:编写一个程序,在给定整型数组中查找是否存在指定元素,并输出结果。
解题思路:```c#include <stdio.h>int main() {int arr[6] = {3, 6, 9, 2, 5, 8}; // 定义一个包含6个元素的整型数组 int target = 2; // 指定要查找的元素int found = 0; // 用于标记是否找到目标元素的变量// 遍历数组,比较每个元素的值与目标值的关系for (int i = 0; i < 6; i++) {if (arr[i] == target) {found = 1;break;}}if (found) {printf("数组中存在目标元素:%d\n", target);} else {printf("数组中不存在目标元素:%d\n", target);}return 0;}```4. 习题四:数组元素逆序排列题目描述:编写一个程序,将给定整型数组的元素逆序排列,并输出结果。
程序设计_数组(附带答案)
c程序设计数组班级学号姓名成绩一、单选题1.下面对一维数组a的说明正确的是。
A. int a(10)B. int n=10,a[n]C. int n;cin>>n;int a[n];D. #define SIZE 10int a[SIZE];2.若要对一维数组a的所有元素值初始化为1的语句正确的是。
A.int a[5]=(1,1,1,1,1);B.int a[ ]={ 5*1}C int a[ ]={1,1,1,1,1};D.int a[5]={1}3.若已定义数组:float a[8];则下列对数组元素引用正确的是。
A a[0] =1;B. a[8] = a[0];C. a=1;D. a[3.5]=1;4.下面对二维数组a的说明正确的是。
A. int a[3][ ];B. float a(3,4);C. double a[1][4];D. long a[3,4];5.不能对二维数组a进行正确初始化的语句是B。
A. int a[2][3]={0}B. int a[2][3]={{1,2},{3,4},{5,6}};C. int a[ ][3]={{1,2},{0}};D. int a[ ][3]={1,2,3,4,5,6}6.若有说明:int a[3][4]={0};则以下说法正确的是C 。
A. 只有元素a[0][0]可得到初值0B. 数组a中各元素都可得到初值,但其值不一定为0C. 数组a中每个元素均可得到初值0D. 此说明语句不正确7.下面对字符数组s的初始化不正确的是D。
A. char s[5]={“abc”};B. char s[5]={‘a’,’b’,’c’};C. char s[5]=“”;D. char s[5]=“abcdef”;8.有程序段如下:运行该程序的结果是 A。
char a[3],b[ ]=”China”;a=b;cout<<a<<endl;A. 编译出错B. 运行结果为ChinaC. 运行结果为ChD. 运行结果为空串9.下述对字符数组的描述中错误的是D。
习题五--数组
习题五--数组⼀、A类程序设计题1、求⼀个4x4矩阵对⾓线元素之和。
2、⽤数组的⽅法求Fibonacci数列的值(要求输出前20个数)。
3、将⼀个3x4矩阵转置(⾏列互换)存放。
4、将⼀个数组中的数按逆序存放,例如原来的顺序为8,7,6,4,2,要求改为2,4,6,7,8。
5、⽤选择法对10个整数进⾏降序排序。
6、⽤冒泡法对10个整数进⾏升序排序。
7、编写⼀个简单程序,要求:(1)从键盘上输⼊8个整数放⼊数组a[8]中(⽤for循环实现);(2)求出数组元素的最⼤值及数组的平均值。
8、求3×4矩阵中每⼀列元素的最⼤值并输出。
9、求4×4矩阵中每⼀⾏元素的最⼩值并输出。
10、某班有30个学⽣,进⾏了数学考试,编写程序将考试成绩输⼊⼀维数组,并求数学的平均成绩及不及格学⽣的⼈数。
11、有⼀个3x4矩阵,求出最⼤元素,以及其所在的⾏号和列号。
12、从键盘上输⼊10个实数,然后按输⼊顺序的逆序输出这10个数。
13、从键盘输⼊10个整数,找出其中最⼤值和最⼩值。
14、输⼊10个学⽣的姓名、学号和成绩,将其中不及格者的姓名、学号和成绩输出。
15、输⼊字符串 s,统计出 s 中共出现了多少个数字字符。
⼆、B类程序设计题1、对⼀个已按由⼩到⼤排好顺序的整型数组,若从键盘输⼊⼀个数x,现要查询该数是否在此整型数组中,若存在则删除该数,否则显⽰“不存在”信息。
2、对⼀个已按由⼩到⼤排好顺序的整型数组,若从键盘输⼊⼀个数x,现要将该数插⼊到该数组中,使其插⼊后整个数组排序规律不变。
3、编写⼀程序,要求从键盘上输⼊10个整数放⼊⼀个数组中(⽤for循环实现),并编写求最⼤值的函数max,在主程序调⽤这个函数实现输出数组中10个整数的最⼤值,要求⽤数组名作为函数参数。
4、输⼊⼀个4⾏4列的⼆维数组,编程实现:(1) 求出其中的最⼤值和最⼩值及其对应的⾏列位置;(2) 求出对⾓线上各元素之和。
5、⽤筛选法求100之内的素数。
程序设计1实验习题实验一
程序设计(1)实验习题实验一(1)运行以下程序,并解释运行结果。
# include <stdio.h>int main(void){ int x = –1;unsigned u = ;printf ( “x = %u = %d\n”, x, x);printf ( “u = %u = %d\n”, u, u);return 0;}(2)运行以下程序,解释运行结果,并修改程序以使结果正确。
# include <stdio.h>int main(void){ int x = ;printf ( “x + 1 = %d\n”, x + 1);return 0;}(3)运行以下程序,解释运行结果。
程序1:#include <stdio.h>int main(void){ float a;double b;a = 123456.789e4;b = 123456.789e4;printf(“%f\n%f\n”,a,b);return 0;}程序2:# include <stdio.h>int main(){ float a,b;a=123456.789e5;b=a+20;printf("%f\n",a);printf("%f\n",b);return 0;}(4)求平方根:输入1 个实数x,计算并输出其平方根(保留1 位小数)。
(5)华氏温度转换为摄氏温度:输入华氏温度f,计算并输出相应的摄氏温度c(保留2 位小数)。
c = 5/9(f-32).(6)三天打鱼两天晒网:中国有句俗语叫“三天打鱼两天晒网”。
假设某人从某天起,开始“三天打鱼两天晒网”,问这个人在以后的第n天中是“打鱼”还是“晒网”?编写相应程序(第一天就是当天)。
例如:输入:103输出:Fishing in day 103输入:35输出:Drying in day 35(7)按照规定,在高速公路上行使的机动车,达到或超出本车道限速的10%则处200元罚款;若达到或超出50%,就要吊销驾驶证。
数组编程练习(带答案)
数组编程练习1、产生一个由10个元素组成的一维数组并输出,数组元素由随机数(0-99)构成。
解:#include<stdio.h>#include<math.h>#define N 10int main(){int a[N],i;for(i=0;i<N;i++){a[i]=rand()%100;}printf("array a:\n");for(i=0;i<N;i++){printf("%4d",a[i]);}printf("\n");return 0;}2、产生一个由10个元素组成的一维数组并输出,数组元素由随机数(0-99)构成。
求该数组的最大值、最小值、总和和平均值并输出。
解:#include<stdio.h>#include<math.h>#define N 10int main(){int a[N],i,max,min,sum;float ave;for(i=0;i<N;i++){a[i]=rand()%100;}printf("array a:\n");for(i=0;i<N;i++){printf("%4d",a[i]);}printf("\n");max=a[0];min=a[0];sum=0;for(i=0;i<N;i++){sum=sum+a[i];if(a[i]>max){max=a[i];}if(a[i]<min){min=a[i];}}ave=(float)sum/N;printf("max=%d,min=%d,sum=%d,ave= %.2f\n",max,min,sum,ave);return 0;}3、产生一个由10个元素组成的一维数组并输出,数组元素由随机数(0-99)构成。
C语言上机题目——数组程序设计
return 0;
}
2.
#include<stdio.h>
int main()
{
int a[20],i=0,j=0,k=0;
do
{
scanf("%d",&a[i]);
i++;
}while(a[i-1]!=0);
i=0;
while(a[i]!=0)
{
if(a[i]>0) j++;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
if(max<a[i][j])
max=a[i][j];
x=i;
y=j;
}
printf("%d:%d:%d\n",max,x,y);
return 0;
}
printf("%c",a[i]);
i++;
}
printf("\n");
return 0;
}
4.
#include<stdio.h>
#define N 3
int main()
{
int a[N][N];
int i,j,max=0,x,y;
for(i=0;iห้องสมุดไป่ตู้3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
课程实验报告
课程名称
优课UOOC(深圳大学)C语言程序设计 作业一
作业一一、单选题 (共84.00分)1.下面程序的输出结果是:#include <cstdio>using namespace std;int main(){int a=3;printf("a=%d,",a);a=a+1;printf("a=%d,",a);a*=2;printf("a=%d\n",a);return 1;}A.程序出错,不能正确运行,因为a=a+1不成立B.a=3C.a=3,a=4,a=8D.a=3 a=3 a=3正确答案:C教师评语:暂无2.若有定义:int a,*p = &a;,假设变量a的指针是1000,sizeof(int)的值是4,则p+5的计算结果是_____。
A.1000B.1005C.1020D.p+5是不正确的表达式正确答案:C教师评语:暂无3.若有说明语句:int a,b;,用户的输入为111222333,结果a的值为111,b的值为333,那么以下输入正确的语句是______。
A.scanf("%*3d%3c%3d",&a,&b);B.scanf("%3d%3d%*3d",&a,&b);C.scanf("%3d%*3c%3d",&a,&b);D.scanf("%3d%*2d%3d",&a,&b);正确答案:C教师评语:暂无4.已知int x=10, y=20, z=30; 以下语句执行后,x ,y ,z 的值是_____。
if(x>y)z = x;x = y;y = z;A.x = 10, y = 20, z = 30B.x= 20, y = 30, z = 30C.x =20, y=30, z = 10D.x = 20, y = 30, z = 20正确答案:B教师评语:暂无5._____不是程序控制语句,是C语言的标准库函数,但可以用于控制程序的流程。
东师《VB程序设计》2022年秋学期在线作业1
VB程序设计2022年秋学期在线作业1一、单选题1:执行语句Open "C:StuData.dat" For Input As #2 后,系统()。
A将C盘当前文件夹下名为StuData.dat的文件的内容读入内存B在C盘当前文件夹下建立名为StuData.dat的顺序文件C将内存数据存放在C盘当前文件夹下名为StuData.dat的文件中D将某个磁盘文件的内容写入C盘当前文件夹下名为StuData.dat的文件中正确答案:A2:语句Dim AA(9,9)所定义数组AA的元素个数为A 18B 81C 100D 90正确答案:C3:表达式Int(Rnd(O)+1)+Int(Rnd(1)-1)的值是()。
A 1B 0C -1D 2正确答案:B4:在窗体模块的通用声明段中声明变量时,不能使用()关键字。
A DimB PublicC PrivateD Static正确答案:D5:新建一工程,将其窗体的(名称)属性设置为MyFirst,则默认的窗体文件名为()。
A Forml.frmB工程1.frmC MyFirst.frmD Form1.vbp正确答案:C6:通过设置ADO数据控件的()属性可以建立该控件到数据源的连接信息。
A RecordSourceB RecordSetC ConnectionStringD Database正确答案:C7:下列控件中,没有Caption属性的是()。
A框架B列表框C复选框D单选按钮正确答案:B8:模拟方形骰子投掷的表达式是()。
A Int(6 * Rnd(1))B Int( 1+6 * Rnd(1))C Int(6 * Rnd(1) -l)D Int(6 * Rnd(1)-1)正确答案:B9:引用列表框(List1 )最后一个数据项应使用()。
A List1.List(Listl1. ListCount)B List1. List(Listl. ListCount - 1)C List1. List(ListCount)D List l. List( ListCounr-1)正确答案:B10:以下可以作为Visual Basic变量名的是()。
c语言必背的典型程序设计题目-数组、函数-------答案
数组局部必须会编写的程序〔参考答案〕1、使用选择法、冒泡法对10个数进展排序,并输出排序前后的数列。
//选择法#include<stdio.h>void main(){int a[10]={12,45,7,8,96,4,10,48,2,46},n=10,i,j,t,temp;printf("Before sort:");for(i=0;i<10;i++){printf("%4d",a[i]);}printf("\n");//排序for(i=0;i<9;i++){t=i;for(j=i+1;j<10;j++){if(a[t]>a[j]){t=j;}}if(t!=i){temp=a[i];a[i]=a[t];a[t]=temp;}}printf("Aftere sorted:");for(i=0;i<10;i++){printf("%4d",a[i]);}printf("\n");}//冒泡法#include<stdio.h>voidmain(){int a[10]={12,45,7,8,96,4,10,48,2,46},n=10,I,j,t;printf(“Before sort:〞);for(i=0;i<10;i++){printf("%4d",a[i]);}prtintf(“\n〞);//排序for(i=0;i<=n-1;i++){for(j=0;j<i;j++)if(a[j]>a[j+1]) {t=a[j];a[j]=a[j+1];a[j+1]=t;}}printf(“Aftere sorted:〞);for(i=0;i<10;i++){printf("%4d",a[i]);}prtintf(“\n〞);}2、数组a中的元素已按由小到大顺序排列,以下程序的功能是将输入的一个数插入数组a中,插入后,数组a中的元素仍然由小到大顺序排列。
C语言数组作业编程题答案
1、请先用记事本创建文件original.txt,往其中写入一组已排好序的整型数,今输入一个整数,要求按原来排序的规律将它插入数中,仍写入文件。
例如:原来整数依次为4、6、8、41、56、77、102(数据间的分隔符为空格)。
若将42插入数中,则插入后整数依次为4、6、8、41、42、56、77、102。
答案:#include <stdio.h>#include <stdlib.h>void main(){int a[100];int ijnumber;int n;FILE *fp;fp=fopen("e:\\C语言\\original.txt""r");if(fp==NULL){printf("open error");exit(0);}i=0;while(!feof(fp)){fscanf(fp"%d"&a[i++]);fgetc(fp);}number=i-1; //number中存最后一个数据的下标fclose(fp);scanf("%d"&n);//以下的while循环用来找n要放的位置循环结束时正好是a[i]的位置i=0;while(n>a[i]){i++;}//for循环的功能是将a[i]到最后一个元素全后移一个位置for(j=number;j>=i;j--)a[j+1]=a[j];//将n放入找到的位置a[i]=n;number=number+1; //加入n后,元素个数增1,用来控制向文件中的写入次数fp=fopen("e:\\C语言\\original.txt""w");if(fp==NULL){printf("open error");exit(0);}//写入数据for(i=0;i<=number-1;i++)fprintf(fp"%d "a[i]);fprintf(fp"%d"a[i]); //最后一个数据后没有空格fclose(fp);}2、假定整型数组中的元素值不重复。
数组一作业
数组一作业实验报告课程名称_____ C语言程序设计_____ 实验项目___数组___实验仪器______计算机___________系别_____自动化学院_______ 专业______自控_________班级/学号___自控1404/2014010667_学生姓名___ 杨逸航_________实验日期____2015年1月10日___ 成绩_______________________指导教师______周淑一________一、实验目的1、掌握C语言中,基本数组的使用方法。
2、掌握数组中定义及初始化的用法。
3、掌握一维数组元素的引用及其应用。
4、掌握一维数组的常见算法。
二、实验内容1、已知有一组测量数据。
请编写程序将这组数据保存在数组x 中,并计算最大值,最小值和平均值,最后输出这组测量数据以及最大值、最小值和平均值。
输出:这组数据以及最大值、最小值和平均值。
程序代码:#includevoid main(){int max=0,min=100;float sum=0;int temp1=0,temp2=0;int a[10]={32,27,64,18,95,14,90,70,60,37};printf("序号\t测量值\n");for(int i=0;i<10;i++){if(max<a[i])< p="">{max=a[i];temp1=i;}if(min>a[i]){min=a[i];temp2=i;}printf("%d\t%d\n",i,a[i]);sum+=a[i];}printf("这组数的最大值是: %d",max); printf("最小值是: %d",min);printf("平均值是: %.2f\n",sum/10); }2、某班20个学生C语言成绩已知,请编写程序,统计不及格人数。
c++数组作业
第1题:编写程序,从任意n个数(允许有重复)中删除某一个数k。
输入分3行:第一行为n的值代表数列中数的个数,第二行为n个数,第三行为要删除的数k。
样例输入:51 1 3 5 21样例输出:3 5 2样例输入:51 1 3 5 24样例输出:1 1 3 5 2第2题:编写程序,从任意n个数中找出素数,计算素数之和,并按从大到小顺序排序。
输入分2行:第一行为n的值,第二行为n个整数;输出分2行:第一行为素数之和,第二行为素数排序结果。
样例输入:51 3 52 0样例输出:105 3 2第3题:编写程序,输出矩阵(3行3列)的左上三角。
样例输入:1 2 34 5 67 8 9样例输出:1 2 34 57第4题:编写程序,输入由数字字符构成的字符串,分别统计该字符串中数字字符对应的数字中奇数和偶数的个数。
样例输入:7843028503样例输出:4 6第5题:编写程序,输入字符串(不包含空格),将字符串中的字符按ASCII码值从大到小排序后输出。
样例输入:China样例输出:nihaC第1题:#include<iostream.h>#include<math.h>#include<stdio.h>int main(){int a[500],n,i,k,j;cin>>n;for(i=0;i<n;i++)cin>>a[i];cin>>k;for(i=0;i<n;i++)if(a[i]==k){j=i;i=i-1;for(;j<n-1;j++)a[j]=a[j+1];n=n-1;}for(i=0;i<n;i++)cout<<a[i]<<" ";return 0;}第2题:#include<iostream.h>#include<stdio.h>int main(){int a[1000],i,n,k,s,j,b[1000],m; k=0;s=0;cin>>n;for(i=0;i<n;i++)cin>>a[i];for(i=0;i<n;i++){for(j=2;j<a[i];j++)if(a[i]%j==0)break;if(j==a[i]){s=s+a[i];b[k]=a[i];k++;}}cout<<s<<endl;for(i=0;i<k;i++)for(j=0;j<k-1;j++)if(b[j]<b[j+1]){m=b[j];b[j]=b[j+1];b[j+1]=m;} for(i=0;i<k;i++)cout<<b[i]<<" ";return 0;}第3题:#include<iostream.h> #include<stdio.h>int main(){int a[3],b[3],c[3],i; for(i=0;i<3;i++) cin>>a[i];for(i=0;i<3;i++) cin>>b[i];for(i=0;i<3;i++) cin>>c[i];for(i=0;i<3;i++)cout<<a[i]<<" "<<endl; for(i=0;i<2;i++)cout<<b[i]<<" "<<endl; cout<<c[0];return 0;}第4题:#include<iostream.h> #include<stdio.h>#include<string.h>int main(){char a[100];int m,n,i,k;m=0;n=0;gets(a);k=strlen(a);for(i=0;i<k;i++)if(a[i]%2==0)n++;else m++;return 0;}第5题:#include<iostream.h>#include<stdio.h>#include<string.h>int main(){char a[100],b;int i,j,k;gets(a);k=strlen(a);for(i=0;i<k-1;i++)for(j=0;j<k-1;j++)if(a[j]<a[j+1]){ b=a[j];a[j]=a[j+1];a[j+1]=b;}for(i=0;i<=k;i++)cout<<a[i];return 0;}2.(自己的,第2次有误,求解)#include<iostream.h> #include<stdio.h>int main (){int a[1000],i,j,s,n,b[1000],m,k;cin>>n;s=0;k=0;for(i=0;i<n;i++)cin>>a[i];for(i=0;i<n;i++){for(j=2;j<a[i];j++){if(a[i]%j==0)break;if(j=a[i]-1)s+=a[i];b[k]=a[i];k++;}}cout<<s<<endl;for(j=0;j<k-1;j++){if(b[j]<b[j+1])m=b[j];b[j]=b[j+1];b[j+1]=m;}for(j=0;j<k;j++)return 0; }。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
上机作业6
1.输入10个学生的一门课成绩,用一维数组存放其成绩,请输出最高分。
#include <stdio.h>
void main()
{
int x[10],i,max;
for(i=0;i<10;i++)
scanf("%d",&x[i]);
for(i=1;i<10;i++)
{
if(x[i]>max)
{
max=x[i];
}
}
printf("the max is:%d\n",max);
}
2.定义一个有10个元素的数组,用其代表10个学生的考试成绩,从键盘输入10个成绩,统计平均成绩。
#include <stdio.h>
void main()
{
int x[10],i;
double j,s=0;
for(i=0;i<10;i++)
scanf("%d",&x[i]);
for(i=0;i<10;i++)
{
s=s+x[i];
}
j=s/10;
printf("平均值是%lf\n",j);
}
3.输入10个学生的一门课成绩,用一维数组存放其成绩,统计并输出不及格人数及其百分比。
#include <stdio.h>
void main()
{
int x[10],i;
double j=0,p;
for(i=0;i<10;i++)
scanf("%d",&x[i]);
for(i=0;i<10;i++)
{
if(x[i]<60)
j++;
}
printf("不及格人数有%.0lf\n",j);
p=j/10*100;
printf("不及格人数是总数的:%.0lf%%\n",p);
}
4.定义一个有10个元素的数组,用其代表10个学生的考试成绩,从键盘输入10个成绩,分别统计优、良、中、及格、不及格的人数。
#include <stdio.h>
void main()
{
int x[10],i,y=0,l=0,z=0,j=0,b=0;
for(i=0;i<10;i++)
scanf("%d",&x[i]);
for(i=0;i<10;i++)
{
if(x[i]>=90)
{
y++;
}
else if(x[i]<90&&x[i]>=80)
{
l++;
}
else if(x[i]<80&&x[i]>=70)
{
z++;
}
else if(x[i]<70&&x[i]>=60)
{
j++;
}
else
{
b++;
}
}
printf("成绩为优的人数为 %d\n",y);
printf("成绩为良的人数为 %d\n",l);
printf("成绩为中的人数为 %d\n",z);
printf("成绩为及格的人数为 %d\n",j);
printf("成绩不及格的人数为 %d\n",b);
}
5.由键盘任意输入10个整形数据,将其按由小到大的顺序排序后输出。
#include<stdio.h>
void main()
{
int a[10],i,j,t;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<9;i++)
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;
}
printf("从小到大为\n");
for(i=0;i<10;i++)
printf("%d ",a[i]);
printf("\n");
}
6.由键盘任意输入10个数据,将它们倒序后输出。
#include<stdio.h>
void main()
{
int a[10],i,j,t;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<5;i++)
{
j=9-i;
t=a[j];
a[j]=a[i];
a[i]=t;
}
printf("\n");
for(i=0;i<10;i++)
printf("%d ",a[i]);
printf("\n");
}
7.建立一个5*5的矩阵,将其转置,并将其按矩阵形式输出。
#include<stdio.h>
void main()
{
int a[5][5],b[5][5];
int i,j;
printf("输入25个数\n");
for(i=0;i<5;i++)
for(j=0;j<5;j++)
scanf("%d",&a[i][j]);
printf("\n");
printf(" 矩阵为:\n");
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
printf(" %d",a[i][j]);
}
printf("\n");
}
printf("\n");
printf(" 转置后的矩阵为:\n");
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
b[i][j]=a[j][i];
printf(" %d",b[i][j]);
}
printf("\n");
}
}
8.编程打印杨辉三角形的前6行6列的值。
即输出:1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
#include<stdio.h>
void main()
{
int a[6][6];
int i,j;
for(i=0;i<=5;i++)
{
a[i][0]=1;
a[i][i]=1;
}
for(i=2;i<=5;i++)
{
for(j=1;j<i;j++)
a[i][j]=a[i-1][j]+a[i-1][j-1];
}
for(i=0;i<=5;i++)
{
for(j=0;j<=i;j++)
printf("%d ",a[i][j]);
printf("\n");
}
}
9.求n个整数中素数的个数。
(选做题)
#include<stdio.h>
void main()
{
int n,x,i,j,m=0;
printf("输入n值:\n");
scanf("%d\n",&n);
for(i=1;i<n;i++)
{
scanf("%d\n",&x);
{
for(j=2;j<x;j=j++)
{
if(x%j==0)
break;
}
}
m=m+1;
}
printf("这些数中素数个数为:%d\n",n-m); }。