C语言实验报告

C语言实验报告,第1张

我写了个,不知道行不,有什么不妥的请指出哈,如要格式请加我,将之发给你

四 川 大 学 计 算 机 学 院、软 件 学 院

实 验 报 告

学号: 姓名: 专业:计算机科学与技术 班级:5 第 13 周

课程名称 c/C++ 实验课时 2

实验项目 字符串的复制与追加 实验时间 08.5 16

实验目的 1.掌握字符串的基本 *** 作和理解数据结构

实验环境 VC 60

实验内容(算法、程序、步骤和方法) 先计算出S1和S2的字符个数,为S3分配好空间,利用已有库函数先将S1复制到S3中,再将S2追加到S3中,当显示完后要记住收回空间,做好善后处理。

源代码如下:

#include<iostream>

#include<stringh>

using namespace std;

int main()

{

char s1="abcdef";

char s2="123456f";

int n=strlen(s1)+strlen(s2);//计算s1,和s2的总长度n

char s3=new char[n+1]; //定义S3并分配空间大小为n

strcpy(s3,s1); //将s1复制到s3中

strcat(s3,s2); //将s2追加到s3后面

cout<<"s3="<<s3<<endl;

delete []s3; //收回空间

s3=NULL; //将指针指向空

return 0;

}

(接上)

实验内容(算法、程序、步骤和方法)

结构是顺序存储结构,算法顺序链接法

数据记录

和计算 数据有:字符串S1 ,S2;和一未知字符串S3

只需计算前两个字符串长度之和

结 论

(结 果) 利用字符数组可以顺序存储字符数据,并且能够顺序处理数据;

算法复杂度O(n+m);处于中性

小 结 字符数组能够带来很好的存储结构,便于 *** 作,但是算法不是很好,只能顺序遍历数组,故复杂度不是很小

指导老师评 议

成绩评定: 指导教师签名:

#include "stdioh"

#define N 10

typedef struct

{char name[20];

char xuehao[20];

int xuhao[5];

float shuxue[10];

float yingyu[10];

float jisuanji[10];

float sum[10];

float average[10];

}user;

main()

{user sp[N],temp;

int i;

printf("enter xinxi; \n");

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

{gets(sp[i]name);gets(sp[i]xuehao);

gets(sp[i]xuhao);gets(sp[i]shuxue);

gets(sp[i]yingyu);gets(sp[i]jisuanji);

sum=sp[i]shuxue+sp[i]yingyu+sp[i]jisuanji;

average=sum/3;

}

getsort(sp);

printf("after sorted: \n");

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

printf("%d\t%s\t%s\t%d\t%d\t%d\t%d\t%d\n",sp[i]xuhao,sp[i]xuehao,sp[i]name,sp[i]yingyu,sp[i]jisuanji,sp[i]shuxue,sp[i]sum,sp[i]average);

}

getsort(user sp)

{int i,j;

user temp;

for(i=0;i<N-1;i++)

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

if(sp[i]sum<sp[j]sum)

{temp=sp[i]sum;

sp[i]sum=sum[j]sum;

sp[j]sum=temp;}

我没运行,可能对吧,你试一下

1#include<stdioh>

void main()

{

float sum=0;//总分

float max=0;//最高分

float min=100;//最低分

int i=0;//统计输入个数

float score;

while(1)

{

printf("请输入第%d个评委的分数:",i+1);

scanf("%f",&score);

if(score==-1) break;//输入-1退出循环

else

{

if(score>max) max=score;

if(score<min) min=score;

sum+=score;

i++;

}

}

2#include <stdioh>

int main( )

{ int i,n=10,a[10],av=0;//英文下分号,av 初始化

for(i=0;i<n;i++) //英文下分号,n要有值

scanf("%d",&a[i]); //少了&

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

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

if((i+1)%3==0)

printf("\n");

}

for(i=0;i!=n;i++)

av+=a[i];

printf("av=%f\n",(float)av/n);

}

3

#include <stdioh>

#define N 5

int main(int argc, char argv[])

{

int num[N]={0},i=0,k=0;

float score[N]={00};

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

scanf("%d%f",&num[i],&score[i]);

for(i=1; i<N; i++)

if(score[k]<score[i]) k=i;

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

printf("%8d",num[i]);

printf("\n");

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

printf("%82f",score[i]);

printf("\n");

printf("number=%d,score=%2f\n",num[k],score[k]);

return 0;

}

4

(1)

#include <stdioh>

int main(int argc, char argv[])

{

int a[8]= {34,56,45,57,69,48,79,61},i=0,j=0,k=0,t=0;

for(i=0; i<7; i++) {

k=i;

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

if(a[k]<a[j]) k=j;

t=a[i]; a[i]=a[k]; a[k]=t;

}

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

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

printf("\n");

return 0;

}

(2)

#include <stdioh>

int main(int argc, char argv[])

{

int a[8]= {34,56,45,57,69,48,79,61},i=0,j=0,t=0;

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

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

if(a[i]<a[j]) {

t=a[i]; a[i]=a[j]; a[j]=t;

}

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

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

printf("\n");

return 0;

}

5#include <stdioh>

void main()

{ int n[11],i,j,m,f;

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

scanf("%d",&n[i]);

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

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

{

f=n[i];

n[i]=n[i]>n[j]n[i]:n[j];

if(n[j]>f)n[j]=f;

}

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

printf("%7d",n[i]);

printf("\nplease enter the 11th number:\n");

scanf("%d",&m);

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

if(m>n[i])

{

for(j=10;j>i;j--)

n[j]=n[j-1];

n[i]=m;

break;

}

else

if(i==9 && m<=n[9])

n[10]=m;

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

printf("%7d",n[i]);

getch();

}

6#include <stdioh>

int main(int argc, char argv[])

{ int i,j,a[4][4],sum=0,p=1,max,maxi;

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

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

scanf("%d",&a[i][j]);

max=a[0][0];

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

{ sum+=a[i][i];

if (i%2==0)

p=a[i][i];

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

{ max=a[i][i];

maxi=i;

}

}

printf("对角线上各元素的和:%d\n",sum);

printf("对角线上行、列下标均为偶数的各元素的积:%d\n",p);

printf("对角线上其值最大的元素:%d,它在数组中的位置:第%d行第%d列\n",max,maxi,maxi);

return 0;

}

以上就是关于C语言实验报告全部的内容,包括:C语言实验报告、《C语言程序设计》实验报告、C语言报告 急!!!!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/zz/9970502.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-03
下一篇2023-05-03

发表评论

登录后才能评论

评论列表(0条)

    保存