c语言实验报告

时间:2024.4.20

                             实验报告

1,已知三角形的边为a,b,c,试设计程序输入三边的值并计算三角形的面积,已知三角形的面积计算公式为:

S=(a+b+c)/2;

Area=

截图为程序及其运行结果

分析:常错的地方就是容易后面使用到的字母忘记定义导致程序不认识不能运行,另外地址符&容易忘记,后面有使用的函数公式是在math.h里面的,也不能忘记#include “math.h”,最后就是中英文输入标点符号的区别,必须都是英文标点。

2,求ax²+bx+c=0方程的根,a,b,c由键盘输入,设b²-4ac>0,已知求根公式为:

X1=;X2=;

截图为程序及其运行结果

分析:一是注意地址符,注意定义到所有用到的字母,

3,已知三角形的边为a,b,c,三角形的面积计算公式为:

S=(a+b+c)/2;

Area=

试设计程序计算三角形的面积,当三边不满足三角形条件时,提示用户输入错误。

截图为程序及其运行结果,当三边不满足三角形时提示错误

分析:程序编辑过程中注意最基本的是用英文符号,定义所有需要的字母,括号不能掉

4,求ax²+bx+c=0方程的根,a,b,c由键盘输入并为任意实数,已知求根公式为:

X1=;X2=;

提示:根为虚数时的输入语句:

printf("x1=%lf+i%lf",p,q);

printf("x1=%lf-i%lf",p,q);

P=-b/2a;

q=.

截图为程序及其运行结果,由于输入为任意实数,则可能不满足方程,各种情况都要予以考虑,因此用到else if语句

5,在我们国内的大学生中,学生的学习成绩以百分制计算,但有些国家的大学是以等级记录学生的成绩,例如:A,B,C,D,E等,假设需要按下表进行转换,编写程序,使用switch语句根据输入的百分制分数,输出相应的分数等级(设输入为任意实数)

需要注意事项是switch语句中,每一个单独的case语句后面break不能少,其他的基本与前面相同,英文符号,定义字母,下面截图中是程序及其运行结果,当分数不在0-100范围时显示为错误,

6,已知三角形的边为a,b,c,试设计程序输入三边的值并计算三角形的面积。当输入的三边值不满足三角形的条件时,提示用户输入的数据错误并使用户重新输入,直到输入正确。(提示:用while或do while语句)

分析:do while语句是当条件不满足时会一直执行,不能忘记scanf(),否则会成为一个死循环


第二篇:C语言实验报告3


暨南大学本科实验报告专用纸

课程名称             数据结构试验          成绩评定           

实验项目名称           文本格式化          指导教师  孙世良      

实验项目编号             实验项目类型    实验地点          

学生姓名     谢显栩        学号       2009051718                            

学院    电气信息学院       计算机科学系  专业   软件工程                   

实验时间          午~      午 温度  ℃湿度                                                                   

(一)            实验目的

熟悉串类型的实现方法和文本模式匹配方法,熟悉一般文字处理软件的设计方法,较复杂问题的分解求精方法。

(二)            实验内容和要求

           输入文件中含有待格式化(或成为待排版)的文本,它由多行文字组成,例如一篇英文文章。每一行由一系列被一个或多个空格符所隔开的字所组成,任何完整的字都没被分割在两行(每行最后一个=字与下一行第一个字在逻辑上应该由空格分开),每行字符数不超过80。除了上述文本类字符外,还存在起控制作用的字符:符号"@"指示它后面的正文在格式化时应另起一段排放,即空一行,并在段首缩入8个字符位置。"@"自成一个字。

         一个文本格式化程序可以处理上述输入文件,按照用户指定的版面规格重排版面:实现页内调整,分段,分页等文本处理功能,排版结果存入输出文本文件中。

[ 基本要求]:

(1) 输出文件中字与字之间只留一个空格符,即实现多余空格符的压缩。    

(2) 在输出文件中,任何完整的字仍不能分隔在两行,行尾不齐没关系,但行首要对齐(即左对齐)。    

