答案 数组 函数 指针作业

发布 2022-06-29 02:49:28 阅读 4308

“数组”课外作业:

一、输入一组数,输出这组数中的最大值和最小值。

#include <>

void main()

float a[20],max,min;

int i,n;

printf("输入数据个数(不超过20):"

scanf("%d",&n);

printf("输入数字:")

for(i=0;i scanf("%f",&a[i]);

max=min=a[0];

for(i=0;i

printf("最大值为:%.2f最小值为:%.2f ",max,min);

二、输入一组学生的语文成绩和数学成绩,求每个学生的平均成绩。要求按下面运行结果所示的格式输出数据。

运行结果:输入学生人数(不超过40):4↙

输入第1个学生的语文成绩和数学成绩:86 83↙

输入第2个学生的语文成绩和数学成绩:75 81↙

输入第3个学生的语文成绩和数学成绩:90 87↙

输入第4个学生的语文成绩和数学成绩:65 74↙

编号语文成绩数学成绩总成绩平均成绩。

#include <>

void main()

int score[40][3],i,j,num;

float **[40];

printf("输入学生人数(不超过40人):"

scanf("%d",&num);

for (i=0;i

for(i=0;i

printf("%8s%10s%10s%10s%10s","编号","语文成绩","数学成绩","总成绩","平均成绩");

for (i=0;i

三、下面程序的功能是,输入一组学生的姓名和成绩,根据成绩排名次,要求按后面运行结果所示的格式输出数据。(可用二维数组完成)

运行结果:输入学生人数:5↙

输入第1位学生的姓名和成绩:张小二 65↙

输入第2位学生的姓名和成绩:王丁丁 86↙

输入第3位学生的姓名和成绩:赵四 98↙

输入第4位学生的姓名和成绩:李李 100↙

输入第5位学生的姓名和成绩:陈冬冬 70↙

排了名次的成绩单如下:

名次姓名成绩。

1 李李 100

2 赵四 98

3 王丁丁 86

4 陈冬冬 70

5 张小二 65

#include <>

#include<>

void main()

char name[40][10],str[10];

int score[40],num,i,j,t;

printf("输入学生人数:")

scanf("%d",&num);

for (i=0;i

for (i=0;i for (j=i+1;j if (score[j] >score[i])

printf("排了名次的成绩如下:");

printf("%8s%12s%8s","名次","姓名","成绩");

for (i=0;i printf("%8d%12s%8d",i+1,name[i],score[i]);

数组、函数”课外作业:

要求用函数完成。

一、定义一个数组,对其进行排序,然后输入一个数,并将这个数按数组排序的位置插入到数组中。如:数组中有:

3,6,9,10,15,18;输入的数为11,则:应输出3,6,9,10,11,15,18。

#include <>

void main()

void sort(int a[10]);

void insert(int a[11],int x);

int a[11]=,i,x;

for(i=0;i<10;i++)

printf("%3d",a[i]);

printf("");

sort(a);

for(i=0;i<10;i++)

printf("%3d",a[i]);

printf("");

printf("插入一个数字:")

scanf("%d",&x);

insert(a,x);

for(i=0;i<11;i++)

printf("%3d",a[i]);

printf("");

void sort(int a[10])/排序

int i,j,temp;

for(i=0;i<10;i++)

for(j=i+1;j<10;j++)

if(a[i]>a[j])

void insert(int a[11],int x)//插入数值

int i,j;

i=0;while(x>a[i]) i++;如果x大于数组中的某个数。

for(j=10;j>i;j--)那么其他的数相继住后移

a[j]=a[j-1];

a[i]=x;//并把x加到空出来的位置

二、(函数,数组)输入一个3*3的矩阵,求对角线元素之和,并输出。例:

对角线元素和为:1+5+9=15,3+5+7=15。

#include <>

#define n 3

void main()

void input(int a[n][n]);

int sum1(int a[n][n]);

int sum2(int a[n][n]);

int a[n][n];

input(a);

printf("第一个对角线的和为:%d",sum1(a));

printf("第二个对角线的和为:%d",sum2(a));

void input(int a[n][n])

int i,j;

for(i=0;i

int sum1(int a[n][n])

int i,j,x=0;

for(i=0;i for(j=0;j if(i==j)//当i=0j=0,i=1j=1,i=2j=2时相加

x=x+a[i][j];

return x;

int sum2(int a[n][n])

int i,j,x=0;

i=0;j=n-1;

while (i

return x;

三、下面程序的功能是,输入一个ascii 码值,输出从该ascii码开始的连续10个字符。在横线处填写正确的语句或表达式,使程序完整。上机调试程序,使程序的运行结果与给出的结果一致。

#include<>

void main()

数组 指针作业

1 要声明一个有10个int型元素的数组,正确的语句是。a.int a 10 b.int a 2,5 c.int a d.int a 10 2 下面的数组初始化语句中,正确的是。a.char a string b.int a 5 c.int a string d.char a 3 已知 int i,...

C 数组指针题答案

数组指针01 逆序输出。从键盘输入n个整数 n 100 存放在一个一维数组中,逆序输出能被3整除的元素,并逆序输出数组下标为3的倍数的元素。输入格式 第一个整数为个数n,后续为n个整数。输出格式 第一行能被3整除的元素,第二行为下标为3的倍数的元素,各个数值之间用空格分隔。输入 10 2 7 9 1...

11指针与数组作业

一 选择题。1 有以下程序main int x 8 s s x 3 printf d s 2 执行后输出结果是a 随机值。b 0c 5 d 6d p只能用来说明p是一个指针变量2 阅读以下函数fun char s1,char s2 此函数的功能是。a 将s2所指字符串赋给s1 b 比较s1和s2所指...