武汉理工大学《C语言程序设计》实验报告册

时间:2024.5.9

注:在Visual C++ 6.0编译环境中亲自调试通过,但不保证在Turbo C中通过。

实验二 选择结构的程序设计

(题目当初没抄下来,这是根据程序整理的)

1. 编程实现分段函数

#include

main()

{

float x,y;

printf("Please input x:");

文本框:scanf("%f",&x);

if (x<-1||x>=2)

printf("Data Error\n");

else

{

if (x>=-1&&x<0)

y=4*x-8;

if (x>=0&&x<1)

y=3*x*x+10*x-1;

if (x>=1&&x<2)

y=8*x*x*x*x-3*x*x+2*x-1;

printf("\ny=%f\n",y);

}

}

2.

苹果有三个等级,一级5.50元/斤,二级3.00元/斤,三级2.50元/斤。
编写程序,输入苹果的等级,购买的数量和所付的钱数,
输出等级,购买的数量、应付钱数和找零。

#include

main()

{

int level;

double weight,pay,money,charge;

printf("Please input the level:");

scanf("%d",&level);

printf("Please input the weight you want:");

scanf("%lf",&weight);

printf("Please input the money you pay:");

scanf("%lf",&pay);

if (level<1||level>4||weight<0) printf("Data Error\n");

else{

if (level==1) money=weight*5.50;

else if (level==2) money=weight*4.20;

else if (level==3) money=weight*3.00;

else if (level==4) money=weight*2.50;

charge=pay-money;

printf("\nLevel:%d\nweight:%g\n",level,weight);

printf("money:%g\ncharge:%g\n\n",money,charge);

}

}

实验三 循环结构

1. 编程计算 1!+2!+3!+4!+5!

l 分别用单层循环和双层循环实现

l考虑

#include

main()

{

int i,x;

double j,k,sum;

文本框:printf("Please input a number:");

scanf("%d",&x);

//用单层循环

for(sum=0,j=1,i=1;i<=x;i++)

{

j*=i;

sum+=j;

}

printf("The result is %lf\n",sum);

//用双层循环

for(sum=0,i=1;i<=x;i++)

{

for(k=1,j=1;j<=i;j++) k*=j;

sum+=k;

}

printf("The result is %lf\n",sum);

}

2. 共20个评委给选手评分,去掉1个最高分,去掉1个最低分,其余18名评委的平均分即选手最终得分

#include

文本框:main()

{

double score,min,max,avg=0;

int i;

//下面是为了输入第一个数

printf("Please input 20 scores...\n");

printf("Score 1: ");

scanf("%lf",&score);

min=score;max=score;

avg+=score;

// 下面为了输入剩余19个数

for(i=2;i<=20;i++)

{

do

{

printf("Score %d: ",i);

scanf("%lf",&score);

}

while(score<0);

if(score>max) max=score;

avg+=score;

}

avg=avg-min-max;

avg/=18;

printf("\nThe average score is %lf:\n",avg);

}

实验四 数组和指针的应用

1. 定义一个有10元素的一位数组count,从键盘上输入8个整数,将其按从大到小的顺序排列,并将排序后的数组输出

(1) 数组方法

#include

main()