(3) 如果所要求的每页页底所空行数不少于3,则将页号印在页底空行中第2行的中间位置上,否则不印。

(4) 版面要求的参数要包含: 

                页长(Page Length)——每页内文字(不计页号)的行数。

                页宽(Page Wedth)——每行内文字所占最大字符数。

                左空白(Left Margin)——每行文字前的固定格数。

                头长(Heading Length)——每页页顶所空行数。 

                脚长(Footing Length)——每页页底所空行数(含页号行) 

                起始页号(Starting Page Number)——首页的页号。

(三)            主要仪器设备

仪器:计算机      实验环境:Windows 7 & win-tc

暨南大学本科实验报告专用纸(附页)

                                                                    

(四)            源程序

#include<stdio.h>

#include<stdlib.h>

int pl=20,pw=80,lm=1,hl=3,fl=3,spn=1;

main()

{

 void operation(void);

    operation();

    printf("The TXT has been edited,please chack it in the new txt named new.txt");

    getch();

}

void operation(void)

{

    FILE *fp,*pf,*panduan;

    int pli=1,pwi=1,lmi=1,spni=1,i,j=0,k=0,sp1,sp2,l=0,m=0,n=0;

    char ch,hc;

    if(!(fp=fopen("f:\\doc.txt","r")))

    {

        printf("input error");

        exit(1);

    }

    if(!(pf=fopen("f:\\new.txt","w")))

    {

        printf("input error");

        exit(1);

    }

if(!(panduan=fopen("f:\\doc.txt","r")))

暨南大学本科实验报告专用纸(附页)

                                                                    

    {

        printf("input error");

        exit(1);

    }

    fflush(stdin);

    ch=fgetc(fp);

    fflush(stdin);

    hc=fgetc(panduan);

    while(hc!=' '&&hc!=EOF&&hc!=3344&&hc!=46&&hc!=58&&hc!=59&&hc!=63)

    {

        fflush(stdin);

        hc=fgetc(panduan);

        m++;

    }

    while(ch!=EOF)

    {

        if(m==n)

        {

            fflush(stdin);

            hc=fgetc(panduan);

            m++;

            while(hc!=' '&&hc!=EOF&&hc!=33&&hc!=44&&hc!=46&&hc!=58&&hc!=59&&hc!=63)

            {

                fflush(stdin);

                hc=fgetc(panduan);

                l++;

                m++;  }

暨南大学本科实验报告专用纸(附页)

                                                                    

if((l+pwi)>pw)

            {

                pwi=1;

                pli++;

                fputc('\n',pf);

                fputc(' ',pf);

            }

            l=0;

        }

        if(pli>=18)

        {

            fputc('\n',pf);

            for(i=0;i<pw/2-1;i++)

            fputc(' ',pf);

            sp1=spni/10;

            sp2=spni%10;

            fputc(sp1+48,pf);

            fputc(sp2+48,pf);

            fputc('\n',pf);

            fputc('\n',pf);

            pli=1,pwi=1,spni++;

            k=1;

        }

        if(pli==1)

        {

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

            fputc('\n',pf);

暨南大学本科实验报告专用纸(附页)

                                                                    

            pli=hl+1;

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

            fputc(' ',pf);

            pwi=9;

        }

        if(ch=='@'&&k==0)

        {

            fputc('\n',pf);

            pli++;

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

            fputc(' ',pf);

            pwi=9;

        }

        if(ch==' '&&k==0)

        {if(j==0)

            fputc(ch,pf);

            j=1;

            pwi++; }

        else

        {if(ch!='\r'&&k==0)

            fputc(ch,pf);

            if((ch==33||ch==44||ch==46||ch==58||ch==59||ch==63)&&k==0)

            fputc(' ',pf);

            j=0;

 pwi++;}

暨南大学本科实验报告专用纸(附页)

                                                                    

if(pwi==pw&&k==0)

        { pwi=1;

            pli++;

            fputc('\n',pf);

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

            fputc(' ',pf); }

        if(k==0)

        { fflush(stdin);

            ch=fgetc(fp);

            n++;}

        k=0; }

    fclose(fp);

    fclose(pf);

    fclose(panduan); }

