5-1.c 运行结果截图:
5-2.c 运行结果截图:
5-3.c 运行结果截图:
5-4.c 运行结果截图:
5-5.c 运行结果截图:
5-6.c 运行结果截图:
5-7.c 运行结果截图:
1、 利用一维数组存储某班级学生的数学成绩,输入成绩,求出平均成绩和最高分。
#include<stdio.h>
#define NUM 10
int main()
{
int s[NUM];
int i,sum=0,max=s[0];
for(i=0;i<10;i++)
{
printf("qing shu ri di%dge xue sheng de cehng ji:",i+1);
scanf("%d",&s[i]);
sum=sum+s[i];
}
for(i=0;i<10;i++);
{
if (s[i]>max);
max=s[i];
}
printf("averge%.2f",(double)sum/NUM);
printf("max%d",max);
return 0;
}
copy
2、[课后习题6.3]将一个数组中的元素按逆序重新存放。
#include<stdio.h>
int main()
{
char arr[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
int i = 0;
int len = sizeof(arr) / sizeof(arr[0]);
int tmp = 0;
for (i = 0; i < (len/2); ++i)
{
tmp = arr[9 - i];
arr[9 - i] = arr[i];
arr[i] = tmp;
}
for (i = 0; i < len; ++i)
{
printf(" %d ", arr[i]);
}
return 0;
}
copy
3、 利用二维数组存储学生的数学、C语言、体育成绩,输入成绩,求每个人的平均成绩。
#include <stdio.h>
int main()
{
int a[5][5];
int i,j,sum;
printf("输入5个学生的学号及成绩内容(学号 成绩1 成绩2 成绩3):\n");
for(i=0;i<5;i++)
for(j=0;j<4;j++)
scanf("%d",&a[i][j]);
for(i=0;i<5;i++)
{
sum=0;
for(j=0;j<3;j++)
sum+=a[i][j+1];
a[i][4]=sum/3;
}
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
printf("%d ",a[i][j]);
}
printf("\n");
}
return 0;
}
copy
4、 [课后习题6.4] 打印输出10行的杨辉三角形。
#include<stdio.h>
int main()
{
int a[10][10],i,j;
for(i=0;i<10;i++)
{
a[i][i]=1;
a[i][0]=1;
}
for(i=2;i<10;i++)
for(j=1;j<=i-1;j++)
a[i][j]=a[i-1][j-1]+a[i-1][j];
for(i=0;i<10;i++)
{
for(j=0;j<=i;j++)
printf("%4d ",a[i][j]);
printf("\n");
}
return 0;
}
copy
5、[课后习题6.8 ]
编写程序,将字符数组 s2 中的全部字符复制到字符数组 s1 中,不用 strcpy()函数。复制时,第一个'\0'也要复制过去,第一个'\0'后面的字符不复制。
#include <stdio.h>
#include <string.h>
#define N 20
int main()
{
char s1[N],s2[N];
int i,j,k;
printf("请输入第一行字符串:");
gets(s1);
printf("请输入第二行字符串:");
gets(s2);
for(i=0;s2[i]!='\0';i++)
{
s1[i]=s2[i];
}
s1[i]='\0';
printf("\n\ns1=%s\n",s1);
return 0;
}
copy
6、[课后习题6.7]
编写程序,将两个字符串连接起来,不能用 strcat()函数。可以用strlen。
#include <stdio.h>
#include <string.h>
int main()
{
char str1[100],str2[50];
int i,j;
printf("请输入第一个字符串:\n");
gets(str1);
printf("请输入第二个字符串:\n");
gets(str2);
for(i = strlen(str1),j = 0;j < strlen(str2);i++,j++)
{
str1[i] = str2[j];
}
printf("连接完成!\n结果是:\n");
puts(str1);
}
copy
学习时间 2170分钟
操作时间 138分钟
按键次数 9241次
实验次数 16次
报告字数 3817字
是否完成 完成