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
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
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
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
int a,b,t;
printf(\ scanf(\ a=a+b;b=a-b;a=a-b;
printf(\}
3.程序设计 (1)代码: #include
char c;
c=getchar();
if(c>='A'&&c<='Z') c=c+'a'-'A'; putchar(c); return 0; }
(2)代码: #include
unsigned short int x,m,n,newint;
printf(\ scanf(\
newint=(~((0xffff>>m)<
(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中
百度搜索“70edu”或“70教育网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,70教育网,提供经典综合文库表达式与标准输入与输出实验实验报告在线全文阅读。
相关推荐: