C语言程序设计实验报告参考答案
C实验报告答案完整版

实验1简单判定性问题求解一、实验学时完成本实验需4学时。
二、实验目的1、阅读程序题(1)掌握C语言数据类型,熟悉如何定义一个整型、字符型的变量,以及对它们赋值的方法;(2)掌握不同的类型数据之间赋值的规律;(3)掌握数据在内存中的存储方式;(4)学会输入、输出函数的基本格式和使用方法;(5)学会使用有关算术运算符、逻辑运算符、关系运算符,以及包含这些运算符的表达式。
2、编程题(1)如何运用if-else判定性结构进行程序设计;(2)如何运用switch判定性结构进行程序设计。
3、调试题(1)熟悉C程序的编辑、编译、连接和运行的过程。
三、实验指导为了达到最佳的实验效果,以下提供几条适于编程的指导意见,可供参考。
1、阅读程序题应先运用自己在课堂所学的知识,推导出结果,在上机时输入计算机,印证自己推导的结果,注意观察数据在内存中的存储方式、含不同种运算符表达式的输出结果。
2、编程题必须首先画出流程图,并反复思考判断程序设计的正确性,完成程序的设计。
要注意简单判定性问题的结构选择。
3、调试题应明确程序的调试、测试是一项非常烦琐的工作,也是非常重要的工作。
对于初学者来说应该建立良好的习惯,在调试程序的时候,应该尽可能考虑到程序运行时各种可能情况。
四、实验内容1、阅读程序题(1)main( ){ /*定义字符型变量*/char c1,c2; /*向字符变量赋以整数*/c1=97;c2=98;printf("%c %c\n",c1,c2); /*以字符形式输出*/printf("%d %d\n",c1,c2); /*以整数形式输出*/}思考:可否改成int c1,c2;输出结果是?相同(2)main(){int a=7,b=5;printf("%d\n",b=b/a);}思考:若将printf语句中%d变为%f,可否输出分式的值?可以(3)main(){int a=9;a+=a-=a+a; /*包含复合的赋值运算符的赋值表达式*/printf("%d\n",a);}思考:赋值表达式a+=a-=a+a的求解步骤?第一步:a=a-(a+a)=-9 第二步a=a+a=18(4)main(){int k=-1;printf("%d,%u\n",k,k);}思考:-1在内存中的存储形式?取反加一11111111111111111111111111111111(32个)(5)main(){unsigned x1;int b=-1;x1=b; /*有符号数据传送给无符号变量*/printf("%u",x1);}(6)main(){int a=3,b=4,c=5;printf("%d\n",(!(a<b))&&(c=c+1));printf("%d",c);}思考:若将第一个1(换行)6(7)main(){ int a=1,b=2,c=3;if(c=a) ; printf("%d\n",c);else printf("%d\n",b);}2、编程序并上机调试运行(包括题目及要求、流程图、程序清单、测试数据及结果)(1)将一个百分制成绩转换成等级制成绩,百分制与等级制的对应具体要求如下:1)用switch语句实现该功能;2)用键盘输入百分制成绩,输入前要有提示信息,对于不合理的数据应输出错误信息;3)输出结果应包含百分制成绩和成绩等级;4)分别输入成绩-10,30,60,68,75,83,95,102,查看记录运行结果。
C语言程序设计实验-答案

