C语言图形+数组答案
C语言练习3(数组)=参考答案
C语言(数组)一、选择题1. 设有程序:main(){ int i,a[11];printf("给数组赋值:\n");for (i=0;i<=10;i++)scanf("%d",( ));... ...printf("输出数组:\n");for(i=0;i<=10;i++)printf("%d,",( ));}则在程序中的两个园括号中分别应填入:CA) &a[i]和&a[i]B) a[i]和&a[i]C) &a[i]和a[i]D) a[i]和a[i]2. 设已定义:int a[15]; 则数组a占用的内存单元数是( C ).A) 15 B) 16 C) 30 D) 323. 阅读程序:main(){ int a[2]={0},i,j,k=2;for(i=0;i<k;i++)for(j=0;j<k;j++) a[j]=a[i]+1;printf("%d\n",a[k]);}以上程序的输出结果是( D ).A) 1 B) 3 C) 2 D) 不确定的值4. 阅读程序:f(int b[],int n){ int i,r=1;for(i=0;i<=n;i++) r=r*b[i];return r;}main(){ int x,a[]={2,3,4,5,6,7,8,9};x=f(a,3);printf("%d\n",x);}以上程序的输出结果是( D ).A) 720 B) 6 C)24 D) 1205. 以下定义语句中,错误的是( B ).A) int a[ ] = {6,7,8};B) int n=5, a[n];C) char a[ ]= "string";D) char a[5 ]={'0','1','2','3','4'};6. 以下描述中正确的是( D ).A) 数组名后面的常量表达式用一对圆括弧括起来B) 数组下标从1开始C) 数组下标的数据类型可以是整型或实型D) 数组名的规定与变量名相同7. 若定义数组并初始化char a[10]={'0','1 ','2','3','4','5','6','7','8','9'};指出以下错误语句( AB ).A) scanf("%c",a[0]);B) scanf("%s",&a);C) printf("%c",a[3]);D) printf("%s",a);8.若定义数组int a[10] ,其最后一个数组元素为( C ).A) a[0]B) a[1]C) a[9]D) a[10]9. 若定义数组并初始化int a[10]={ 1,2,3,4},以下语句哪一个不成立( B )?A) a[8] 的值为0B) a[1] 的值为1C) a[3] 的值为4D) a[9] 的值为010. 指出以下错误语句( A ).A) int n=10,a[n];B) int n,a[10];C) int a[10]={1,2,3};D) int a[10]={1,2,3,4,5,6,7,8,9,10};11. 请读程序:main(){int n[2],i,j,k;for(i=0;i<2;i++) n[i]=0;k=2;for(i=0;i<k;i++)for(j=0;j<k;j++) n[j]=n[i]+1;printf("%d\n",n[k]);}上面程序的输出结果是( A ).A)不确定的值 B)3 C)2 D)112. 若有以下的定义和语句:int str[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='e',则数值为2的表达式是( C ).A)str['g'-c] B)str[2] C)str['d'-'c'] D)str['d'-c]13. 设有数组定义:int a[5];则下列给数组元素赋值错误的是( B ).A) a[3]=93;B) scanf("%c",a[3]);C) a[3]=getchar();D) a[3]='a'+3;14. 以下数组定义中错误的是( D ).A) #define N 30int a[N+30];B) #define N 30int a[N];C) int a[30];D) int a[N];15. 在定义一个一维数组时,不能用来表示数组长度的是( D ).A)常量 B)符号常量 C)常量表达式 D) 已被赋值的变量16. 若float型变量占用4个字节,有定义float a[20]={1.1,2.1,3.1};则数组a在内存中所占的字节数是( D ).A)12 B)20 C)40 D)8017. 设已定义:int x[2][4]={1,2,3,4,5,6,7,8}; 则元素x[1][1]的正确初值是( A ).A) 6 B) 5 C) 7 D) 118. 设有定义:int a[][3]={{1,2,3},{4,5,6},{7,8,9}}; 则a[1][2]的初值为( C ).A) 2 B) 4 C) 6 D) 819. 设有:int a[4][5]; 则数组a占用的内存字节数是( C ).A) 12 B) 24 C) 40 D) 2020. 以下数组定义中,不正确的是( B ).A) int b[3][4];B) int c[3][ ]={{1,2},{1,2,3},{4,5,6,7}};C) int b[200][100]={0};D) int c[ ][3]={{1,2,3},{4,5,6}};21. 定义数组:int x[2][3]; 则数组x 的维数是( 2 ).A) 1 B) 2 C) 3 D) 622. 若定义数组并初始化int b[2][3]= { 1,2,3,4,5,6},以下语句哪一个成立( C )?A) 表达式b[1][2]的值为1B) 表达式b[1][2]的值为4C) 表达式b[1][2]的值为6D) 表达式b[1][2]的值为223. 若定义数组并初始化int a[2][3]={{1,2,3},{4,5,6}};for(i=0;i<2;i++)for(j=0;j<3;j++)printf("%d",a[i][j]);语句的结果是哪一个( C )?A) 1,2,3,4,5,6B) 1 2 3 4 5 6C) 12345624. 若定义数组并初始化int a[2][3]= {{1,2, 3},{4,5,6}};以下语句哪一个不成立( B )?A) a数组中有6个元素B) a[2][3]是a数组的最后一个元素的引用C) a数组中每个元素都为整数D) a数组是整型数组25. 定义如下变量和数组:int i;int x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是( C ).for(i=0;i<3;i++) printf("%d",x[i][2-i]);A) 1 5 9 B) 1 4 7 C) 3 5 7 D) 3 6 926. 如有以下定义:double s[][5]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14};则数值为2的元素是( C ).A) s[1][3] B) s[0][3] C) s[0][2] D) s[1][2]27. 以下程序的输出结果是( A ).main(){int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;for(i=1;i<3;i++)for(j=0;j<=i;j++)s+=a[i][j];printf("%d",s);}A) 18 B) 19 C) 20 D) 2128. 若已有char b[10][50];则该二维字符数组在内存所占字节数为( D ).A) 10 B)50 C)60 D)50029. 设有:char a[10]; 下列语句那个是正确的( D )?A) scanf("%s",a[0]);B) scanf("%s",&a);C) printf("%s",a[0])D) printf("%s",a)30. 阅读程序:main(){ char a[10];int i;for(i=1;i<=5;i++)scanf("%c",&a[i]);printf("%c",a[0]);}设从键盘输入字符串:abcde,则程序的输出结果是( C ).A) a B)空格 C)不确定D)031. 合法的数组定义是( D ).A) int a[ ] = "string";B) int a[5]={0,1,2,3,4,5};C) char a= "string";D) char a[ ]={'0','1','2','3'};32. 设有数组定义:char string[ ]="China";则数组string所占的空间为( B ).A) 5个字节B) 6个字节C) 7个字节D) 10个字节33. 定义字符数组c:char c[ ]={"c language"};数组c在内存中所占字节数是( C ).A) 9 B) 10 C) 11 D) 1234. 指出以下错误语句( C ).A) char a[10]={'0','1','2','3','4','5','6','7','8','9'};B) char a[10]={'0','1 ','2','3'};C) char a[2]= {"1","2"};D) char a[2]= {'a’,'b’};35. 若定义数组并初始化char a[10]={"hello"},该数组的元素个数是( A ).A) 10B) 5C) 6D) 736. 若定义数组并初始化char a[10]={"HELLO"},该数组的元素中 a[2]是( A ).A) 'L'B) 'E'C) 'H'D) 'O'37. 若定义数组并初始化int b[10]={ 1,2,3,4},以下哪几个语句成立( A C D)?A)b[8]的值为0B)b[1]的值为1C)b[3]的值为整数D)b[10]不是b数组中的元素38. 若定义数组int a[10];指出下列错误语句:ABCDA) a数组共有10个元素,其引用方法是:a[1],a[2]...a[10];B) a数组是整型数组,其元素自动初始化为0;C) a数组最后一个元素的引用方法是a[10];D) a数组第一个元素的引用方法是a[1];二、判断题1.数组是数目固定的若干变量的有序集合,数组中各元素的类型可以不同。
c语言数组试题及答案
c语言数组试题及答案1. 请编写一个程序,要求用户输入10个整数,然后将其存储在一个数组中,并输出这个数组的内容。
答案:```c#include <stdio.h>int main() {int numbers[10];int i;printf("请输入10个整数:\n");for (i = 0; i < 10; i++) {scanf("%d", &numbers[i]);}printf("数组内容为:\n");for (i = 0; i < 10; i++) {printf("%d ", numbers[i]);}return 0;}```2. 请编写一个程序,要求用户输入一个整数n(n>0),然后分别输入n个整数存储在一个数组中,计算并输出这个数组中所有元素的和。
答案:```c#include <stdio.h>int main() {int n;int numbers[100];int sum = 0;int i;printf("请输入整数n:\n");scanf("%d", &n);printf("请输入%d个整数:\n", n);for (i = 0; i < n; i++) {scanf("%d", &numbers[i]);sum += numbers[i];}printf("数组元素之和为:%d\n", sum);return 0;}```3. 请编写一个程序,要求用户输入一个整数n(n>1),然后分别输入n个整数存储在一个数组中,计算并输出这个数组中最大和最小的元素。
答案:```c#include <stdio.h>int main() {int n;int numbers[100];int max, min;int i;printf("请输入整数n:\n");scanf("%d", &n);printf("请输入%d个整数:\n", n);for (i = 0; i < n; i++) {scanf("%d", &numbers[i]);}max = numbers[0];min = numbers[0];for (i = 1; i < n; i++) {if (numbers[i] > max) {max = numbers[i];}if (numbers[i] < min) {min = numbers[i];}}printf("数组中的最大元素为:%d\n", max);printf("数组中的最小元素为:%d\n", min);return 0;}```4. 请编写一个程序,要求用户输入两个整数m和n(1<=m<=n<=100),然后生成并输出m到n之间(包含m和n)的所有整数。
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语言数组练习及答案
第四部分数组4.1 选择题1、以下关于数组得描述正确得就是(c )。
A、数组得大小就是固定得,但可以有不同得类型得数组元素B、数组得大小就是可变得,但所有数组元素得类型必须相同C、数组得大小就是固定得,所有数组元素得类型必须相同D、数组得大小就是可变得,可以有不同得类型得数组元素2、以下对一维整型数组a得正确说明就是(d )。
A、int a(10);B、 int n=10,a[n];C、int n;D、 #define SIZE 10scanf("%d",&n); int a[SIZE];int a[n];3、在C语言中,引用数组元素时,其数组下标得数据类型允许就是(c )。
A、整型常量B、整型表达式C、整型常量或整型表达式D、任何类型得表达式4、以下对一维数组m进行正确初始化得就是(c )。
A、 int m[10]=(0,0,0,0) ;B、 int m[10]={ };C、 int m[ ]={0};D、 int m[10]={10*2};5、若有定义:int bb[ 8];。
则以下表达式中不能代表数组元bb[1]得地址得就是(c )。
A、 &bb[0]+1B、 &bb[1]C、 &bb[0]++D、 bb+16、假定int类型变量占用两个字节,其有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数就是(d )。
A、 3B、 6C、 10D、 207、若有以下说明:int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='a',d,g;则数值为4得表达式就是(d )A、 a[g-c]B、 a[4]C、 a['d'-'c']D、 a['d'-c]8、以下程序段给数组所有得元素输入数据,请选择正确答案填入(a )。
#include<stdio、h>main(){int a[10],i=0;while(i<10) scanf("%d",________ );┇}A、 a+(i++)B、 &a[i+1]C、 a+iD、 &a[++i]9、执行下面得程序段后,变量k中得值为(a )。
C语言练习3(数组)=参考解答
C语言(数组)一、选择题1. 设有程序:main(){ int i,a[11];printf("给数组赋值:\n");for (i=0;i<=10;i++)scanf("%d",( ));... ...printf("输出数组:\n");for(i=0;i<=10;i++)printf("%d,",( ));}则在程序中的两个园括号中分别应填入:CA) &a[i]和&a[i]B) a[i]和&a[i]C) &a[i]和a[i]D) a[i]和a[i]2. 设已定义:int a[15]; 则数组a占用的内存单元数是( C ).A) 15 B) 16 C) 30 D) 323. 阅读程序:main(){ int a[2]={0},i,j,k=2;for(i=0;i<k;i++)for(j=0;j<k;j++) a[j]=a[i]+1;printf("%d\n",a[k]);}以上程序的输出结果是( D ).A) 1 B) 3 C) 2 D) 不确定的值4. 阅读程序:f(int b[],int n){ int i,r=1;for(i=0;i<=n;i++) r=r*b[i];return r;}main(){ int x,a[]={2,3,4,5,6,7,8,9};x=f(a,3);printf("%d\n",x);}以上程序的输出结果是( D ).A) 720 B) 6 C)24 D) 1205. 以下定义语句中,错误的是( B ).A) int a[ ] = {6,7,8};B) int n=5, a[n];C) char a[ ]= "string";D) char a[5 ]={'0','1','2','3','4'};6. 以下描述中正确的是( D ).A) 数组名后面的常量表达式用一对圆括弧括起来B) 数组下标从1开始C) 数组下标的数据类型可以是整型或实型D) 数组名的规定与变量名相同7. 若定义数组并初始化char a[10]={'0','1 ','2','3','4','5','6','7','8','9'};指出以下错误语句( AB ).A) scanf("%c",a[0]);B) scanf("%s",&a);C) printf("%c",a[3]);D) printf("%s",a);8.若定义数组int a[10] ,其最后一个数组元素为( C ).A) a[0]C) a[9]D) a[10]9. 若定义数组并初始化int a[10]={ 1,2,3,4},以下语句哪一个不成立( B )?A) a[8] 的值为0B) a[1] 的值为1C) a[3] 的值为4D) a[9] 的值为010. 指出以下错误语句( A ).A) int n=10,a[n];B) int n,a[10];C) int a[10]={1,2,3};D) int a[10]={1,2,3,4,5,6,7,8,9,10};11. 请读程序:main(){int n[2],i,j,k;for(i=0;i<2;i++) n[i]=0;k=2;for(i=0;i<k;i++)for(j=0;j<k;j++) n[j]=n[i]+1;printf("%d\n",n[k]);}上面程序的输出结果是( A ).A)不确定的值 B)3 C)2 D)112. 若有以下的定义和语句:int str[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='e',则数值为2的表达式是( C ).A)str['g'-c] B)str[2] C)str['d'-'c'] D)str['d'-c]13. 设有数组定义:int a[5];则下列给数组元素赋值错误的是( B ).B) scanf("%c",a[3]);C) a[3]=getchar();D) a[3]='a'+3;14. 以下数组定义中错误的是( D ).A) #define N 30int a[N+30];B) #define N 30int a[N];C) int a[30];D) int a[N];15. 在定义一个一维数组时,不能用来表示数组长度的是( D ).A)常量 B)符号常量 C)常量表达式 D) 已被赋值的变量16. 若float型变量占用4个字节,有定义float a[20]={1.1,2.1,3.1};则数组a在内存中所占的字节数是( D ).A)12 B)20 C)40 D)8017. 设已定义:int x[2][4]={1,2,3,4,5,6,7,8}; 则元素x[1][1]的正确初值是( A ).A) 6 B) 5 C) 7 D) 118. 设有定义:int a[][3]={{1,2,3},{4,5,6},{7,8,9}}; 则a[1][2]的初值为( C ).A) 2 B) 4 C) 6 D) 819. 设有:int a[4][5]; 则数组a占用的内存字节数是( C ).A) 12 B) 24 C) 40 D) 2020. 以下数组定义中,不正确的是( B ).A) int b[3][4];B) int c[3][ ]={{1,2},{1,2,3},{4,5,6,7}};C) int b[200][100]={0};D) int c[ ][3]={{1,2,3},{4,5,6}};21. 定义数组:int x[2][3]; 则数组x 的维数是( 2 ).A) 1 B) 2 C) 3 D) 622. 若定义数组并初始化int b[2][3]= { 1,2,3,4,5,6},以下语句哪一个成立( C )?A) 表达式b[1][2]的值为1B) 表达式b[1][2]的值为4C) 表达式b[1][2]的值为6D) 表达式b[1][2]的值为223. 若定义数组并初始化int a[2][3]={{1,2,3},{4,5,6}};for(i=0;i<2;i++)for(j=0;j<3;j++)printf("%d",a[i][j]);语句的结果是哪一个( C )?A) 1,2,3,4,5,6B) 1 2 3 4 5 6C) 12345624. 若定义数组并初始化int a[2][3]= {{1,2, 3},{4,5,6}};以下语句哪一个不成立( B )?A) a数组中有6个元素B) a[2][3]是a数组的最后一个元素的引用C) a数组中每个元素都为整数D) a数组是整型数组25. 定义如下变量和数组:int i;int x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是( C ).for(i=0;i<3;i++) printf("%d",x[i][2-i]);A) 1 5 9 B) 1 4 7 C) 3 5 7 D) 3 6 926. 如有以下定义:double s[][5]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14};则数值为2的元素是( C ).A) s[1][3] B) s[0][3] C) s[0][2] D) s[1][2]27. 以下程序的输出结果是( A ).main(){int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;for(i=1;i<3;i++)for(j=0;j<=i;j++)s+=a[i][j];printf("%d",s);}A) 18 B) 19 C) 20 D) 2128. 若已有char b[10][50];则该二维字符数组在内存所占字节数为( D ).A) 10 B)50 C)60 D)50029. 设有:char a[10]; 下列语句那个是正确的( D )?A) scanf("%s",a[0]);B) scanf("%s",&a);C) printf("%s",a[0])D) printf("%s",a)30. 阅读程序:main(){ char a[10];int i;for(i=1;i<=5;i++)scanf("%c",&a[i]);printf("%c",a[0]);}设从键盘输入字符串:abcde,则程序的输出结果是( C ).A) a B)空格 C)不确定D)031. 合法的数组定义是( D ).A) int a[ ] = "string";B) int a[5]={0,1,2,3,4,5};C) char a= "string";D) char a[ ]={'0','1','2','3'};32. 设有数组定义:char string[ ]="China";则数组string所占的空间为( B ).A) 5个字节B) 6个字节C) 7个字节D) 10个字节33. 定义字符数组c:char c[ ]={"c language"};数组c在内存中所占字节数是( C ).A) 9 B) 10 C) 11 D) 1234. 指出以下错误语句( C ).A) char a[10]={'0','1','2','3','4','5','6','7','8','9'};B) char a[10]={'0','1 ','2','3'};C) char a[2]= {"1","2"};D) char a[2]= {'a’,'b’};35. 若定义数组并初始化char a[10]={"hello"},该数组的元素个数是( A ).A) 10B) 5C) 6D) 736. 若定义数组并初始化char a[10]={"HELLO"},该数组的元素中 a[2]是( A ).A) 'L'B) 'E'C) 'H'D) 'O'37. 若定义数组并初始化int b[10]={ 1,2,3,4},以下哪几个语句成立( A C D)?A)b[8]的值为0B)b[1]的值为1C)b[3]的值为整数D)b[10]不是b数组中的元素38. 若定义数组int a[10];指出下列错误语句:ABCDA) a数组共有10个元素,其引用方法是:a[1],a[2]...a[10];B) a数组是整型数组,其元素自动初始化为0;C) a数组最后一个元素的引用方法是a[10];D) a数组第一个元素的引用方法是a[1];二、判断题1.数组是数目固定的若干变量的有序集合,数组中各元素的类型可以不同。
图形数组---参考答案
401、用循环编写程序,单击“生成图形”按钮,在多行文本框中输出如图所示的三角形:D D D D D D DC C C C CB B BAPrivate Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim i, j As IntegerDim str1 As String = ""Dim p As String = "D"For i = 1 To 4str1 = str1 + Space(2 * i)For j = 1 To 9 - 2 * istr1 &= p + " "Nextstr1 &= vbCrLfp = Chr(Asc(p) - 1)NextTextBox1.Text = str1End Sub403、用循环编写程序,单击“生成图形”按钮,在多行文本框中输出如图所示的三角形:A B C D E F GA B C D EA B CAPrivate Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim i, j As IntegerDim str1 As String = ""Dim p As String = "A"For i = 1 To 4str1 = str1 + Space(2 * i)For j = 1 To 9 - 2 * istr1 &= p + " "p = Chr(Asc(p) + 1)Nextstr1 &= vbCrLfp = "A"NextTextBox1.Text = str1End Sub406、用循环编写程序,单击“生成图形”按钮,在多行文本框中输出如图所示的三角形:9 8 7 6 5 4 3 2 19 8 7 6 5 4 39 8 7 6 59 8 79Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim i, j As IntegerDim str1 As String = ""Dim p As Integer = 9For i = 1 To 5For j = 1 To 11 - 2 * istr1 &= Str(p)p = p - 1Nextstr1 &= vbCrLfp = 9NextTextBox1.Text = str1End Sub408、用循环编写程序,单击“生成图形”按钮,在多行文本框中输出如图所示的三角形,界面如下:1 2 3 4 5 6 7 8 91 2 3 4 5 6 71 2 3 4 51 2 31Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim i, j As IntegerDim str1 As String = ""Dim p As Integer = 1For i = 1 To 5str1 &= Space(2 * i)For j = 1 To 11 - 2 * istr1 &= Str(p)p = p + 1Nextstr1 &= vbCrLfp = 1NextTextBox1.Text = str1End Sub409、用循环编写程序,单击“生成图形”按钮,在多行文本框中输出如图所示的平行四边形:1 2 3 4 51 2 3 4 51 2 3 4 51 2 3 4 51 2 3 4 5Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim i, j As IntegerDim str1 As String = ""For i = 1 To 4str1 &= Space(2 * i)For j = 1 To 5str1 &= Str(j)Nextstr1 &= vbCrLfNextTextBox1.Text = str1End Sub411、用循环编写程序,单击“生成图形”按钮,在多行文本框中输出如图所示的三角形,界面如下:* * * * * * * * * * ** * * * * * * * ** * * * * * ** * * * ** * **Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim i, j As IntegerDim str1 As String = ""Dim p As String = "*"For i = 1 To 6str1 = str1 + Space(2 * i)For j = 1 To 13 - 2 * istr1 &= p + " "Nextstr1 &= vbCrLfNextTextBox1.Text = str1End Sub413、设计如图所示的生成图形界面,点击“生成图形”按钮,完成如下功能:为6×6的二维数组a(5,5)各个元素进行赋值,主对角线和副对角线元素均为1,其余元素都为0,结果显示在textbox1文本框中。
C语言(数组)习题与答案
一、单选题1、下列描述中不正确的是()A.字符串的结束符是'\0'。
B.可以对字符型数组进行整体输入、输出。
C.字符型数组中能存放字符串。
D.字符串函数声明在ctype.h中。
正确答案:D2、下面是有关C语言字符数组的描述,其中错误的是()A.不可以用赋值语句给字符数组名赋字符串B.可以用输入语句把字符串整体输入给字符数组C.字符数组只能存放字符串D.字符数组中的内容不一定是字符串正确答案:C3、下面是对数组s的初始化操作,其中不正确的是()A.char s[5]= " ";B.char s[5]={'a'};C.char s[5]={"a"};D.char s[5]= "abcdef";正确答案:D4、下面叙述正确的是()A.字符串"123 "与"123"相等。
B.字符串"123"小于字符串"2"。
C.两个字符串所包含的字符个数不相同时,才能进行大小比较。
D.字符个数多的字符串比字符个数少的字符串大。
正确答案:B5、下面程序段的输出结果是()char a[7]=“123456”;char b[4]=”ABC”;strcpy(a,b);printf(“%c”,a[5]);A.\0B.C.5D.6正确答案:D6、以下对二维数组a的正确说明是__。
A.double a[1][4];B.float a(3)(4);C. floatf a(3,4);D. int a[3][];正确答案:A7、以下能对二维数组a进行正确初始化的语句是__。
A. int a[][3]={{1,2,3},{4,5,6}};B.int a[2][]={{1,0,1},{5,2,3}};C.int a [2][4]={{1,2,3},{4,5},{6}};D. int a[][3={{1,0,1},{},{1,1}};正确答案:A8、若有说明: int a[3][4]={0};则下面正确的叙述是__。
C语言图形+数组答案
#include <stdio.h>void main(){ int i,j,k;for(i=0;i<=4;i++){ for(j=0;j<=10+i;j++) printf(" ");for(k=1;k<=9-2*i;k++) printf("%2c",'D'-i); printf("\n");}}数组图形题答案:1.#include "stdio.h" main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=10+i;j++)printf(" ");for(k=1;k<=7-2*i;k++)printf("%c",'D'-i);printf("\n");}}2.#include "stdio.h" main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=10+i;j++)printf(" ");for(k=1;k<=7-2*i;k++)printf("%d",4-i);printf("\n");}}3.#include "stdio.h" main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=10;j++)printf(" ");for(k=1;k<=7-2*i;k++)printf("%c",'m'+k-1);printf("\n");}}4.#include "stdio.h" main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=16-2*i;j++)printf(" ");for(k=1;k<=2*i+1;k++)printf("%2d",i+1);printf("\n");}}5.#include "stdio.h"main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=16-2*i;j++)printf(" ");for(k=1;k<=2*i+1;k++)printf("%2c",'A'+k-1);printf("\n");}}6.#include "stdio.h"main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=16-2*i;j++)printf(" ");for(k=1;k<=2*i+1;k++)printf("%2d",k);printf("\n");}}7.#include "stdio.h"main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=10+2*i;j++)printf(" ");for(k=1;k<=7-2*i;k++)printf("%2c",'a'+k-1);printf("\n");}}8.#include "stdio.h"main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=10+2*i;j++)printf(" ");for(k=1;k<=7-2*i;k++)printf("%2d",k);printf("\n");}}9.#include "stdio.h"main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=10;j++)printf(" ");for(k=1;k<=5-i;k++)printf("%2c",'a'+k-1);printf("\n");}}10.#include "stdio.h"main(){ int i,j,k;for(i=0;i<3;i++){ for(j=0;j<=10;j++)printf(" ");for(k=1;k<=4;k++)printf("%4d",4*i+k);printf("\n");}}11.#include "stdio.h"main(){ int i,j,k;for(i=0;i<3;i++){ for(j=0;j<=10;j++)printf(" ");for(k=1;k<=4;k++)printf("%-4d",4*i+k);printf("\n");}}12.#include "stdio.h"main(){ int i,j,k;for(i=0;i<5;i++){ for(j=0;j<=10-i;j++)printf(" ");for(k=1;k<=2*i+1;k++)printf("*");printf("\n");}for(i=3;i>=0;i--){ for(j=0;j<11-i;j++)printf(" ");for(k=1;k<=2*i+1;k++)printf("*");printf("\n");}}13.#include "stdio.h" main(){ int i,j,k;for(i=0;i<5;i++){ for(j=0;j<=10+i;j++)printf(" ");for(k=1;k<=10;k++)printf("*");printf("\n");}}14.#include "stdio.h"#include "math.h"void main(){double a[10][10]={0},s=0; int i,j;for(i=0;i<10;i++)for(j=0;j<10;j++)if(i==j) a[i][j]=i;for(i=0;i<10;i++)for(j=0;j<10;j++)s=s+pow(a[i][j],1.0/3); printf("\n%lf",s);}15. #include "stdio.h"#include "math.h"void main(){double a[6][6],s=1;int i,j,k=50;for(i=0;i<6;i++)for(j=0;j<6;j++){ a[i][j]=k;k++;}for(i=0;i<6;i++)for(j=0;j<6;j++)if(i<=j)s=s*pow(a[i][j],1.0/3);printf("\n%lf",s);}(3769867280899.742200)16.#include "stdio.h"#include "math.h"void main(){double a[6][6],s=1;int i,j,k=21;for(i=0;i<6;i++)for(j=0;j<6;j++){ a[i][j]=k;k++;}for(i=0;i<6;i++)for(j=0;j<6;j++)if(i>=j)s=s*pow(a[i][j],1.0/3);printf("\n%lf",s);}17.#include "stdio.h"void main(){inta[10]={1,2,3,4,5,6,7,8,9,10},i,j,t;for(i=1;i<=4;i++){ t=a[0];for(j=1;j<=9;j++)a[j-1]=a[j];a[9]=t;}for(j=0;j<=9;j++)printf("%2d",a[j]);}18.#include "stdio.h"#include "string.h"void main(){int a[26]={0},i=0;char b[100];printf("imput astring:\n");scanf("%s",b);while(b[i]!='\0'){ if('a'<=b[i]&&b[i]<='z')a[b[i]-'a']++;i++;}for(i=0;i<=25;i++)printf("%4d",a[i]);}20.#include "stdio.h"#include "string.h"#include "stdlib.h"void main(){int a[5][5],i,j;long s1=0,s2=0;printf("\n");for(i=0;i<5;i++)for(j=0;j<5;j++)a[i][j]=rand();for(i=0;i<5;i++){ for(j=0;j<5;j++)printf("%6d",a[i][j]);printf("\n");}for(i=0;i<5;i++)for(j=0;j<5;j++){if(i==j) s1+=a[i][j];if(i+j==4) s2+=a[i][j];}printf("%6ld,%6ld",s1,s2);}21.#include "stdio.h"#include "stdlib.h" void main(){int a[10][10],i,j,k=0; double b[10]={0}; printf("\n");for(i=0;i<10;i++)for(j=0;j<10;j++)a[i][j]=rand();for(i=0;i<10;i++){ for(j=0;j<10;j++) printf("%6d",a[i][j]); printf("\n");}for(i=0;i<10;i++){for(j=0;j<10;j++)b[i]+=a[j][k];k++;}for(i=0;i<10;i++) printf("%lf",b[i]/10); }22.#include "stdio.h"#include "stdlib.h" void main(){int a[6][6],i,j,h=0,max; double s=1.0;printf("\n");for(i=0;i<6;i++)for(j=0;j<6;j++)a[i][j]=rand();for(i=0;i<6;i++){ for(j=0;j<6;j++) printf("%7d",a[i][j]); printf("\n");}max=a[0][0];for(i=0;i<6;i++)for(j=0;j<6;j++)if(a[i][j]>max){ max=a[i][j];h=i;}for(i=0;i<6;i++)s=s*a[h][i];printf("%lf",s);}23.#include "stdio.h"#include "stdlib.h"void main(){int a[6][6],i,j,k=0;int b[6];printf("\n");for(i=0;i<6;i++)for(j=0;j<6;j++)a[i][j]=rand();for(i=0;i<6;i++){ for(j=0;j<6;j++)printf("%7d",a[i][j]);printf("\n");}for(i=0;i<6;i++){ b[i]=a[i][k];for(j=0;j<6;j++)if(a[i][j]>b[i])b[i]=a[i][j];k++;}for(i=0;i<6;i++)printf("%7d",b[i]);}24.#include "stdio.h"#include "math.h"void main(){inta[8]={87,97,96,45,23,65,78,50},b[8]={21,32,54,36,47,37,38,55};int c[8],i;double s=0;for(i=0;i<8;i++){c[i]=a[i]*b[i];s+=sqrt(1.0*c[i]);}printf("%lf",s);}25.#include "stdio.h"#include "math.h"void main(){inta[8]={1,2,3,4,5,6,7,8},b[8],i,t;for(i=0;i<4;i++){t=a[i];a[i]=a[7-i];a[7-i]=t;}printf("\n");for(i=0;i<8;i++)printf("%3d",a[i]);}26.#include "stdio.h"void main(){inta[8]={12,34,64,37,89,88,97,99},n,i,t;printf("imput n:");scanf("%d",&n);for(i=0;i<8;i++)if(a[i]==n) {t=i;break;}for(i=t;i<7;i++)a[i]=a[i+1];for(i=0;i<7;i++)printf("%6d",a[i]);}函数题答案:2#include "stdio.h"int ss(int n){ int i,s=0;for(i=1;i<n-1;i++)if(n%i==0) s=s+i;return s;}main(){ int n=1200,s;s=ss(n);if(s==n) printf("yes");elseprintf("no");}3.#include "stdio.h" long ss(int n,int m){ long i,s=0;for(i=n;i<=m;i++)if(i%2==1) s=s+i; return s;}main(){ int n=200,m=1000;printf("\n%ld",ss(n,m));}5#include "stdio.h" long ss(int n,int m){ int i;long s=0;for(i=n;i<=m;i++)if(i%2==0) s=s+i; return s;}main(){ int n=200,m=1000; printf("\n%ld",ss(n,m));}6#include "stdio.h" double ss(int n,int m) { int i;double s=0;for(i=n;i<=m;i++)if(i%2==0) s=s+1.0/i; return s;}main(){ int n=200,m=1000; printf("\n%lf",ss(n,m));}7#include "stdio.h"int ss(int n) { int flag=0;int gw,sw,bw,qw;gw=n%10;sw=(n%100)/10;bw=(n%1000)/100;qw=n/1000;if((gw+sw)==(bw+qw))flag=1;return flag;}main(){ int i,s=0;for(i=1000;i<=9999;i++)if(ss(i)) s++;printf("\n%d",s);}8#include "stdio.h"int ss(long n){ int flag=0;int gw,sw,ww,qw;gw=n%10;sw=(n%100)/10;ww=n/10000;qw=(n%10000)/1000;if((gw+sw)==(ww+qw))flag=1;return flag;}main(){ long i,s=0;for(i=10000;i<=99999;i++)if(ss(i)) s++;printf("\n%ld",s);}9#include "stdio.h"int ss(long n){ int flag=0;int gw,sw,ww,qw;gw=n%10;sw=(n%100)/10;ww=n/10000;qw=(n%10000)/1000;if(gw==ww&&sw==qw)flag=1;return flag;}main(){ long i,s=0;for(i=10000;i<=99999;i++)if(ss(i)) s++;printf("\n%ld",s);}10 int sh(int a[],int n){int i,t;for(i=0;i<=n/2;i++){ t=a[i];a[i]=a[n-i-1];a[n-i-i]=t;}return(a);}#include "stdlib.h"#include"time.h"main(){int a[8],i;for(i=0;i<8;i++)a[i]=rand();for(i=0;i<8;i++)printf("%8d",a[i]);printf("\n");ds(a,8);for(i=0;i<8;i++)printf("%8d",a[i]);}11 int ss(int n){int i,flag=1;for(i=2;i<n;i++)if(n%i==0){flag=0;break;}return(flag);}#include "stdio.h"main(){int i,count=0;for(i=100;i<=999;i++)if(ss(i)) count++;printf("\ncount=%d",coun t);}12int ss(int n){int i,flag=0;int gw,sw,bw,qw,zh;gw=n%10;sw=(n%100)/10;bw=(n%1000)/100;qw=n/1000;zh=gw+sw+bw+qw;if(zh%3==0&&zh%4==0) flag=1;return(flag);}#include "stdio.h"main(){int i,count=0;for(i=1000;i<=9999;i++)if(ss(i)) count++;printf("\ncount=%d",coun t);}13#include "math.h"double sz(int a[5][5]) {int i,j;double s=0;for(i=0;i<5;i++)for(j=0;j<5;j++)if(i+j<=4)s=s+sqrt(1.0*a[i][j]);return s;}#include "stdio.h"main(){inta[5][5]={23,45,56,73,34,34,7 4,85,54,764,56,98,56,89,67,9 8,54,83,12,59,98,87,74,48,62};double s;s=sz(a);printf("\n%lf",s);}14#include "math.h"double sz(int a[5][5]){int i,j;double s=0;for(i=0;i<5;i++)for(j=0;j<5;j++)if(i+j>=4)s=s+sqrt(1.0*a[i][j]);return s;}#include "stdio.h"main(){inta[5][5]={23,45,56,73,34,34,74,85,54,764,56,98,56,89,67,98,54,83,12,59,98,87,74,48,62};double s;s=sz(a);printf("\n%lf",s);}15#include "math.h"double sz(int a[5][5]){int i,j;double s=0;for(i=0;i<5;i++)for(j=0;j<5;j++)if(a[i][j]%2==0)s=s+sqrt(1.0*a[i][j]);return s;}#include "stdio.h"main(){inta[5][5]={23,45,56,73,34,34,74,85,54,764,56,98,56,89,67,98,54,83,12,59,98,87,74,48,62};double s;s=sz(a);printf("\n%lf",s);}16#include "math.h"double sz(int a[5][5]){int i,j;double s=0;for(i=0;i<5;i++)for(j=0;j<5;j++)if(a[i][j]%2==1)s=s+sqrt(1.0*a[i][j]);return s;}#include "stdio.h"main(){inta[5][5]={23,45,56,73,34,34,74,85,54,764,56,98,56,89,67,98,54,83,12,59,98,87,74,48,62};double s;s=sz(a);printf("\n%lf",s);}17#include "stdio.h"int sxh(int n){int gw,sw,bw,flag=0;gw=n%10;sw=(n%100)/10;bw=n/100;if((gw*gw*gw+sw*sw*sw+bw*bw*bw)==n)flag=1;return flag;}main(){int i,count=0;for(i=100;i<=999;i++)if(sxh(i)) count++;printf("\ncount=%d",coun t);}18b #include "stdio.h"long ss(long n,long a[]) {long j,i=0,t;while(n>0){a[i]=n%7;n=n/7;i++;}i--;for(j=0;j<(i+1)/2;j++) {t=a[j];a[j]=a[i-j];a[i-j]=t;} return(i+1);}main(){long i=563465,k,a[50]; k=ss(563465,a);printf("\n");for(i=0;i<k;i++)printf("%ld",a[i]);}19#include "stdio.h"long ss(long n,long a[]) {long j,i=0,t;while(n>0){a[i]=n%7;n=n/7;i++;}i--;for(j=0;j<(i+1)/2;j++) {t=a[j];a[j]=a[i-j];a[i-j]=t;} return(i+1);}main(){long i=563465,k,a[50]; k=ss(563465,a);printf("\n");for(i=0;i<k;i++) printf("%ld",a[i]);}20#include "stdio.h"int ss(double a[],int n){int gs=0,i;double aver=0;for(i=0;i<n;i++)aver=aver+a[i];aver=aver/n;for(i=0;i<n;i++)if(a[i]<aver) gs++;return gs;}main(){ doublea[9]={1253,5647,6849,5962,4567,2361,1247,5241,6124};int count;count=ss(a,9);printf("\n%d",count);}22#include "stdio.h"int ss(int n){intgw,sw,bw,qw,ww,a,b,flag=0;gw=n%10;sw=(n%100)/10;bw=(n%1000)/100;qw=(n%10000)/1000;ww=n/10000;a=gw+10*sw;b=qw+ww*10;if(a%7==0&&bw%7==0&&b%7==0)flag=1;return flag;}main(){int i; int count=0;for(i=10000;i<=30000;i++)if(ss(i)) count++;printf("\ncount=%d",count);}。
c语言第六章数组习题答案【可编辑】
第六章 数组习题答案2、0 43、0 64、&a[i] i%4==0 printf("\n");5、i+j==3_ a[i][j]6、127、a[i][j]+b[i][j] printf(“\n ”)8、按行存放9、( a[i]>a[j])10、将串str2复制到串str1中后再将串str3连接到串str1之后三、阅读题1、如右图所示2、AQM3、AzyD4、91985、如右图所示6、927、1,2,5,7,8、29、v1=5,v2=8,v3=6,v4=110、a*b*c*d*四、编程题1(1)选择法排序#include <stdio.h>void main( ){int i,j,n=10,p,a[10];int temp;for(i=0;i<n;i++) scanf("%d",&a[i]);//输入十个数printf("\n 原始的一维数组是:\n");for(i=0;i<n;i++) printf("%5d",a[i]); /* 输出原始的一维数组序列 */ for(i=0;i<n-1;i++){ p=i; /*假定第i 趟中最小数的位置是i*/for(j=i+1;j<n;j++)if(a[j]<a[p]) p=j;if(i!=p) {temp=a[i];a[i]=a[p];a[p]=temp;}}printf("\n排序后的一维数组:\n");for(i=0;i<n;i++) printf("%5d",a[i]); /* 输出排序后的一维数组序列*/}(2)比较法排序#include<stdio.h>void main( ){int i,j,n=10,p,a[10];int temp;for(i=0;i<n;i++) scanf("%d",&a[i]);//输入十个数printf("\n 原始的一维数组是:\n");for(i=0;i<n;i++) printf("%5d",a[i]); /* 输出原始的一维数组序列*/for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(a[i]>a[j]) {temp=a[i];a[i]=a[j];a[j]=temp;}printf("\n排序后的一维数组:\n");for(i=0;i<n;i++) printf("%5d",a[i]); /* 输出排序后的一维数组序列*/}2、以在十个数据(由小到大排列的十个数)中插入一个数为例#include <stdio.h>void main( ){int a[11],i,n=10,k; int point;printf("\n 请输入原始数据:\n");for(i=0;i<n;i++) scanf("%d",&a[i]); /*输入原始数据,输入的数据要从小到大*/ printf("\n 原始数据是:\n");for(i=0;i<n;i++) printf("%5d",a[i]); /* 输出原始的一维数组序列*/printf("\n请输入要插入的数");scanf("%d",&k); /*输入要插入的数据*/for(i=0;i<n;i++)if(a[i]>k) {point=i; break;}if(i!=n){for(i=n;i>point;i--) a[i]=a[i-1];a[point]=k;} /*从后向前方式*/elsea[n]=k;printf("插入后的数是:\n");for(i=0;i<n+1;i++) printf("%4d ",a[i]); /* 输出插入后的一维数组序列*/}3、#include <stdio.h>int main(){int i,j,upp,low,dig,spa,oth;char text[3][80];upp=low=dig=spa=oth=0;for (i=0;i<3;i++){ printf("please input line %d:\n",i+1);gets(text[i]);for (j=0;j<80 && text[i][j]!='\0';j++){if (text[i][j]>='A'&& text[i][j]<='Z')upp++;else if (text[i][j]>='a' && text[i][j]<='z')low++;else if (text[i][j]>='0' && text[i][j]<='9')dig++;else if (text[i][j]==' ')spa++;elseoth++;}}printf("\nupper case: %d\n",upp);printf("lower case: %d\n",low);printf("digit : %d\n",dig);printf("space : %d\n",spa);printf("other : %d\n",oth);return 0;}5、以5个数逆序存放为例,将n值修改,则可实现n个数逆序存放#include <stdio.h>#define n 5 //n为符号常量,值为5void main( ){int i,a[n],t;for(i=0;i<n;i++)scanf("%d",&a[i]);//输入n个数for(i=0;i<n/2;i++)//将a[0]与a[4]交换,a[1]与a[3]交换,a[i]与a[n-1-i]交换{t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;}for(i=0;i<n;i++)//输出n个数printf("%5d",a[i]);printf("\n");}6、杨辉三角#include <stdio.h>void main( ){int i,j,a[10][10];for(i=0;i<10;i++)for(j=0;j<=i;j++)if(j==0||i==j)a[i][j]=1;else a[i][j]=a[i-1][j]+a[i-1][j-1];for(i=0;i<10;i++){for(j=0;j<=i;j++)printf("%5d",a[i][j]);printf("\n");}}7、提高题:编写程序:#include <stdio.h>#include <string.h>void main (){char s1[80]={0},s2[80]={0};char a;int i,j,k;printf("请输入一段字符s1\n");gets(s1);printf("======================(1)============================\n"); for(i=0;s1[i];i++);printf("%s的长度:%d\n",s1,i);printf("======================(2)============================\n"); for(j=0;s1[j];j++){s2[j]=s1[j];}printf("将一个字符串S1的内容复制给另一个字符串S2:\n");puts(s2);printf("i:%d\n",i);printf("======================(3)============================\n"); for(k=0;k<=j;k++){s1[i]=s2[k];i++;}printf("将两个字符串S1和S2连接起来,结果保存在S1字符串中:\n"); puts(s1);printf("======================(4)============================\n"); printf("请输入要寻找的字母:");scanf("%c",&a);for(i=0;s1[i];i++){if(s1[i]==a)break;}if(!s1[i])printf("\n-1\n");else printf("\n%c在第%d个位置\n",a,i+1);8、与第5题同9、Fibonacci数列前20项数值#include <stdio.h>int main( ){int i; long f[20];f[0]=1;f[1]=1;for(i=2;i<20;i++)f[i]=f[i-1]+f[i-2];for(i=0;i<20;i++){if(i%5==0) printf("\n");//每行五个元素printf("%10ld",f[i]);}}10、输入10个元素,统计奇数的个数#include <stdio.h>void main( ){int i,num[10],count=0;for(i=0;i<10;i++){printf("请输入第%d个数: ",i+1); /*给予输入提示*/scanf("%d",&num[i]);if(num[i]%2!=0) count++;}printf("奇数个数是:%d\n",count );}11、下面程序的功能是从键盘输入一行字符,统计其中有多少单词。
C语言图形+数组
1 2 3 4 5
1 2 3
1
9.编写程序,使用双重循环输出下列三角形(不能使用两维数组)。
19. 编写程序,建立一个有10个元素组成的一维数组(该数组已存放9个数据,数据自定,并已按降序排列),要求从键盘输入一个数据,并将其插入到数组适当位置,即插入后的数组仍按降序排列,最后将结果输出(要求用指针实现)。
20.编写程序,建立一个5×5的二维整型数组(数据由随机函数产生),分别计算两条对角线上的元素之和s1和s2。
结果:42610953771.152
17. 编写程序,实现一维数组A[10]元素值循环左移4位(要求用指针实现)。
例数组的原值:1 2 3 4 5 6 7 8 9 10 Байду номын сангаас
结果为:5 6 7 8 9 10 1 2 3 4
18. 编写程序,从键盘读入一个字符串(该串在输入时以回车键结束这,均为小写字母),求每个字母出现的次数。
1 2 3 4 5
1 2 3 4 5 6 7
7.编写程序,使用双重循环输出下列三角形: (不能使用两维数组)。
a b c d e f g
a b c d e
a b c d
a b c
a b
a
10.编写程序,用双重循环和表达式输出下面图形。(不能使用两维数组)。
1 2 3 4
5 6 7 8
4 4 4 4 4 4 4
5.编写程序,使用重双循环输出下列三角形: (不能使用两维数组)。
A
A B C
25. 编写程序,把一个数组倒序,并输出倒序前、后的数据(要求用指针实现)。
例:倒序前的数:1 2 3 4 5 6 7 8
C语言(数组)习题与答案
一、单选题1、下列描述中不正确的是()A.字符串的结束符是B.可以对字符型数组进行整体输入、输出。
C.字符型数组中能存放字符串。
D.字符串函数声明在ctype.h中。
正确答案:D2、下面是有关C语言字符数组的描述,其中错误的是()A.不可以用赋值语句给字符数组名赋字符串B.可以用输入语句把字符串整体输入给字符数组C.字符数组只能存放字符串D.字符数组中的内容不一定是字符串正确答案:C3、下面是对数组s的初始化操作,其中不正确的是()A.char s[5]="B.char s[5]={'a'};C.char s[5]={"a"};D.char s[5]= "abcdef";正确答案:D4、下面叙述正确的是()A.字符串“123 “与“123”相等。
B.字符串“123”小于字符串C.两个字符串所包含的字符个数不相同时,才能进行大小比较。
正确答案:BD.字符个数多的字符串比字符个数少的字符串大。
5、下面程序段的输出结果是()char a[7]=''123456w;char b[4]=〃ABC〃;strcpy(a z b);printfC'%c w z a[5]);A.\0B.C.5D.6正确答案:D6、以下对二维数组a的正确说明是一。
A.double a[l][4];B.float a(3)(4);C.floatf a(3,4);D.int a[3][];正确答案:A7、以下能对二维数组a进行正确初始化的语句是A. Int a[][3]={{l/2,3},(4,576}};B.int a⑵口={{1,0,1},{5,2,3}};C.int a ⑵[4]={{1,2,3},{4,5},{6}};D. int a[][3={{l/0/l},{},{l,l});正确答案:A8、若有说明:int a[3][4]={0};则下面正确的叙述是A.数组a中各元素都可得到初值,但其值不一定为0。
2021年C语言考试数组知识习题库及答案(精品)
2021年C语言考试数组知识习题库及答案(精品)1. 单项选择题(1) int a[4]={5,3,8,9};其中a[3]的值为( )。
DA. 5B. 3C. 8D. 9(2) 以下4 个字符串函数中,( )所在的头文件与其他3 个不同。
AA. getsB. strcpyC. strlenD. strcmp(3) 以下4 个数组定义中,( )是错误的。
DA. int a[7];B. #define N 5 long b[N];C. char c[5];D. int n,d[n];(4) 对字符数组进行初始化,( )形式是错误。
BA. char c1[ ]={'1', '2', '3'};B. char c2[ ]=123;C. charc3[ ]={ '1', '2', '3', '\0'}; D. char c4[ ]="123";(5) 在数组中,数组名表示( )。
AA. 数组第1 个元素的首地址B.数组第2 个元素的首地址C. 数组所有元素的首地址D.数组最后1 个元素的首地址(6) 若有以下数组说明,则数值最小的和最大的元素下标分别是( )。
Bint a[12] ={1,2,3,4,5,6,7,8,9,10,11,12};A. 1,12B. 0,11C. 1,11D. 0,12(7) 若有以下说明,则数值为4 的表达式是( )。
Dint a[12] ={1,2,3,4,5,6,7,8,9,10,11,12}; char c=’a’, d, g ;A. a[g-c]B. a[4]C. a['d'-'c']D. a['d'-c](8) 设有定义:char s[12] = "string" ; 则printf( "%d\n",strlen(s)); 的输出是( )。
c语言数组有答案.doc
一、选择题1.以下对一维整型数组a的正确说明是___________ 。
A. int a(10);B. int n=0, a[n];C. intn; D・ #define SIZE 10scanf(“%cf',&n); int a[SIZE]int a[n];2.若有说明:int a[10];,则对a数组元素的正确引用是_____________ 。
A. a[10] B・ a[3.5] C. a(5) D・ a[10-10]3.以下能对一维数组a进行正确初始化的语句形式是____________ 。
A. int a[ 10]二(0,0, 0,0,0);B. int a[10]={ };C・ double a[][4]; D. int a[10]={ 10*1};4.以下对二维数组a的正确说明是_____________ 。
A. int a[3][];B. float a(3,4);C. double a[][4];D. float a(3)(4);5.若有说明:int a[3][4];则对a数组元素的正确引用是____________ 。
A. a[3][4]B. a[l,3]C. a[l + l][0]D. a(2)(l)6.以下能对二维数组a进行正确初始化的语句是_____________ 。
A. inta[2][]={{l,0, 1},{5,2,3}};B・ inta[][3]={{ 1,2,3)44,5,6}};C・ inta[2][4]={{l,2,3},{4,5},{6}};D・ inta[][3]={{l,0,l,0},{ },{1,1}};7.下而程序段______________ (每行代码前而的数字表示行号)。
1inta[3]={3*0};2int i3for(i=0; i<3; i++) scanf(“%d",&a[i]);4for(i=l; i<3; i++) a[0]=a⑹+a[i];5printf(“%d\n”,a[0]);A.第1行有错误B.第5行有错误C.第3行有错误D.没有错误8.若有定义float x[4]={ 1.3, 2.4, 5.6}, y=6;则错误的语句是_____________ 。
c语言数组考试题及答案
c语言数组考试题及答案一、选择题1. 在C语言中,数组的下标从哪个数字开始?A. 0B. 1C. 2D. 3答案:A2. 下列哪个选项是正确的数组声明?A. int arr[] = {1, 2, 3};B. int arr[5] = {1, 2, 3};C. int arr[5] = {1, 2};D. int arr[] = {1, 2, 3, 4, 5};答案:B3. 若有数组声明 int arr[5] = {1, 2, 3, 4, 5}; 则arr[2]的值是多少?A. 1B. 2C. 3D. 4答案:C二、填空题1. 假设有一个数组声明为 int arr[10] = {0}; 则arr[0]的值是______。
答案:02. 如果声明了一个数组 int arr[5] = {1, 2, 3, 4, 5}; 那么arr 数组的元素个数是______。
答案:5三、简答题1. 请简述C语言中数组的初始化方式有哪些?答案:C语言中数组的初始化方式包括:- 静态初始化:在声明数组时直接指定数组的元素值。
- 动态初始化:在声明数组后,通过循环或逐个赋值的方式初始化数组。
2. 在C语言中,如何访问数组的最后一个元素?答案:可以通过数组的长度减去1来访问数组的最后一个元素,例如对于数组arr,访问最后一个元素的方式是arr[arr.length - 1]。
四、编程题1. 编写一个C语言程序,实现将一个整数数组按照从大到小的顺序排序。
答案:```c#include <stdio.h>void sortDescending(int arr[], int n) {for (int i = 0; i < n - 1; i++) {for (int j = 0; j < n - i - 1; j++) {if (arr[j] < arr[j + 1]) {int temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;}}}}int main() {int arr[] = {4, 2, 3, 1, 5};int n = sizeof(arr) / sizeof(arr[0]);sortDescending(arr, n);for (int i = 0; i < n; i++) {printf("%d ", arr[i]);}return 0;}```该程序首先定义了一个排序函数sortDescending,它使用冒泡排序算法将数组从大到小排序。
C语言编程数组应用实例面试问题答案
C语言编程数组应用实例面试问题答案在面试过程中,C语言的数组应用是常见的考点之一。
以下是一些常见C语言编程数组应用实例面试问题以及详细的答案解析。
问题一:什么是数组?回答:数组是一种可以容纳固定数量元素的数据结构。
在C语言中,数组是由相同数据类型的元素组成的有序集合。
数组中的每个元素可以通过索引值访问,索引从0开始递增。
问题二:如何声明和初始化数组?回答:声明数组的语法为:类型名称[大小];例如,int numbers[5];数组的初始化可以是静态的或动态的。
静态初始化可以在声明数组时同时为每个元素指定初始值,如:int numbers[5] = {1, 2, 3, 4, 5};动态初始化可以在程序执行期间使用循环或其他方式为每个元素赋值。
问题三:如何访问数组元素?回答:数组元素可以通过索引值来访问,索引从0开始。
例如,要访问数组numbers中的第一个元素,可以使用numbers[0]。
问题四:如何计算数组的长度?回答:C语言中的数组没有内置的长度属性。
可以通过sizeof运算符来计算数组的长度,例如:sizeof(numbers) / sizeof(numbers[0])。
问题五:数组和指针之间有什么关系?回答:数组名可以看作是数组第一个元素的地址。
因此,可以使用指针来访问和操作数组。
例如,int* ptr = numbers; 表示ptr指向数组numbers的第一个元素。
问题六:如何在函数中传递数组?回答:可以通过指针来传递数组给函数。
函数参数中的数组形式参数实际上是指针,可以使用指针来操作传递进来的数组。
例如,void myFunction(int* arr)。
问题七:如何在动态内存中创建数组?回答:可以使用malloc函数在堆上动态分配内存来创建数组。
例如,int* arr = (int*)malloc(5 * sizeof(int));问题八:如何在多维数组中访问元素?回答:多维数组是一个数组的数组。
c语言数组有答案
C语言数组有答案本页仅作为文档封面,使用时可以删除This document is for reference only-rar21year.March一、选择题1. 以下对一维整型数组a的正确说明是。
A.int a(10); B.int n=0, a[n];C.int n;scanf(“%d”,&n); int a[n];D.#define SIZE 10 int a[SIZE]2. 若有说明:int a[10]; ,则对a数组元素的正确引用是。
A.a[10] B.a[] C.a(5) D.a[10-10]3. 以下能对一维数组a进行正确初始化的语句形式是。
A.int a[10]=(0, 0, 0, 0, 0); B.int a[10]={ };C.double a[ ][4]; D.int a[10]={10*1};4. 以下对二维数组a的正确说明是。
A.int a[3][ ]; B.float a(3,4); C.double a[ ][4]; D.float a(3)(4);5. 若有说明:int a[3][4]; 则对a数组元素的正确引用是。
A.a[3][4] B.a[1, 3] C.a[1+1][0] D.a(2)(1)6. 以下能对二维数组a进行正确初始化的语句是。
A.int a[2][ ]={{1, 0, 1}, {5, 2, 3}};B.int a[ ][3]={{1,2,3},{4,5,6}};C.int a[2][4]={{1,2,3},{4,5},{6}};D.int a[ ][3]={{1,0,1,0},{ },{1,1}};7. 下面程序段(每行代码前面的数字表示行号)。
1 int a[3]={3*0};2 int i3 for(i=0; i<3; i++) scanf(“%d”,&a[i]);4 for(i=1; i<3; i++) a[0]=a[0]+a[i];5 printf(“%d\n”,a[0]);A.第1行有错误 B.第5行有错误 C.第3行有错误 D.没有错误8. 若有定义float x[4]={, , },y=6; 则错误的语句是。
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>void main(){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语言练习3(数组)参考答案
C语⾔练习3(数组)参考答案C语⾔(数组)⼀、选择题1. 设有程序:main(){ int i,a[11];printf("给数组赋值:\n");for (i=0;i<=10;i++)scanf("%d",( ));... ...printf("输出数组:\n");for(i=0;i<=10;i++)printf("%d,",( ));}则在程序中的两个园括号中分别应填⼊:CA) &a[i]和&a[i]B) a[i]和&a[i]C) &a[i]和a[i]D) a[i]和a[i]2. 设已定义:int a[15]; 则数组a占⽤的内存单元数是( C ).A) 15 B) 16 C) 30 D) 323. 阅读程序:main(){ int a[2]={0},i,j,k=2;for(i=0;ifor(j=0;jprintf("%d\n",a[k]);}以上程序的输出结果是( D ).A) 1 B) 3 C) 2 D) 不确定的值4. 阅读程序:f(int b[],int n){ int i,r=1;for(i=0;i<=n;i++) r=r*b[i];return r;}main(){ int x,a[]={2,3,4,5,6,7,8,9};x=f(a,3);printf("%d\n",x);}以上程序的输出结果是( D ).A) 720 B) 6 C)24 D) 1205. 以下定义语句中,错误的是( B ).A) int a[ ] = {6,7,8};B) int n=5, a[n];C) char a[ ]= "string";D) char a[5 ]={'0','1','2','3','4'};6. 以下描述中正确的是( D ).A) 数组名后⾯的常量表达式⽤⼀对圆括弧括起来B) 数组下标从1开始C) 数组下标的数据类型可以是整型或实型D) 数组名的规定与变量名相同7. 若定义数组并初始化char a[10]={'0','1 ','2','3','4','5','6','7','8','9'};指出以下错误语句( AB ).A) scanf("%c",a[0]);B) scanf("%s",&a);C) printf("%c",a[3]);D) printf("%s",a);8.若定义数组int a[10] ,其最后⼀个数组元素为( C ).A) a[0]B) a[1]C) a[9]D) a[10]9. 若定义数组并初始化int a[10]={ 1,2,3,4},以下语句哪⼀个不成⽴( B )?A) a[8] 的值为0B) a[1] 的值为1C) a[3] 的值为4D) a[9] 的值为010. 指出以下错误语句( A ).A) int n=10,a[n];B) int n,a[10];C) int a[10]={1,2,3};D) int a[10]={1,2,3,4,5,6,7,8,9,10};11. 请读程序:main(){int n[2],i,j,k;for(i=0;i<2;i++) n[i]=0;k=2;for(i=0;ifor(j=0;jprintf("%d\n",n[k]);}上⾯程序的输出结果是( A ).A)不确定的值 B)3 C)2 D)112. 若有以下的定义和语句:int str[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='e',则数值为2的表达式是( C ).A)str['g'-c] B)str[2] C)str['d'-'c'] D)str['d'-c]13. 设有数组定义:int a[5];则下列给数组元素赋值错误的是( B ).A) a[3]=93;B) scanf("%c",a[3]);C) a[3]=getchar();D) a[3]='a'+3;14. 以下数组定义中错误的是( D ).A) #define N 30int a[N+30];B) #define N 30int a[N];C) int a[30];D) int a[N];15. 在定义⼀个⼀维数组时,不能⽤来表⽰数组长度的是( D ).A)常量 B)符号常量 C)常量表达式 D) 已被赋值的变量16. 若float型变量占⽤4个字节,有定义float a[20]={,,};则数组a在内存中所占的字节数是( D ).A)12 B)20 C)40 D)8017. 设已定义:int x[2][4]={1,2,3,4,5,6,7,8}; 则元素x[1][1]的正确初值是( A ).A) 6 B) 5 C) 7 D) 118. 设有定义:int a[][3]={{1,2,3},{4,5,6},{7,8,9}}; 则a[1][2]的初值为( C ).A) 2 B) 4 C) 6 D) 819. 设有:int a[4][5]; 则数组a占⽤的内存字节数是( C ).A) 12 B) 24 C) 40 D) 2020. 以下数组定义中,不正确的是( B ).A) int b[3][4];B) int c[3][ ]={{1,2},{1,2,3},{4,5,6,7}};C) int b[200][100]={0};D) int c[ ][3]={{1,2,3},{4,5,6}};21. 定义数组:int x[2][3]; 则数组x 的维数是( 2 ).A) 1 B) 2 C) 3 D) 622. 若定义数组并初始化int b[2][3]= { 1,2,3,4,5,6},以下语句哪⼀个成⽴( C )?A) 表达式b[1][2]的值为1B) 表达式b[1][2]的值为4C) 表达式b[1][2]的值为6D) 表达式b[1][2]的值为223. 若定义数组并初始化int a[2][3]={{1,2,3},{4,5,6}};for(i=0;i<2;i++)for(j=0;j<3;j++)printf("%d",a[i][j]);语句的结果是哪⼀个( C )?A) 1,2,3,4,5,6B) 1 2 3 4 5 6C) 12345624. 若定义数组并初始化int a[2][3]= {{1,2, 3},{4,5,6}};以下语句哪⼀个不成⽴( B )?A) a数组中有6个元素B) a[2][3]是a数组的最后⼀个元素的引⽤C) a数组中每个元素都为整数D) a数组是整型数组25. 定义如下变量和数组:int i;int x[3][3]={1,2,3,4,5,6,7,8,9};则下⾯语句的输出结果是( C ).for(i=0;i<3;i++) printf("%d",x[i][2-i]);A) 1 5 9 B) 1 4 7 C) 3 5 7 D) 3 6 926. 如有以下定义:double s[][5]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14};则数值为2的元素是( C ).A) s[1][3] B) s[0][3] C) s[0][2] D) s[1][2]27. 以下程序的输出结果是( A ).main(){int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;for(i=1;i<3;i++)for(j=0;j<=i;j++)s+=a[i][j];printf("%d",s);}A) 18 B) 19 C) 20 D) 2128. 若已有char b[10][50];则该⼆维字符数组在内存所占字节数为( D ).A) 10 B)50 C)60 D)50029. 设有:char a[10]; 下列语句那个是正确的( D )?A) scanf("%s",a[0]);B) scanf("%s",&a);C) printf("%s",a[0])D) printf("%s",a)30. 阅读程序:main(){ char a[10];int i;for(i=1;i<=5;i++)scanf("%c",&a[i]);printf("%c",a[0]);}设从键盘输⼊字符串:abcde,则程序的输出结果是( C ).A) a B)空格 C)不确定D)031. 合法的数组定义是( D ).A) int a[ ] = "string";B) int a[5]={0,1,2,3,4,5};C) char a= "string";D) char a[ ]={'0','1','2','3'};32. 设有数组定义:char string[ ]="China";则数组string所占的空间为( B ).A) 5个字节B) 6个字节C) 7个字节D) 10个字节33. 定义字符数组c:char c[ ]={"c language"};数组c在内存中所占字节数是( C ).A) 9 B) 10 C) 11 D) 1234. 指出以下错误语句( C ).A) char a[10]={'0','1','2','3','4','5','6','7','8','9'};B) char a[10]={'0','1 ','2','3'};C) char a[2]= {"1","2"};D) char a[2]= {'a’,'b’};35. 若定义数组并初始化char a[10]={"hello"},该数组的元素个数是( A ).A) 10B) 5C) 6D) 736. 若定义数组并初始化char a[10]={"HELLO"},该数组的元素中 a[2]是( A ).A) 'L'B) 'E'C) 'H'D) 'O'37. 若定义数组并初始化int b[10]={ 1,2,3,4},以下哪⼏个语句成⽴( A C D)?A)b[8]的值为0B)b[1]的值为1C)b[3]的值为整数D)b[10]不是b数组中的元素38. 若定义数组int a[10];指出下列错误语句:ABCDA) a数组共有10个元素,其引⽤⽅法是:a[1],a[2]...a[10];B) a数组是整型数组,其元素⾃动初始化为0;C) a数组最后⼀个元素的引⽤⽅法是a[10];D) a数组第⼀个元素的引⽤⽅法是a[1];⼆、判断题1.数组是数⽬固定的若⼲变量的有序集合,数组中各元素的类型可以不同。
C语言数组练习及答案
第四部分数组4.1 选择题1. 以下关于数组的描述正确的是(c )。
A. 数组的大小是固定的,但可以有不同的类型的数组元素B. 数组的大小是可变的,但所有数组元素的类型必须相同C. 数组的大小是固定的,所有数组元素的类型必须相同D. 数组的大小是可变的,可以有不同的类型的数组元素2. 以下对一维整型数组a的正确说明是(d )。
A.int a(10);B. int n=10,a[n];C.int n;D. #define SIZE 10scanf("%d",&n); int a[SIZE];int a[n];3. 在C语言中,引用数组元素时,其数组下标的数据类型允许是(c )。
A. 整型常量B. 整型表达式C. 整型常量或整型表达式D. 任何类型的表达式4. 以下对一维数组m进行正确初始化的是(c )。
A. int m[10]=(0,0,0,0) ;B. int m[10]={ };C. int m[ ]={0};D. int m[10]={10*2};5. 若有定义:int bb[ 8];。
则以下表达式中不能代表数组元bb[1]的地址的是(c )。
A. &bb[0]+1B. &bb[1]C. &bb[0]++D. bb+16. 假定int类型变量占用两个字节,其有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是(d )。
A. 3B. 6C. 10D. 207. 若有以下说明:int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='a',d,g;则数值为4的表达式是(d )A. a[g-c]B. a[4]C. a['d'-'c']D. a['d'-c]8. 以下程序段给数组所有的元素输入数据,请选择正确答案填入(a )。
#include<stdio.h>main(){int a[10],i=0;while(i<10) scanf("%d",________ );┇}A. a+(i++)B. &a[i+1]C. a+iD. &a[++i]9. 执行下面的程序段后,变量k中的值为(a )。
c语言数组考试题及答案
c语言数组考试题及答案C语言数组考试题及答案一、选择题1. 以下哪个选项是正确的数组声明方式?A. int a[5] = {1, 2, 3, 4, 5};B. int a = [5] = {1, 2, 3, 4, 5};C. int a[5] = {1, 2, 3};D. int a = {1, 2, 3, 4, 5};答案:A2. 对于数组int a[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; 以下哪个表达式是合法的?A. a[10]B. a[-1]C. a[3.5]答案:D3. 假设有数组int a[5] = {1, 2, 3, 4, 5}; 以下哪个表达式可以得到数组a的元素个数?A. sizeof(a) / sizeof(int)B. sizeof(a) / sizeof(char)C. sizeof(a) / sizeof(float)D. sizeof(a) / sizeof(double)答案:A4. 以下哪个选项是正确的二维数组声明方式?A. int a[3][2] = {{1, 2}, {3, 4}, {5, 6}};B. int a[3][2] = {1, 2, 3, 4, 5, 6};C. int a[3][2] = {{1, 2}, {3, 4, 5}, {6, 7}};D. int a[3][2] = {1, 2, 3, 4, 5, 6, 7, 8};5. 对于二维数组int a[3][2] = {{1, 2}, {3, 4}, {5, 6}}; 以下哪个表达式可以得到元素a[1][1]的值?A. a[1][1]B. a[1] + 1C. *(a[1] + 1)D. a[1] * 1答案:A二、填空题1. 假设有数组int a[5] = {10, 20, 30, 40, 50}; 则a[0]的值是______。
答案:102. 对于数组int a[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; 则a[9]的值是______。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#include <stdio.h>void main(){ int i,j,k;for(i=0;i<=4;i++){ for(j=0;j<=10+i;j++) printf(" ");for(k=1;k<=9-2*i;k++) printf("%2c",'D'-i); printf("\n");}}数组图形题答案:1.#include "stdio.h" main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=10+i;j++)printf(" ");for(k=1;k<=7-2*i;k++)printf("%c",'D'-i);printf("\n");}}2.#include "stdio.h" main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=10+i;j++)printf(" ");for(k=1;k<=7-2*i;k++)printf("%d",4-i);printf("\n");}}3.#include "stdio.h" main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=10;j++)printf(" ");for(k=1;k<=7-2*i;k++)printf("%c",'m'+k-1);printf("\n");}}4.#include "stdio.h" main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=16-2*i;j++)printf(" ");for(k=1;k<=2*i+1;k++)printf("%2d",i+1);printf("\n");}}5.#include "stdio.h"main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=16-2*i;j++)printf(" ");for(k=1;k<=2*i+1;k++)printf("%2c",'A'+k-1);printf("\n");}}6.#include "stdio.h"main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=16-2*i;j++)printf(" ");for(k=1;k<=2*i+1;k++)printf("%2d",k);printf("\n");}}7.#include "stdio.h"main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=10+2*i;j++)printf(" ");for(k=1;k<=7-2*i;k++)printf("%2c",'a'+k-1);printf("\n");}}8.#include "stdio.h"main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=10+2*i;j++)printf(" ");for(k=1;k<=7-2*i;k++)printf("%2d",k);printf("\n");}}9.#include "stdio.h"main(){ int i,j,k;for(i=0;i<4;i++){ for(j=0;j<=10;j++)printf(" ");for(k=1;k<=5-i;k++)printf("%2c",'a'+k-1);printf("\n");}}10.#include "stdio.h"main(){ int i,j,k;for(i=0;i<3;i++){ for(j=0;j<=10;j++)printf(" ");for(k=1;k<=4;k++)printf("%4d",4*i+k);printf("\n");}}11.#include "stdio.h"main(){ int i,j,k;for(i=0;i<3;i++){ for(j=0;j<=10;j++)printf(" ");for(k=1;k<=4;k++)printf("%-4d",4*i+k);printf("\n");}}12.#include "stdio.h"main(){ int i,j,k;for(i=0;i<5;i++){ for(j=0;j<=10-i;j++)printf(" ");for(k=1;k<=2*i+1;k++)printf("*");printf("\n");}for(i=3;i>=0;i--){ for(j=0;j<11-i;j++)printf(" ");for(k=1;k<=2*i+1;k++)printf("*");printf("\n");}}13.#include "stdio.h" main(){ int i,j,k;for(i=0;i<5;i++){ for(j=0;j<=10+i;j++)printf(" ");for(k=1;k<=10;k++)printf("*");printf("\n");}}14.#include "stdio.h"#include "math.h"void main(){double a[10][10]={0},s=0; int i,j;for(i=0;i<10;i++)for(j=0;j<10;j++)if(i==j) a[i][j]=i;for(i=0;i<10;i++)for(j=0;j<10;j++)s=s+pow(a[i][j],1.0/3); printf("\n%lf",s);}15. #include "stdio.h"#include "math.h"void main(){double a[6][6],s=1;int i,j,k=50;for(i=0;i<6;i++)for(j=0;j<6;j++){ a[i][j]=k;k++;}for(i=0;i<6;i++)for(j=0;j<6;j++)if(i<=j)s=s*pow(a[i][j],1.0/3);printf("\n%lf",s);}(3769867280899.742200)16.#include "stdio.h"#include "math.h"void main(){double a[6][6],s=1;int i,j,k=21;for(i=0;i<6;i++)for(j=0;j<6;j++){ a[i][j]=k;k++;}for(i=0;i<6;i++)for(j=0;j<6;j++)if(i>=j)s=s*pow(a[i][j],1.0/3);printf("\n%lf",s);}17.#include "stdio.h"void main(){inta[10]={1,2,3,4,5,6,7,8,9,10},i,j,t;for(i=1;i<=4;i++){ t=a[0];for(j=1;j<=9;j++)a[j-1]=a[j];a[9]=t;}for(j=0;j<=9;j++)printf("%2d",a[j]);}18.#include "stdio.h"#include "string.h"void main(){int a[26]={0},i=0;char b[100];printf("imput astring:\n");scanf("%s",b);while(b[i]!='\0'){ if('a'<=b[i]&&b[i]<='z')a[b[i]-'a']++;i++;}for(i=0;i<=25;i++)printf("%4d",a[i]);}20.#include "stdio.h"#include "string.h"#include "stdlib.h"void main(){int a[5][5],i,j;long s1=0,s2=0;printf("\n");for(i=0;i<5;i++)for(j=0;j<5;j++)a[i][j]=rand();for(i=0;i<5;i++){ for(j=0;j<5;j++)printf("%6d",a[i][j]);printf("\n");}for(i=0;i<5;i++)for(j=0;j<5;j++){if(i==j) s1+=a[i][j];if(i+j==4) s2+=a[i][j];}printf("%6ld,%6ld",s1,s2);}21.#include "stdio.h"#include "stdlib.h" void main(){int a[10][10],i,j,k=0; double b[10]={0}; printf("\n");for(i=0;i<10;i++)for(j=0;j<10;j++)a[i][j]=rand();for(i=0;i<10;i++){ for(j=0;j<10;j++) printf("%6d",a[i][j]); printf("\n");}for(i=0;i<10;i++){for(j=0;j<10;j++)b[i]+=a[j][k];k++;}for(i=0;i<10;i++) printf("%lf",b[i]/10); }22.#include "stdio.h"#include "stdlib.h" void main(){int a[6][6],i,j,h=0,max; double s=1.0;printf("\n");for(i=0;i<6;i++)for(j=0;j<6;j++)a[i][j]=rand();for(i=0;i<6;i++){ for(j=0;j<6;j++) printf("%7d",a[i][j]); printf("\n");}max=a[0][0];for(i=0;i<6;i++)for(j=0;j<6;j++)if(a[i][j]>max){ max=a[i][j];h=i;}for(i=0;i<6;i++)s=s*a[h][i];printf("%lf",s);}23.#include "stdio.h"#include "stdlib.h"void main(){int a[6][6],i,j,k=0;int b[6];printf("\n");for(i=0;i<6;i++)for(j=0;j<6;j++)a[i][j]=rand();for(i=0;i<6;i++){ for(j=0;j<6;j++)printf("%7d",a[i][j]);printf("\n");}for(i=0;i<6;i++){ b[i]=a[i][k];for(j=0;j<6;j++)if(a[i][j]>b[i])b[i]=a[i][j];k++;}for(i=0;i<6;i++)printf("%7d",b[i]);}24.#include "stdio.h"#include "math.h"void main(){inta[8]={87,97,96,45,23,65,78,50},b[8]={21,32,54,36,47,37,38,55};int c[8],i;double s=0;for(i=0;i<8;i++){c[i]=a[i]*b[i];s+=sqrt(1.0*c[i]);}printf("%lf",s);}25.#include "stdio.h"#include "math.h"void main(){inta[8]={1,2,3,4,5,6,7,8},b[8],i,t;for(i=0;i<4;i++){t=a[i];a[i]=a[7-i];a[7-i]=t;}printf("\n");for(i=0;i<8;i++)printf("%3d",a[i]);}26.#include "stdio.h"void main(){inta[8]={12,34,64,37,89,88,97,99},n,i,t;printf("imput n:");scanf("%d",&n);for(i=0;i<8;i++)if(a[i]==n) {t=i;break;}for(i=t;i<7;i++)a[i]=a[i+1];for(i=0;i<7;i++)printf("%6d",a[i]);}函数题答案:2#include "stdio.h"int ss(int n){ int i,s=0;for(i=1;i<n-1;i++)if(n%i==0) s=s+i;return s;}main(){ int n=1200,s;s=ss(n);if(s==n) printf("yes");elseprintf("no");}3.#include "stdio.h" long ss(int n,int m){ long i,s=0;for(i=n;i<=m;i++)if(i%2==1) s=s+i; return s;}main(){ int n=200,m=1000;printf("\n%ld",ss(n,m));}5#include "stdio.h" long ss(int n,int m){ int i;long s=0;for(i=n;i<=m;i++)if(i%2==0) s=s+i; return s;}main(){ int n=200,m=1000; printf("\n%ld",ss(n,m));}6#include "stdio.h" double ss(int n,int m) { int i;double s=0;for(i=n;i<=m;i++)if(i%2==0) s=s+1.0/i; return s;}main(){ int n=200,m=1000; printf("\n%lf",ss(n,m));}7#include "stdio.h"int ss(int n) { int flag=0;int gw,sw,bw,qw;gw=n%10;sw=(n%100)/10;bw=(n%1000)/100;qw=n/1000;if((gw+sw)==(bw+qw))flag=1;return flag;}main(){ int i,s=0;for(i=1000;i<=9999;i++)if(ss(i)) s++;printf("\n%d",s);}8#include "stdio.h"int ss(long n){ int flag=0;int gw,sw,ww,qw;gw=n%10;sw=(n%100)/10;ww=n/10000;qw=(n%10000)/1000;if((gw+sw)==(ww+qw))flag=1;return flag;}main(){ long i,s=0;for(i=10000;i<=99999;i++)if(ss(i)) s++;printf("\n%ld",s);}9#include "stdio.h"int ss(long n){ int flag=0;int gw,sw,ww,qw;gw=n%10;sw=(n%100)/10;ww=n/10000;qw=(n%10000)/1000;if(gw==ww&&sw==qw)flag=1;return flag;}main(){ long i,s=0;for(i=10000;i<=99999;i++)if(ss(i)) s++;printf("\n%ld",s);}10 int sh(int a[],int n){int i,t;for(i=0;i<=n/2;i++){ t=a[i];a[i]=a[n-i-1];a[n-i-i]=t;}return(a);}#include "stdlib.h"#include"time.h"main(){int a[8],i;for(i=0;i<8;i++)a[i]=rand();for(i=0;i<8;i++)printf("%8d",a[i]);printf("\n");ds(a,8);for(i=0;i<8;i++)printf("%8d",a[i]);}11 int ss(int n){int i,flag=1;for(i=2;i<n;i++)if(n%i==0){flag=0;break;}return(flag);}#include "stdio.h"main(){int i,count=0;for(i=100;i<=999;i++)if(ss(i)) count++;printf("\ncount=%d",coun t);}12int ss(int n){int i,flag=0;int gw,sw,bw,qw,zh;gw=n%10;sw=(n%100)/10;bw=(n%1000)/100;qw=n/1000;zh=gw+sw+bw+qw;if(zh%3==0&&zh%4==0) flag=1;return(flag);}#include "stdio.h"main(){int i,count=0;for(i=1000;i<=9999;i++)if(ss(i)) count++;printf("\ncount=%d",coun t);}13#include "math.h"double sz(int a[5][5]) {int i,j;double s=0;for(i=0;i<5;i++)for(j=0;j<5;j++)if(i+j<=4)s=s+sqrt(1.0*a[i][j]);return s;}#include "stdio.h"main(){inta[5][5]={23,45,56,73,34,34,7 4,85,54,764,56,98,56,89,67,9 8,54,83,12,59,98,87,74,48,62};double s;s=sz(a);printf("\n%lf",s);}14#include "math.h"double sz(int a[5][5]){int i,j;double s=0;for(i=0;i<5;i++)for(j=0;j<5;j++)if(i+j>=4)s=s+sqrt(1.0*a[i][j]);return s;}#include "stdio.h"main(){inta[5][5]={23,45,56,73,34,34,74,85,54,764,56,98,56,89,67,98,54,83,12,59,98,87,74,48,62};double s;s=sz(a);printf("\n%lf",s);}15#include "math.h"double sz(int a[5][5]){int i,j;double s=0;for(i=0;i<5;i++)for(j=0;j<5;j++)if(a[i][j]%2==0)s=s+sqrt(1.0*a[i][j]);return s;}#include "stdio.h"main(){inta[5][5]={23,45,56,73,34,34,74,85,54,764,56,98,56,89,67,98,54,83,12,59,98,87,74,48,62};double s;s=sz(a);printf("\n%lf",s);}16#include "math.h"double sz(int a[5][5]){int i,j;double s=0;for(i=0;i<5;i++)for(j=0;j<5;j++)if(a[i][j]%2==1)s=s+sqrt(1.0*a[i][j]);return s;}#include "stdio.h"main(){inta[5][5]={23,45,56,73,34,34,74,85,54,764,56,98,56,89,67,98,54,83,12,59,98,87,74,48,62};double s;s=sz(a);printf("\n%lf",s);}17#include "stdio.h"int sxh(int n){int gw,sw,bw,flag=0;gw=n%10;sw=(n%100)/10;bw=n/100;if((gw*gw*gw+sw*sw*sw+bw*bw*bw)==n)flag=1;return flag;}main(){int i,count=0;for(i=100;i<=999;i++)if(sxh(i)) count++;printf("\ncount=%d",coun t);}18b #include "stdio.h"long ss(long n,long a[]) {long j,i=0,t;while(n>0){a[i]=n%7;n=n/7;i++;}i--;for(j=0;j<(i+1)/2;j++) {t=a[j];a[j]=a[i-j];a[i-j]=t;} return(i+1);}main(){long i=563465,k,a[50]; k=ss(563465,a);printf("\n");for(i=0;i<k;i++)printf("%ld",a[i]);}19#include "stdio.h"long ss(long n,long a[]) {long j,i=0,t;while(n>0){a[i]=n%7;n=n/7;i++;}i--;for(j=0;j<(i+1)/2;j++) {t=a[j];a[j]=a[i-j];a[i-j]=t;} return(i+1);}main(){long i=563465,k,a[50]; k=ss(563465,a);printf("\n");for(i=0;i<k;i++) printf("%ld",a[i]);}20#include "stdio.h"int ss(double a[],int n){int gs=0,i;double aver=0;for(i=0;i<n;i++)aver=aver+a[i];aver=aver/n;for(i=0;i<n;i++)if(a[i]<aver) gs++;return gs;}main(){ doublea[9]={1253,5647,6849,5962,4567,2361,1247,5241,6124};int count;count=ss(a,9);printf("\n%d",count);}22#include "stdio.h"int ss(int n){intgw,sw,bw,qw,ww,a,b,flag=0;gw=n%10;sw=(n%100)/10;bw=(n%1000)/100;qw=(n%10000)/1000;ww=n/10000;a=gw+10*sw;b=qw+ww*10;if(a%7==0&&bw%7==0&&b%7==0)flag=1;return flag;}main(){int i; int count=0;for(i=10000;i<=30000;i++)if(ss(i)) count++;printf("\ncount=%d",count);}。