云文档网 - 专业文章范例文档资料分享平台

表达式与标准输入与输出实验实验报告

来源:网络收集 时间:2024-05-05 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xuecool-com或QQ:370150219 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

C语言程序设计实验报告

专业:计算机科学与技术 班级:计算机科学与技术创新实验班 日期:2011-11-23 成绩: 实验组别: 第 次实验: 指导教师: 学生姓名: 学号: 同组人姓名:

实验名称:表达式输入与输出实验 一、 实验目的:

1.熟练掌握各种运算符的运算功能,操作数的类型,运算结果的类型及运算过程中的类型转换,重点是C语言特有得运算符,例如位运算符,问号运算符,逗号运算符等;熟练运算符的优先级和结合性。

2.掌握getchar,putchar,scanf和printf函数的用法。 3.掌握简单C程序(顺序结构程序)的编写方法。

二、 实验内容:

1.源程序改错

下面给出了一个简单C语言程序例程,用来完成以下工作: 1.输入华氏温度f,将它转换成摄氏温度c后输出; 2.输入圆的半径值r,计算并输出圆的面积s;

3.输入短整数k、p,将k的高字节作为结果的低字节,p的高字节作为结果的高字节,拼成一个新的整数,然后输出;

在这个例子程序中存在若干语法和逻辑错误。要求在计算机上对这个例子程序进行调试修改,使之能够正确完成指定任务。

程序代码:

#include #define PI 3.14159; voidmain( void ) {

int f; short p,k; double c,r,s;

/* for task 1 */

printf(“Input Fahrenheit:”); scanf(“%d”,f) ; c = 5/9*(f-32) ;

printf(“\\n %d(F)=%.2f(C)\\n\\n”,f,c);

/* for task 2 */

printf(\scanf(\s = PI * r * r;

printf(\/* for task 3 */

printf(\scanf(\

newint = (p&0xff00)|(k&0xff00)<<8; printf(\

}

2.源程序修改替换

下面的程序利用常用的中间变量法实现两数的交换,请改用不使用第3个变量的方法实现。改程序中t是中间变量,要求将定义语句中的t删除,修改下划线处的语句,使之实现两数对调的操作。

程序代码:

#include void main() {

int a,b,t;

printf(\ scanf(\ t=a;a=b;b=t;

printf(\}

3.程序设计

编写并上机调试运行能实现以下功能的程序。

(1)编写一个程序,输入字符c,如果c是大写字母,则将c转换成对应的小写,否则c的值不变,最后输出c。

(2)编写一个程序,输入无符号短整数x,m,n(0≤m≤15,1≤n≤16-m),取出x从第m位开始向左的n位(m从右至左编号为0~15),并使其向左端(第15位)靠齐。

(3)IP地址通常是4个用句点分隔的小整数(即点分十进制),如32.55.1.102。这些地址在机器中用无符号长整形表示。编写一个程序,以机器储存的形式读入一个互联网IP地址,对其译码,然后用常见的句点分隔的4部分的形式输出。例如:

整形676879571的二进制表示是00101000 01011000 01011100 11010011。按照8位一组可表示为40 88 98 211。由于CPU处理数据的差异,它的顺序是颠倒的,所以最终格式为211.92.88.40。

三、 实验步骤及结果:

1.源程序改错 改后程序:

#include #define PI 3.14159 void main(void) {

int f;

int k,p,newint; double c,r,s; /*for task 1*/

printf(\ scanf(\ c=5.0/9.0*(f-32);

printf(\ /*for task 2*/

printf(\

scanf(\ s=PI*r*r;

printf(\ /*for task 3*/

printf(\ scanf(\

newint=(p&0xff00)|(k&0xff00)>>8; printf(\}

2.源程序修改替换 #include void main() {

int a,b,t;

printf(\ scanf(\ a=a+b;b=a-b;a=a-b;

printf(\}

3.程序设计 (1)代码: #include main() {

char c;

c=getchar();

if(c>='A'&&c<='Z') c=c+'a'-'A'; putchar(c); return 0; }

(2)代码: #include #include main() {

unsigned short int x,m,n,newint;

printf(\ scanf(\

newint=(~((0xffff>>m)<>m)<<(16-n))|((x>>m+n)<<(m)); printf(\}

(3)代码: #include \void main () {

unsigned long x; int a,b,c,d;

printf(\ scanf(\

a=(x&(0xff000000))>>24; b=(x&(0xff0000))>>16; c=(x&(0xff00))>>8; d=(x&(0xff));

printf(\}

四、 实验体会:

位运算的实现尽量少用<<与>>用&与|要好一些 &为逻辑乘,|为逻辑加

要注意占位符的使用在scanf和printf中

百度搜索“yundocx”或“云文档网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,云文档网,提供经典综合文库表达式与标准输入与输出实验实验报告在线全文阅读。

表达式与标准输入与输出实验实验报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.yundocx.com/wenku/184539.html(转载请注明文章来源)
Copyright © 2018-2022 云文档网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:370150219 邮箱:370150219@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:7 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219