(五)            实验步骤与调试

(1)       在计算机F盘中建立doc.txt文件,将待排版内容输入其中。

暨南大学本科实验报告专用纸(附页)

                                                                    

(2)       运行程序。

(3)  打开F盘中生成的new.txt文件,查看排版结果。

(六)            实验结果与分析

实验结果: 输入文本按预定格式输出。

分析:程序输出正常,但尚有一些需改进的地方,例如:文本输出中,作为换段符的@本不该存在(按实验要求保留下来,减轻了程序难度)。而后,分页时,最后不足页的文本也没用分配成新的一页打上页码。最后,文本用到的参数都是预先写在程序之中,可以考虑由操作者自行输入,只需在主函数中写入相关的提示及参数输入语句。

更多相关推荐:
c语言实验报告

四川师范大学计算机科学学院C语言程序设计实验手册20xx年2月年级20xx级专业电子商务班级04班姓名罗桂清学号20xx110438指导教师廖雪花1C语言程序设计实验课程简介课程名称C语言程序设计实验课程性质专...

c语言实验报告

课程设计报告学院课程名称专业班级学生姓名学号指导教师完成时间年月目录1菜单选择程序课程设计2学生信息管理系统课程设计题目1菜单选择程序课程设计一课程设计内容与要求1主菜单编写程序能够显示以下的主菜单主菜单1字母...

C语言实验报告书写格式及模板

大学学院实验报告专业名称实验室实验课程C实验名称姓名学号同组人员实验日期语言程序设计程序设计12345678

c语言实验报告模板完成版

高级语言程序设计学生实验报告专业计算机科学与技术学号姓名1实验一C程序的运行环境和使用方法1实验目的1了解所用的计算机系统的基本操作方法学会独立使用该系统2了解在该系统上如何编辑编译连接和运行一个C程序3通过运...

C语言实验报告(八)

华北水院高级语言程序设计C语言实验报告20xx20xx学年第二学期20xx级专业班级学号一实验题目文件二实验目的略三实验内容1程序验证用记事本编辑文本文件file1txt分析一下程序的功能及结果并验证inclu...

大学C语言实验报告答案

郑州大学09级C语言实验报告答案实验一1includeltstdiohgtvoidmainintabcscanfquotdddquotampaampbampcprintfquotsumdnquotabc2inc...

C语言实验报告样本

实验报告课程名称C语言程序设计实验项目顺序结构程序设计实验仪器计算机系别机电工程学院专业机械设计制造及其自动化班级学号机械110120xx010008学生姓名郭奎宇实验日期20xx年10月24日成绩指导教师一实...

C语言实验报告(一)

C语言实验报告一一实验目的12345掌握C语言中基本的输入输出函数的使用方法掌握printf中转义字符tn的用法掌握赋值语句的用法掌握算术表达式赋值表达式的计算掌握数学函数的使用二实验内容1从键盘输入一个6位整...

C语言实验报告(七)

华北水院高级语言程序设计C语言实验报告20xx20xx学年第二学期20xx级专业班级学号一实验题目结构体和共用体二实验目的略三实验内容1程序验证启动vc语言环境输入并执行以下程序源代码运行结果includelt...

C语言实验报告册答案

C语言实验报告册答案实验一1includeltstdiohgtvoidmainintabcscanfquotdddquotampaampbampcprintfquotsumdnquotabc2includelt...

C语言数组实验报告

北京联合大学信息学院程序设计基础课程调研研究报告题目姓名学号专业计算机科学与技术编制时间20xx528版本指导教师北京联合大学信息学院编制数组实验程序设计报告20xx年5月28日班号姓名学号第一章实验情况概述本...

C语言实验报告模板完成版

高级语言程序设计学生实验报告专业学号姓名实验一C程序的运行环境和使用方法1实验目的1了解所用的计算机系统的基本操作方法学会独立使用该系统2了解在该系统上如何编辑编译连接和运行一个C程序3通过运行简单的C程序初步...

c语言实验报告(38篇)