c程序上机试验报告Word下载.docx
《c程序上机试验报告Word下载.docx》由会员分享,可在线阅读,更多相关《c程序上机试验报告Word下载.docx(14页珍藏版)》请在冰豆网上搜索。
printf("
Hello!
\n"
);
ThisisCprogram!
}
试编译、连接、运行该程序,并按Alt+F5查看运行结果。
运行结果是:
2.输入并调试运行以下程序,查看运行结果(由此结果可以了解到在实验用的微型机上,几种数据类型所占的字节数)。
{
char\t%dbytes\n"
sizeof(char));
short\t%dbytes\n"
sizeof(short));
int\t%dbytes\n"
sizeof(int));
long\t%dbytes\n"
sizeof(long));
float\t%dbytes\n"
sizeof(float));
double\t%dbytes\n"
sizeof(double));
}
3.输入并调试运行以下程序。
{inti,j,m,n;
i=8;
j=10;
m=++i;
n=j++;
%d,%d,%d,%d"
i,j,m,n);
}运行结果是:
将上面程序作以下改动后再运行,观察并比较运行结果:
①将第4行改为:
m=i++;
n=++j;
运行结果是:
②若将程序改为:
{inti,j;
%d,%d"
i++,j++);
}运行结果是:
4.试分析下面程序的运行结果:
#include<
{inti=3,k;
%d,%d\n"
(i++)+(i++)+(i++),i);
i=3;
i,++i+(++i)+(++i));
k=(i++)+(i++)+(i++);
k,i);
实验程序
、结
果
、
分析
5.编程,求365÷
7的商和余数的程序。
教
师
评
阅
成绩:
教师签名:
年月日
实验2最简单的C程序设计
1.掌握C语言中赋值表达式和赋值语句的使用。
2.正确理解、选择输入格式字符所控制的数据对象、数据输入(输出)形式和方法。
3.掌握输出函数printf()和putchar()的用法,能正确使用各种输出格式。
4.掌握输入函数scanf()和getchar()的用法,能正确使用各种输入格式。
2.3、4两题按照题目的要求编写出程序。
3.上机调试程序。
4.详细记录数据的输入、输出信息,按要求写出实验报告。
1.输入并运行以下程序。
{inta;
floatb,c;
scanf("
%2d%3f%4f"
&
a,&
b,&
c);
\na=%d,b=%f,c=%f\n"
a,b,c);
若运行时从键盘上输入0↙
则程序运行结果是:
2.输入并运行以下程序。
{intc;
chard;
c=67;
d='
C'
;
putchar(c);
putchar(d);
putchar('
B'
putchar(66);
程序运行结果是:
3.编程,要求从键盘输入数据,使整型变量a=10,b=8;
字符型变量c1='
A'
c2='
a'
;
实型变量x=3.1,y=64.54。
实验3选择结构程序设计
1.掌握C语言表示逻辑量的方法(以0代表“假”,非0代表“真”)。
2.学会正确使用关系运算符、逻辑运算符及关系表达式、逻辑表达式。
3.熟练掌握各种if语句和switch语句的语法结构和语句功能。
4.结合程序,掌握选择结构程序设计的一般方法,能够用多种方法编写同一程序。
2.对每个程序认真进行语法检查与逻辑检查。
将各程序输入计算机,并进行编译和连接,如果在编译、连接中有错误信息,则要根据这些信息找到程序中的错误所在,然后修改程序,直至正确。
1.输入并调试以下程序:
{inta,b;
Enteraninteger:
"
%d"
a);
b=1;
if(++a<
0)b=-1;
elseif(a==0)b=0;
printf("
a=%d,b=%d\n"
a,b);
运行时,若从键盘上输入-1↙
(x>
0)
(x<
(x=0)
2.编程,计算下列分段函数值:
实验4循环结构程序设计
1.理解循环的概念,熟悉和掌握while语句,do-while语句和for语句实现循环的方法。
2.掌握穷举算法、迭代算法、递推算法等一些常用算法的程序设计方法。
3.理解并掌握break语句和continue语句的语句功能。
4.能正确使用这些语句进行简单程序设计。
1.根据题目要求,进行各种程序测试与验证,注意总结各题的编程思路,并记录结果。
1.输入并调试以下程序:
(1)#include<
{inti=0;
while(i++<
3)printf("
%d\n"
i);
(2)#include<
{inti;
for(i=1;
i<
5;
i++)
{if(i%2)printf("
*"
elsecontinue;
%"
@"
}运行结果是:
2.编程,用公式π/4≈1-
+
-
+…求π的近似值,当某项绝对值小于
时计算结束。
实验5数组
1.理解数组的概念,掌握一维数组和二维数组的定义、存储结构、赋值和输入输出的方法。
2.理解字符串的概念,掌握字符数组和字符串函数的使用。
3.掌握常用的与数组有关的算法,如排序、查找、求极值等。
4.能够用数组的方法,编写一些简单程序。
2.按照题目的要求编写出程序,注意总结各题的编程思路。
1.输入并调试以下程序:
{inta[3],i,j;
for(i=0;
=2;
i++)a[i]=0;
for(j=0;
j<
2;
j++)
a[j]=a[i]+1;
%d,%d,%d\n"
a[0],a[1],a[2]);
{inti,j,h,l,m;
staticintx[3][3]={{3,7,1},{5,7,2},{4,9,1}};
m=x[0][0];
h=0;
l=0;
3;
if(x[i][j]<
m){m=x[i][j];
h=i;
l=j;
}
printf(″%d,%d,%d\n″,m,h,l);
2.从键盘输入10个整数,编程将这些数按从大到小排序并输出。
实验6函数
1.理解函数的概念,掌握C语言定义函数的方法。
2.掌握函数实参与形参的对应关系,以及数据的“传递”方式。
3.掌握函数的嵌套调用和递归调用的方法。
4.掌握全局变量和局部变量、动态变量和静态变量的概念及使用方法,能够用函数方法编写一些简单程序。
func(inta,intb)
{intc;
c=a+b;
returnc;
{intx=3,y=6,z;
z=func((--x,y++,x+y),y);
x=%d,y=%d,z=%d\n"
x,y,z);
{inta[]={2,4,6,8},x=0,i;
for(i=0;
4;
sub(a,x));
sub(p,x)
int*p,x;
{staticintt=3;
x=p[t];
t--;
return(x);
2.编写一个判断素数的函数ifp。
在主函数中调用该函数,求整型数组a[10]中有多少个素数。
实验7指针、结构体、联合与枚举
1.通过实验,进一步理解指针的概念,会定义和使用指针变量、指针数组。
2.学会使用数组的指针和指向数组的指针变量。
3.学会使用字符串的指针和指向字符串的指针变量。
4.掌握结构体类型变量的定义和使用。
5.掌握结构体类型数组的概念和应用。
6.理解链表的概念,学会对链表进行简单操作。
7.掌握联合的概念与使用。
(1)#include<
{charstr[]="
abc"
*p;
p=&
str[5];
puts(p);
(2)#include<
{structdate
{intyear,month,day;
}today;
sizeof(structdate),sizeof(today));
(3)main()
{enumteam{my,your=3,his,her=his+5};
%3d%3d%3d%d\n"
my,your,his,her);
2.有5个学生,包括学生学号(字符型)、姓名(字符型)和3门课成绩(整型),编程完成下面的要求:
(1)计算每个学生的总成绩、平均分,并输出。
(2)将学生成绩按总分从高到低排序并输出,输出项有学生学号、姓名、3门课成绩及总分。
实验8编译预处理、位运算与文件
1.掌握宏定义的方法及宏替换的实质,注意区分宏定义与函数的不同之处。
2.掌握文件包含处理方法、条件编译的方法。
3.掌握按位运算的概念和方法,学会使用位运算符,能够通过位运算实现对某些位的操作。
#defineMIN(x,y)(x)<
(y)?
(x):
(y)
{inti,j,k;
i=1;
j=5;
k=2*MIN(i+3,j-2);
k);
}运行结果是:
(2)#definePR(x)printf("
%3d"
x)
{intj,a[]={1,3,4,6,8,9,10},i=5;
for(j=6;
j>
j--)
{switch(j)
{case3:
case4:
PR(a[i++]);
break;
case5:
PR(a[--i]);
default:
i--;
}
(3)#include<
{unsigneda=0123,b,c,d;
b=a>
>
b=%o\n"
b);
c=(a<
<
3);
c=%o\n"
c);
d=b&
c;
d=%o\n"
d);
2.定义一个带参数的宏,使两个参数的值互换。
在主函数中输入两个数作为使用宏的实参,输出已交换后的两个值。
说明:
在程序主函数中使用宏时只能用两个实参,如SWAP(a,b),不能用三个实参。