C语言程序设计实验-答案(总17页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小---前言-/*非常感谢度娘以及各位网上C语言高手的支持,才能让敝人完成此文档的整理。
本文档集合了本人、度娘、众网友的力量,其中代码的正确率约为90%(不正确的有标注)。
为回报度娘及众网友的帮助,本文档免费下载。
*//*配“电子科技大学出版社(周信东主编)”的C语言程序设计实验*//*努力吧,骚年以及学妹们!*//*整理ed by 口玉刀一 of GUET.*/=====================实验一 C语言程序初步=====================已知a=5,b=4,c=6,求出s并换行#include""main(){int a,b,c,s;a=5;b=4;c=6;s=(a+b+c)/3;printf("a=%d,b=%d,c=%d\n,s=%d",a,b,c,s);}输入一个数字求他的平方#include<>main(){int r,s;scanf("%d",&r);s=r*r;printf("s=%d\n",s);}(1)#include<>main(){printf(" *\n");printf("***\n");printf(" *\n");}(2)main(){int v;int a,b,c;(2)#include<>main(){int m;double x;scanf("%d",&m);x=*m*m;printf("%f",x);}入a,b,c三个变量,计算数学公式(a*b)/cmain(){int a,b,d;float s,c;scanf("%d%d%f",&a,&b,&c);d=a*b;s=d/c;printf("%f",s);}=================================实验三顺序结构和输入输出方法=================================(1)main(){int m=345,t;float n=;t=*100;printf("m=%d,n*100=%d\n",m,t);}(2)main(){int a,b,c,s,v;scanf("%d%d%d",&a,&b,&c);s=a*b;v=a*b*c;printf("%d,%d,%d\n",a,b,c);printf("s=%d,v=%d\n",s,v);}(1)main(){int m,n;float x=,y=;scanf("%d,%d",&m,&n);printf("%6d,%6d",m,n); /*每个数的输出宽度为6,两个数之间逗号建个。
c程序设计实验报告参考答案

二、实验内容
classarea_c1{
protected:
double height;
double width;
public:
area_c1(double r,double s)
{height=r;width=s;}
virtual double area()=0;
a) 使用成员函数实现对数据的输入、输出;
b) 使用构造函数和析构函数实现对数据的输入、输出。
三、实验要求
1、硬件设备:奔腾Ⅱ及以上计算机,局域网。
2、软件环境:WINDOWS XP、VC++6.0。
3、实验课前预习,课后及时完成实验报告。
4、实验过程及记录按题目格式要求填写在代码清单中。
四、代码清单或实验步骤
this.age=age;
}
E:\vctest\test2\main.cpp(25) : error C2228: left of '.num' must have class/struct/union type
E:\vctest\test2\main.cpp(26) : error C2228: left of '.name' must have class/struct/union type
};
class rectangle:public area_c1
{
public:
rectangle(double r,double s):area_c1(r,s)
{
}
double area()
{
return height*width;
}
c语言实验报告三答案(完整版)

实验三循环控制实验课程名:高级语言程序设计(C)专业班级:学号:姓名:实验时间:实验地点:指导教师:一、实验目的和要求1. 熟练掌握用while语句、do while语句和for语句实现循环的方法。
2. 掌握在程序设计中用循的方法实现一些常用算法。
并进一步学习调试程序的方法。
二、实验内容1、任务名称程序c40101.c求1+…+100,填空,实现该功能。
(1、)源代码:#include<stdio.h>int main(){int s,i;s=0;for(i=1;i<=100;i++)s=s+i;printf("1+2+...+100=%d\n",s);return 0;}运行结果:(需要截图)(2、)源代码:#include<stdio.h>int main(){int s=0,i=1;while(i<=100){s+=i;i++;}printf("1+2+...+100=%d\n",s);return 0;}运行结果:运行结果分析:2、任务名称:分别运行这两个程序,若输入7,这两个程序的结果分别是多少?若输入12,这两个程序的结果又分别是多少?比较为什么会有这样的区别?(1、)源代码:#include <stdio.h>void main(){ int i,n,sum=0;scanf("%d",&i);n=i;while(i<=10){ sum+=i;i++;}printf("%d+...+10=%d\n",n,sum);}运行结果:(需要截图)(2、)源代码:#include <stdio.h>int main(){ int i,n,sum=0;scanf("%d",&i);n=i;do{ sum+=i;i++;} while(i<=10);printf("%d+...+10=%d\n",n,sum);return 0;}运行结果:运行结果分析:3、任务名称:下面程序,若输入12345,分析输出结果是多少?源代码:#include <stdio.h>void main( ){ long data;scanf("%ld",&data);while(data){ printf("%ld,",data%10);data=data/10;}}运行结果:(需要截图)运行结果分析:4、任务名称:程序c40104.c 实现求Fibonacci 数列的前n 个数。
(最新版)C程序设计实验报告(答案)

《C程序设计》实验报告班级:学号:学期:学年第二学期姓名:《C程序设计》实验报告学期:学年第二学期教师姓名:教研室:软件工程教研室实验1 熟悉C语言程序的运行环境,掌握数据描述1.1 实验目的1.了解在开发环境中如何编辑、编译、连接和运行一个C语言程序。
2.通过运行简单的C语言程序,初步了解C语言程序的结构特点。
3.掌握C语言数据类型的概念,学会使用C语言的相关运算符构成表达式。
1.2 实验预习1.熟悉Turbo C的启动和退出及Turbo C中的编辑、编译、连接和运行命令。
2.了解下列命令及函数:include<stdio.h>、main、printf、scanf。
3.熟悉Turbo C环境下每个菜单项的功能及相关命令对应的操作。
4.各种数据类型变量的定义形式及取值范围;熟悉下列标识符的含义。
int、short (int)、long (int)、unsigned (int)、float、double、char、void 5.各类运算符的优先级和结合规则。
6.常量与变量的区别和联系。
表1-1 Turbo C主菜单项功能表表1-2 Turbo C提示行功能表表1-3 Turbo C快捷操作表4.熟悉Turbo C环境下的块操作。
表1-4 基本光标命令功能操作表表1-5 快速光标移动命令功能操作表表1-6 插入与删除命令功能操作表表1-7 块操作命令功能操作表表1-8 其他命令功能操作表1.3 实验任务1.输入下列程序,记录在Turbo c 下的操作方法。
#include <stdio.h>main(){printf(“I am a student!”);}环境的启动操作:我的电脑—磁盘(各机房磁盘目录有所不同)—Turbo C文件夹—tc。
Exe 。
程序的编译方法:快捷键是 Alt+F9 ;菜单操作是Compile—compile to OBJ程序的保存方法:快捷键是 F2 ;菜单操作是 File--Save程序的运行方法:快捷键是Ctrl+F9;菜单操作是 Run运行结果的查看:快捷键是 Alt+F5 ;菜单操作是 Run—User Screen环境的退出操作:快捷键是 Alt+X ;菜单操作是 File--Quit2. 预测结果并上机验证3.运行程序输入5,-5;预测结果并上机验证4.现欲将编好的上例程序以文件名my.c保存至当前目录下,请阐述方法;当重新进入TC 对其进行简单修改后欲将其另存至C盘SY文件夹下(SY文件夹请自行创建),叙述方法。
《C语言程序开发》实验报告和参考答案

《C语言程序开发》实验报告和参考答案1实实验报告课程名称:C语言程序开发学生姓名:学生学号:专业班级:指导教师:实验日期:2目录实验一循环结构程序设计(一)求1+2+3+.......+100,1100nn(二)输出100~200之间的不能被3整除的数。
实验二数组及其应用(一)有一个3×4的矩阵,要求编程序求出其中值最大的那个元素的值,以及其所在的行号和列号。
(二)输入一行字符,统计其中有多少个单词,单词之间用空格分隔开。
实验三函数及其应用(一)有5个学生坐在一起,问第5个学生多少岁,他说比第4个学生大2岁。
问第4个学生岁数,他说比第3个学生大2岁。
问第3个学生,又说比第2个学生大2岁。
问第2个学生,说比第1个学生大2岁。
最后问第1个学生,他说是10岁。
请问第5个学生多大。
(二)用选择法对数组中10个整数按由小到大排序,一维数组名作函数参数。
实验四指针及其应用(一)将若干字符串按字母顺序(由小到大)输出。
(二)有a个学生,每个学生有b门课程的成绩。
要求在用户输入学生序号以后,能输出该学生的全部成绩。
用指针函数来实现。
3实验一循环结构程序设计实验题目:(一)求1+2+3+.......+100,1100nn(二)输出100~200之间的不能被3整除的数。
实验目的1.掌握循环语句的执行过程及用法2.初步掌握循环程序设计的基本技巧3.掌握用while语句,do-while语句和for语句实现循环的方法4.掌握多重循环的使用(一)实验步骤1.题目分析2.源程序代码3.运行结果(二)实验步骤:1.题目分析源程序代码3.运行结果4实验二数组及其应用实验题目:(一)有一个3×4的矩阵,要求编程序求出其中值最大的那个元素的值,以及其所在的行号和列号。
(二)输入一行字符,统计其中有多少个单词,单词之间用空格分隔开。
实验目的1.掌握一维数组的定义及其元素的引用方法2.掌握利用一维数组实现一些常用算法的基本技巧3.掌握二维数组的定义及其应用4.掌握字符数组和字符串函数的使用5.掌握有关二维数组的基本编程技巧(一)实验步骤:1.题目分析2.源程序代码:3.运行结果(二)实验步骤:1.题目分析2.源程序代码3.运行结果5实验三函数及其应用实验题目:(一)有5个学生坐在一起,问第5个学生多少岁,他说比第4个学生大2岁。
C实验报告答案

C程序设计初步一、实验目的(1) 熟悉C语言程序的运行环境(VC++ 。
(2) 掌握C语言程序的上机步骤,了解运行C程序的方法。
(3) 掌握C语言程序的书写格式和C语言程序的结构。
二、实验内容(均要求给出运行结果)1.程序改错题(1) 以下程序实现计算x×y的值并将结果输出。
请改正程序中的错误。
#include ""void main()/**********FOUND**********/{ int x=y=4;z=x*y;/**********FOUND**********/printf("z=%d/n", Z);}答案:=======(答案1)=======int x=,4,y=4,z;=======(答案2)=======printf("z=%d\n", z);(2) 以下程序实现输入圆的半径,求圆的周长。
请改正程序中的错误。
#include ""void main(){ int r;float l;printf("Enter r:");scanf("%d", &r);/**********FOUND**********/l=2πr/**********FOUND**********/printf("l=%d\n",l);}答案:=======(答案1)=======l=2**r;=======(答案2)=======printf("l=%f\n", l);2.程序填空题(1) 下面程序能对两个整型变量的值进行交换,请填空。
#include ""void main(){ int a=3,b=4,t;t=a;/***********SPACE***********/【】;/***********SPACE***********/【】;printf("a=%d,b=%d\n",a,b);}答案:=======(答案1)=======a=b=======(答案2)=======b=t(2) 下面程序不用第三个变量,实现两个数的对调操作。
C语言实验报告 实验四 参考答案

实验四循环结构程序设计2(参考答案)(1)编写程序sy4-1.c,输入n,计算并输出如下多项式的值:S n=1+1/2!+1/3!+1/4!+…+1/n!。
例如输入n为15时,输出1.718282。
算法分析:第一项可以看成1/1!,用循环控制累加n个分式,分式的分母是i!,分子固定为1。
参考答案:# include <stdio.h>void main(){double s=0,p=1;int i,n;scanf("%d",&n);for(i=1;i<=n;i++){p = p * i ; //计算分母i!s = s + 1 / p ; //累加}printf("s=%lf\n",s);}运行结果:(2)编写程序sy4-2.c,输入n,根据以下公式计算s:,例如当n=11时,结果为1.833333。
算法分析:该多项式的分母是累加。
参考答案:# include <stdio.h>void main(){double sn=0,s=0;int i,n;scanf("%d",&n);for(i=1;i<=n;i++){s = s + i ; //计算分母1~i的累加和sn = sn + 1 / s ;}printf("sn=%lf\n",sn);}运行结果:(3)编写程序sy4-3.c,计算3~n之间所有素数的平方根之和,要求:输入n,输出结果。
例如,输入n 的值是100,则输出结果是148.874270。
注意n应在2~100之间。
算法分析:穷举3~n之间的数找素数,若是素数则累加她的平方根。
参考答案:# include <stdio.h># include <math.h>void main(){int i,j,n,flag;double s=0;scanf("%d",&n);for(i=3;i<n;i++) //穷举3~n之间找素数{flag=1; //假设当前的i是素数,标志变量设为1for(j=2;j<i;j++) //穷举要判断是否是素数的i的除数,范围2~i-1if(i%j==0) //若i能被j整除,则不是素数{ flag=0; break; } //标志变量改为0,并终止循环if( flag == 1 )s = s + sqrt( i ); //若i是素数,则累加sqrt(i)}printf("s=%f\n",s);}运行结果:(4)编写程序sy4-4.c,根据以下公式求p的值,(m与n为两个正整数且m>n)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一熟悉C语言程序开发环境及数据描述
四、程序清单
1.编写程序实现在屏幕上显示以下结果:
Thedressislong
Theshoesarebig
Thetrousersareblack
答案:
#include<stdio.h>
main()
{
printf("Thedressislong\n");
printf("SunRose键盘 ¥50.5\n");
}
2.编写程序:a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。
答案:
#include<stdio.h>
main()
{
inta,b,c,x,y;
a=150;
b=20;
c=45;
x=a/b;
y=a/c;
printf("a/b的商=%d\n",x);
a/b的商=7
a/c的商=3
a/b的余数=10
a/c的余数=15
4.编译、连接无错,运行后屏幕上显示以下结果:
c=-10
实验二顺序结构程序设计
四、程序清单
1
问题1D。
问题2改printf("%c,%c,%d\n",a,b,c);这条语句
改成:printf("%c%c%d\n",a,b,c);
问题3改scanf("%c%c%d",&a,&b,&c);这条语句
intmain()
{
inta,b,c;
printf("Enteraandb:");
scanf("%o%o",&a,&b);
c=a+b;
printf("d:%d\n",c);
printf("x:%x\n",c);
return0;
}
2(2)编写程序:从键盘输入两个实数a和x,按公式计算并输出y的值:
#include<stdio.h>
输出:26
1a
2(2)输入:10
输出:2.000000
实验三选择结构程序设计
四、设计流程(算法描述)
(请写出上机内容2(2)题的算法描述)
主要是两两比较,然后得出最大的数
五、程序清单
2(1)输入整数x和a,计算并输出下列分段函数f(x)的值(保留2位小数),请调用log函数求自然对数,调用fabs函数求绝对值。
y=0;
printf("a=%d,f(%d)=%.2f\n",a,x,y);
}
(2)输入a、b、c三个整数,输出最大数。
#include<stdio.h>
main()
{
inta,b,c,x;
scanf("%d%d%d",&a,&b,&c);
if(a>=b)
x=a;
else
x=b;
if(x<c)
x=c;
main()
{
inta,b,c;
a=0;
b=-10;
c=(a>b)?b:a;
printf("c=%d\n",c);
}
五、调试和测试结果
1.编译、连接无错,运行后屏幕上显示以下结果:
Thedressislong
Theshoesarebig
Thetrousersareblack
3、编译、连接无错,运行后屏幕上显示以下结果:
{
inta,b,c,s;
scanf("%d%d%d",&a,&b,&c);
s=a+b+c;
printf("%d=%d+%d+%d\n",s,a,b,c);/*输出s=a+b+c*/
printf("%d+%d+%d=%d\n",a,b,c,s);/*输出a+b+c=s*/
}
五、调试和测试结果
2(1)输入:1214
#include<math.h>
intmain()
{
floata,x,y;
scanf("%f%f",&a,&x);
y=pow(a,5)+sin(a*x)+exp(a*x)+log(a+x);
printf("y=%f\n",y);
return0;
}
3
正确的程序为:
#include<stdio.h>
main()
printf("nisequalto0\n");
else
printf("nisgreater0\n");
}
六、调试和测试结果
2(1)Enteraandx:56
a=5,f(6)=0.24
Enteraandx:55
a=5,f(5)=0.00
2(2)输入:321输出:themaxnumberis:3
输入:231输出:themaxnumberis:3
改为:scanf("%c,%c,%d",&a,&b,&c);
问题4改printf("%c,%c,%d\n",a,b,c);这条语句
改成:printf("\’%c\’\’%c\’%d\n",a,b,c);
2(1)从键盘输入两个八进制数,计算两数之和并分别用十进制和十六进制数形式输出。
#include<stdio.h>
printf("Theshoesarebig\n");
printf("Thetrousersareblack\n");
}
2
正确的程序为:
#include<stdio.h>
main()
{
printf("商品名称 价格\n");
printf("TCL电视机 ¥7600\n");
printf("美的空调 ¥2000\n");
输入:123输出:themaxnumberis:3
实验四循环结构程序设计
四、设计流程(算法描述)
(请写出上机内容2的算法描述)
首先求出每一个给定数的所有因子和,然后从2到5000循环,那一个数x与因子之和相等,就是完数。
printf("a/c的商=%d\n",y);
x=a%b;
y=a%c;
printf("a/b的余数=%d\n",x);
printf("a/c的余数=%d\n",y);
}
4.设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a赋给c。(提示:用条件运算符)
答案:
#include<stdio.h>
程序为:
#include<stdio.h>
#include<math.h>
main()
{intΒιβλιοθήκη ,a;doubley;printf("Enteraandx:");
scanf("%d%d",&a,&x);
if(fabs(x)!=a)
y=log(fabs((a+x)/(a-x)))/(2*a);
else
printf("themaxnumberis:%d\n",x);
return0;
}
3
正确程序为:
#include<stdio.h>
main()
{
doublen;
printf("Entern:");
scanf("%lf",&n);
if(n<0)
printf("nislessthan0\n");
elseif(n==0)