c语言实习作业

发布 2020-02-26 04:31:28 阅读 7142

高级语言上机训练。

学院:_ 通信学院__

班级:__通信133__

姓名:__郑立鑫___

学号:__208130338___

成绩。1、 编程题:数组point中存放着9个人的成绩,调用函数fun,其函数原型为int fun(int point,int n,int high)函数功能是:

返回高于平均分的人数,并将高于平均分的分数放在high所指的数组中,例如,当point数组中的数据为时,函数返回的人数应该是5,high中的数据应为。

要求:主函数调用函数fun(point,9,high),在主函数中初始化point数组,显示point数组个数和内容、high数组元素个数和内容,并调用fprintf()函数将high数组内容存放到文件中。

程序**:#include<>

int fun(int point,int n,int high)函数声明*/

void main()

int point[9]=;

int num,high[9],i;

file *fp;

fp=fopen(""w");

printf("the data of point:n");

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

printf("%d ",point[i]);

printf("");

num=fun(point,9,high);/调用函数*/

printf("the number of high's data: %d",num);

printf("the data of high:n");

for(i=0;i printf("%d ",high[i]);

printf("");

/*调用fprintf()函数将high数组内容存放到文件中*/

for(i=0;i fprintf(fp,"%d ",high[i]);

*返回高于平均分的人数*/

int fun(int point,int n,int high)

double **e;

int i,j,k=0,s=0;

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

s+=point[i];

**e=s/9.0;

for(j=0;j<9;j++)

if(**e

return k;

程序运行结果(截屏)

调试遇到的问题和感想:

本题难度不大,遇到的问题几乎没有,主要问题在于将high数组内容存放到文件中,还有就是for语句来实现函数的功能,由于sum的值不定。

2、 编程题:编写函数fun,其函数原型为 void fun(char *str,int n);对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按ascii码降序排列。例如,原来的字符串为justabc,则排序后输出为jutsbac。

要求:主程序调用函数fun(str,7)实现,在主函数中输入原字符串并显示、显示重新排列后的字符串。

程序**:#include<>

void fun(char *str,int n);

void main()

char str[7];

printf("请输入字符串(7个字符):");

scanf("%s",str);

fun(str,7);/函数调用*/

printf("输出已排序的字符串(7个字符):");

printf("%s",str);

printf("");

void fun(char *str,int n)

int i;char t;

for(i=1;i<=n-2;i++)

if(str[i]

程序运行结果(截屏)

调试遇到的问题和感想:

难度一般,容易发生一些逻辑错误,还好语法基本上没什么错误,程序设计的较简单,执行得快。

3、 编程题:编写函数fun,其函数原型是int fun(int mm,int b[max]),该函数的功能是求出小于或等于mm的所有素数,并放在b数组中,该函数返回所求出的素数的个数。假设:

define max 100

要求:主程序调用函数sum=fun(m,b);实现,在主函数中显示m的值和b数组的内容。

程序**:#include<>

#include<>

#define max 100

void main()

int fun(int m,int b[max]);

int b[max],m,i,sum;

printf("输入一个数:")

scanf("%d",&m);

printf("");

sum=fun(m,b);/求所有素数的和*/

printf("所有的素数是:");

for(i=0;i

printf("");

int fun(int m,int b[max])

int k,n=0,j,i;

for(j=2;j<=m;j++)判断素数*/

return n;

程序运行结果(截屏)

调试遇到的问题和感想:

对一些特定的数的算法还不太熟练,故查看了书籍之后才得以解决的,其他的没什么问题。

4、 编程题:编写函数fun,其函数原型为int fun(int b[m][n]),函数的功能是求出二维数组周边元素之和,作为函数值返回。

例如,若二维数组中的值为:

则函数值为72。

要求:主程序调用函数sum=fun(m,b);实现,二维数组中的值在主函数中赋予,显示二维数b以及计算的周边元素之和。

程序**:#include<>

#define m 100

#define n 100

void main()

int fun(int b[m][n],int m,int n);

int b[m][n];

int i,j,sum,m,n;

printf("行是:")

scanf("%d",&m);

printf("列是:")

scanf("%d",&n);

printf("数组是:");

for(i=0;i for(j=0;jscanf("%d",&b[i][j]);

sum=fun(b,m,n);

printf("和是:")

printf("%d",sum);

int fun(int b[m][n],int m,int n)

int i,j,sum=0;

for(j=0;j sum=sum+b[0][j]+b[m-1][j];

for(i=1;i sum=sum+b[i][0]+b[i][n-1];

return sum;

程序运行结果(截屏)

调试遇到的问题和感想:

该程序遇到的问题较多,比如一些符号的初始赋值问题。再者就是数组之间的一些加减很容易出错,还有就是语句的跳出与中断等都有些麻烦。

5、 编程题:编写函数原型为change ,其函数void change(char *a,char *b,char *c)。函数功能是首先把b指向的字符串逆向存放,然后将a指向的字符串和b指向的字符串按排列顺序交叉合并到c指向的数组中,两个字符串中过长的剩余字符接在c指向数组的尾部。

例如,当a指向的字符串为"abcdefg",b指向的字符串为"1324"时,c指向的数组中字符串应为"a4b2c3dlefg"。

要求:编写main函数。函数功能是声明字符型数组s1、s2和t,用测试数据初始化数组s1和s2,再用s1、s2和t作为实参调用函数change,将数组s1、s2和t中的字符串输出到屏幕及文件中。

最后将考生本人的学号字符串也输出到文件中。测试数据为s1:abcdefg s2:

1324

程序**:#include<>

#include<>

void change(char *a,char *b,char *c);

void main()

char s1[20],s2[20],t[20];

gets(s1);

printf("");

gets(s2);

printf("字符串s1:%s字符串s2:%s",s1,s2);

change(s1,s2,t);

printf("变换后的字符串:%s",t);

void change(char *a,char *b,char *c)

int i,j,k;char *d;

printf("b[0]=%s",b);

k=strlen(b);

d[k]=b[k];

for(j=0;k>=0;k--)

printf("倒序的b=%s",d);

for(i=0,j=0;b[i]!=0';i++)

for(;a[i]!=0';i++)

c[j]='0';

程序运行结果(截屏)

调试遇到的问题和感想:

在逆向存放时排序容易出错,还有就是在连接字符串1和字符串2时链接发生了问题,在这发生一些问题看书后解决了。

6、编程题:在给定范围内查找k使得用公式k^2+k+17生成的整数满足以下条件:该数的十进制表示中低3位数字相同,去掉低3位后的整数是回文数。

例如,当k=461时用公式生成的整数是212999,该数满足所给条件。

C语言实训作业

c语言通识教育 实训指导书。实训课 2学时 指导教师 何天成。2016年月日。c 语言是现代最流行的通用程序设计语言之一,它既具有高级程序设计语言的优点,又具有低级程序设计语言的特点,既可以用来编写系统程序,又可以用来编写应用程序。因此,c 语言正在被迅速地推广和普及。上机实验是该课程教学的一个重要...

实习报告 2023年c语言实习心得

在编写程序中,真的是细节决定成败,因为不管程序的语句是多是少,但是只要有一条语句或语法不正确,就不能使程序得到所需要的结果。没能够使自己编写出来的程序等到想要的结果,意味着这是一个不理想的程序,对于本次编写来说则是失败的。在初学语言的一个学期后,我们进行了语言实训阶段,尝试编写一个比较复杂的程序系统...

C语言实习心得体会

第一篇 c语言实习体会。从这学期开始接触c语言,它对于我来说就只是一个模糊的概念,就觉得这个东西我是用不着的,其实不然。从这次c语言的实训,我才认识到其实在很早以前我们已经接触运用了它,只是我们并没有深入的去了解一个程序它的产生与它的规律。在次过程中我们深刻的感触到团队的重要性,平时都没怎么认真,老...