文本框:{

int count[10],t,i,j;

printf("Please input 8 numbers:\n");

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

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

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

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

if (count[i]

{

t=count[i];

count[i]=count[j];

count[j]=t;

}

printf("The sorted array is as follows:\n");

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

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

}

(2) 指针方法

#include

main()

{

int count[10],t,i,j,*p=count;

printf("Please input 8 numbers:\n");

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

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

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

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

if (*(p+i)<*(p+j))

{

t=*(p+i);

*(p+i)=*(p+j);

*(p+j)=t;

}

printf("The sorted array is as follows:\n");

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

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

}

2. 输入2个字符串,将二者连接并输出,再将连接后的字符串反向排列并输出,并求连接后字符串的长度

文本框:#include

#include

main()

{

int i,len;

char a1[51],a2[26],t[51];

printf("Please input 2 strings:\n");

gets(a1);

gets(a2);

strcat(a1,a2);

printf("The joint string is: %s",a1);

len=strlen(a1);

printf("\nThe length of the linked string is: %d\n",len);

for(i=0;i

t[i]=a1[len-i-1];

t[len]=0;

strcpy(a1,t);

printf("The reversed string is: %s\n",a1);

}

实验五 函数应用的程序设计

1. 要求是:编写一函数,统计字符串中字母、数字、空格和其他字符的个数 在主函数中输入字符串并输出统计结果

值传送:

#include

void fun(char a,int *b)

{

if(a>='A'&&a<='Z'||a>='a'&&a<='z')b[0]++;

else if(a>='0'&&a<='9')b[1]++;

else if(a==32)b[2]++;

文本框:else b[3]++;

}

main()

{

char a[50];

int b[4],i,j,k;

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

{

for(j=0;j<4;j++)b[j]=0;

printf("\nPlease input a string:\n");

gets(a);

k=0;

while(a[k]!=0)

{

fun(a[k],b);

k++;

}

printf("The string have %d letters, %d numbers, %d spaces, %d other chars\n",b[0],b[1],b[2],b[3]);

}

}

地址传递:

#include

void fun(char *a,int *b)

{

int i=0;

while(a[i] != 0)

{

if(a[i]>='A'&&a[i]<='Z'||a[i]>='a'&&a[i]<='z')b[0]++;

else if((a[i]>='0')&&(a[i]<='9'))b[1]++;

文本框:else if(a[i]==32)b[2]++;

else b[3]++;

i++;

}

}

main()

{

char a[50];

int b[4],i,j;

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

{

for(j=0;j<4;j++)b[j]=0;

printf("\nPlease input a string:\n");

gets(a);

fun(a,b);

printf("\nThe string have %d letters, %d numbers, %d spaces, %d other chars",b[0],b[1],b[2],b[3]);

}

}


第二篇:C语言程序设计实验报告册(第十次)


C语言程序设计

实验报告册

院:

级:

号:

名:


《C语言程序设计》实 验 报 告

学号:姓名:班级:成绩:

指导教师签名: 2014 年 月 日

更多相关推荐:
武汉理工大学学生实验报告书及封面

学生实验报告书实验课程名称开课学院指导教师姓名学生姓名学生专业班级200200学年第学期实验教学管理基本规范实验是培养学生动手能力分析解决问题能力的重要环节实验报告是反映实验教学水平与质量的重要依据为加强实验过...

武汉理工大学实验报告模板

武汉理工大学学生实验报告书实验课程名称XXXX开课学院计算机科学与技术学院指导老师姓名学生姓名学生专业班级20xx20xx学年第一学期实验课程名称实验课程名称实验课程名称实验课程名称

武汉理工大学实验报告封面

武汉理工大学学生实验报告书实验课程名称开课学院指导老师姓名学生姓名学生专业班级201201学年第学期

武汉理工大学学生实验报告书

学生实验报告书实验课程名称开课学院指导教师姓名学生姓名学生专业班级200200学年第学期实验报告填写规范1实验是培养学生动手能力分析解决问题能力的重要环节实验报告是反映实验教学水平与质量的重要依据为加强实验过程...

武汉理工大学 操作系统实验报告

武汉理工大学学生实验报告书实验课程名称操作系统开课学院计算机科学与技术学院指导老师姓名学生姓名学生专业班级201201学年第学期实验课程名称操作系统实验课程名称操作系统实验课程名称操作系统实验课程名称操作系统实...

武汉理工大学实验报告书电子版

学生实验报告书实验课程名称开课学院指导教师姓名学生姓名学生专业班级200200学年第学期实验课程名称

武汉理工大学实验报告

武汉理工大学测控系统软件实验报告课程名称测控系统软件指导老师姓名周晓学生姓名夏志平学生专业班级测控120220xx20xx学年第2学期实验课程名称实验课程名称实验课程名称实验课程名称实验课程名称

武汉理工大学流体力学实验报告书

武汉理工大学流体力学实验报告书,内容附图。

武汉理工大学-移动通信实验报告

实验课程名称:移动通信实验开课学院:信息工程学院指导老师姓名学生姓名学生专业班级

武汉工程大学实验报告03

武汉工程大学实验报告实验内容实验内容:表达式求值问题。这里限定的表达式求值问题是:用户输入一个包含+、-、*、/、正整数和圆括号的合法数学表达式,计算该表达式的运算结果。算术表达式求值过程是:STEP1:先将算…

武汉理工大学学生实验报告书及封面

学生实验报告书实验课程名称开课学院指导教师姓名学生姓名学生专业班级200200学年第学期实验教学管理基本规范实验是培养学生动手能力分析解决问题能力的重要环节实验报告是反映实验教学水平与质量的重要依据为加强实验过...

武汉理工大学操作系统处理机调度加进程管理实验报告

武汉理工大学学生实验报告书实验课程名称计算机操作系统开课学院计算机科学与技术学院指导老师姓名学生姓名学生专业班级学年第一学期实验项目名称处理机调度实验项目名称进程管理

武汉理工大学实验报告(30篇)