C语言上机报告1.docx
- 文档编号:30479417
- 上传时间:2023-08-15
- 格式:DOCX
- 页数:18
- 大小:89.65KB
C语言上机报告1.docx
《C语言上机报告1.docx》由会员分享,可在线阅读,更多相关《C语言上机报告1.docx(18页珍藏版)》请在冰豆网上搜索。
C语言上机报告1
一、实验内容
1.C语言出现的历史背景及特点
2.简单的C程序介绍
3.C程序的上机步骤
4.算法的概念和特性
5.算法的描述
6.C的数据类型、常量、变量
7.整型、实型、字符型数据
8.变量赋初值、各类数值型数据之间的混合运算
9.算术运算符和算术表达式、赋值运算符和赋值表达式、逗号运算符和逗号表达式
二、实验目的
1.了解C语言出现的历史背景;
2.了解C语言的特点;
3.熟悉C语言程序结构;
4.熟悉C程序的运行环境和上机步骤。
5.理解算法的概念
6.了解算法的特性
7.掌握用流程图表示方法
8.掌握C语言的基本数据类型,熟悉如何定义一个整型、字符型和实型的变量,以及对它们赋值的方法。
9.了解C语言的运算符;
10.掌握常用运算符的结合性、优先级;
11.掌握不同类型数据之间赋值的规律。
三、代码及实现
(见下页)
习题一
4.自学本书附录A,熟悉上机运行C程序的方法,上机运行本章三个例题。
例1.1要求在屏幕上输出以下一行信息:
ThisisaCprogram.
#include
intmain()
{
printf("ThisisaCprogram.\n");
return0;
}
例1.2求两个整数之和。
#include
intmain()
{
inta,b,sum;
a=123;
b=456;
sum=a+b;
printf("sumis%d\n",sum);
return0;
}
例1.3求两个整数中的较大者。
#include
intmain()
{
intmax(intx,inty);
inta,b,c;
scanf("%d,%d",&a,&b);
c=max(a,b);
printf("max=%d\n",c);
return0;
}
intmax(intx,inty)
{
intz;
if(x>y)z=x;
elsez=y;
return(z);
}
5.请参照本章例题,编写一个C程序,输入以下信息:
#include
intmain()
{
printf("**********************\n");
printf("Verygood!
\n");
printf("***********************\n");
return0;
}
6.编写一个C程序,输入a,b,c三个值,输出其中最大者。
#include
intmain()
{
intMax(intx,inty);
inta,b,c,max;
printf("pleaseenterthreenumbers:
\n");
scanf("%d,%d,%d",&a,&b,&c);
if(Max(a,b)>c)
{
max=Max(a,b);
}
else
{
max=c;
}
printf("Themaxnumberis:
%d\n",max);
return0;
}
intMax(intx,inty)
{
intz;
if(x>y)
z=x;
else
z=y;
returnz;
}
7.上机运行以下程序,注意注释的方法。
分析运行结果,掌握注释的用法。
(1)
#include
intmain()
{
printf("Howdoyoudo!
\n");//这是行注释,注释范围从//起至换行符止
return0;
}
(2)把第4行改为printf("Howdoyoudo!
\n");/*这是块注释*/
#include
intmain()
{
printf("Howdoyoudo!
\n");/*这是块注释*/
return0;
}
(3)把第4行改为以下两行printf("Howdoyoudo!
\n");/*这是块注释,如在本行内写不完,可以在下一行继续写。
这部分内容均不产生目标代码*/
#include
intmain()
{
printf("Howdoyoudo!
\n");/*这是块注释,如在本行内写不完,可以在下一行继续写。
这部分内容均不产生目标代码*/
return0;
}
(4)把第4行改为//printf("Howdoyoudo!
\n");
#include
intmain()
{
//printf("Howdoyoudo!
\n");
return0;
}
(5)把第4行改为printf("//Howdoyoudo!
\n");
#include
intmain()
{
printf("//Howdoyoudo!
\n");//在输出的字符串中加入//
return0;
}
(6)用块注释符把几行语句都作为注释
/*printf("Howdoyoudo!
\n");
return0;*/
#include
intmain()
{
/*printf("Howdoyoudo!
\n");
return0;*/
}
习题二
5.用N-S图表示第4题中各题的算法。
(1)有两个瓶子A和B,分别盛放醋和酱油,要求将他们互换(即A瓶原来盛醋,现改成酱油,B瓶则相反)。
(2)依次将10个数输入,要求输出其中最大的数。
(3)有3个数a,b,c,要求按大小顺序把它们输出。
小
(4)求1+2+3+…+100。
(5)判断一个数n能否同时被3和5整除。
输入n
n/15的余数r
r=0?
是
否
输出“能同时
被3和5整除”
输出“不能同时
被3和5整除”
结束
(6)将100~200之间的素数输出。
(7)求两个数m和n的最大公约数。
(8)求方程式
的根。
分别考虑:
①有两个不等的实根;
②有两个相等的实根。
8.用自顶向下、逐步细化的方法进行以下算法的设计:
(1)输出1900~2000年中是闰年的年份,符合下面两个条件之一的年份是闰年:
①能被4整除但不能被100整除;
②能被100整除且能被400整除。
(2)求
的根。
分别考虑
大于0、等于0和小于0这三种情况。
(3)输入10个数,输出其中最大的一个数。
习题三
2.存款利息的计算。
有1000元,想存五年,可按以下五种办法存:
(1)一次存5年期。
(2)先存2年期,到期后将本息再存3年期。
(3)先存3年期,到期后将本息再存2年期。
(4)存一年期,到期后将本息再存1年期,连续存5次。
(5)存活期存款。
活期利息每一季度结算一次。
2007年12月的银行存款利息如下:
1年期定期存款利息为4.14%;
2年期定期存款利息为4.68%;
3年期定期存款利息为5.4%;
5年期定期存款利息为5.85%;
活期存款利息为0.72%(活期存款每一季度结算一次利息)。
如果r为年利率,n为存款年数,则计算本息和的公式为
1年期本息和:
;
n年期本息和:
;
存n次1年期的本息和:
;
活期存款本息和:
。
说明:
是一个季度的本息和。
4.分析下面的程序:
#include
intmain()
{charc1,c2;
c1=97;
c2=98;
printf("c1=%c,c2=%c\n"c1,c2);
printf("c1=%d,c2=%d\n",c1,c2);
return0;
}
(1)运行时会输出什么信息?
为什么?
#include
intmain()
{charc1,c2;
c1=97;
c2=98;
printf("c1=%c,c2=%c\n",c1,c2);
printf("c1=%d,c2=%d\n",c1,c2);
return0;
}
(2)如果将程序第4,5行改为
c1=197;
c2=198;、
运行时会输出什么信息?
为什么?
#include
intmain()
{charc1,c2;
c1=197;
c2=198;
printf("c1=%c,c2=%c\n",c1,c2);
printf("c1=%d,c2=%d\n",c1,c2);
return0;
}
(3)如果将程序第3行改为
Intc1,c2;,
运行时会输出什么信息?
为什么?
#include
intmain()
{intc1,c2;
c1=97;
c2=98;
printf("c1=%c,c2=%c\n",c1,c2);
printf("c1=%d,c2=%d\n",c1,c2);
return0;
}
5.用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1=’A’,c2=’a’。
问在键盘上如何输入?
#include
intmain()
{
inta,b;
floatx,y;
charc1,c2;
scanf("a=%db=%d",&a,&b);
scanf("a=%f%e",&a,&y);
scanf("%c%c",&c1,&c2);
return0;
}
6.请编程序将“China”译成密码,密码规律是:
用原来的字母后面第4个字母代替原来的字母。
例如,字母“A”后面第4个字母是“E”,用“E”代替“A”。
因此,“China”应译为“Glmre”。
请编一程序,用赋初值的方法使c1,c2,c3,c4,c5这5个变量的值分别’C’,’h’,’i’,’n’,’a’,经过运算,使c1,c2,c3,c4,c5分别变为’G’,’l’,’m’,’r’,’e’。
分别用putchar函数和printf函数输出这5个字符。
#include
intmain()
{
charc1,c2,c3,c4,c5,a1,a2,a3,a4,a5;
c1=67;
c2=104;
c3=105;
c4=110;
c5=97;
printf("%c",c1);
printf("%c",c2);
printf("%c",c3);
printf("%c",c4);
printf("%c",c5);
a1=c1+4;
a2=c2+4;
a3=c3+4;
a4=c4+4;
a5=c5+4;
printf("%5c",a1);
printf("%c",a2);
printf("%c",a3);
printf("%c",a4);
printf("%c\n",a5);
return0;
}
7.设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。
用输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字。
请编程序。
8.编程序,用getchar函数读入两个字符给c1和c2,然后分别用putchar函数和printf函数输出这两个字符。
思考以下问题:
(1)变量c1和c2应定义为字符型还是整型?
或二者皆可?
(二者皆可)
(2)要求输出c1和c2值的ASCII码,应如何处理?
用putchar函数还是printf函数?
(printf函数)
(3)整型变量与字符变量是否在任何情况下都可以互相代替?
如:
charc1,c2;
与
intc1,c2;
是否无条件地等价?
(否)
四、运行结果分析
由于编码过程中有些失误,有的程序还不是很熟悉,所以运行结果不是很理想。
但在今后的学习中,我相信自己会做得更好。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 上机 报告