C语言集中上机实验报告.docx
《C语言集中上机实验报告.docx》由会员分享,可在线阅读,更多相关《C语言集中上机实验报告.docx(11页珍藏版)》请在冰豆网上搜索。
C语言集中上机实验报告
C语言集中上机实验报告
学生:
学号:
班级:
专业:
数字媒体技术
重庆邮电大学移通学院
2015年3月7日星期六
目录
第一章循环3
1.1实验目的3
1.2实验要求3
1.3实验基本内容3
1.3.1题目一3
1.3.2题目二3
第二章数组5
2.1实验目的5
2.2实验要求5
2.3实验基本内容5
第三章函数6
3.1实验目的6
3.2实验要求6
3.3实验基本内容6
第四章指针7
4.1实验目的7
4.2实验要求7
4.3实验基本内容7
集中上机总结9
第一章循环
1.1实验目的
(1)掌握一维数组和二维数组的定义、赋值和输入输出的方法
(2)掌握字符数组和字符串函数的使用;
(3)掌握与数组有关的算法。
1.2实验要求
(1)在报告中记录建立、保存C程序实习过程。
(2)完成典型题目,分析遇到的困难和实验中的收获。
1.3实验基本内容
1.3.1题目一
打印出以下图案
*
***
*****
*******
*****
***
*
(1)题目分析:
先把菱形分成两个部分来看待,第一部分为前四行,第二部分为后三行。
然后利用双重for循环,第一层for循环控制行,第二层for循环控制列。
(2)程序:
#include
#include
intmain(){
inti,j,k;
for(i=1;i<=4;i++){
for(j=1;j<=4-i;j++)
printf("");
for(k=2*i-1,j=0;jprintf("*");
printf("\n");
}
for(i=3;i>=1;i--){
for(j=1;j<=4-i;j++)
printf("");
for(k=2*i-1,j=0;jprintf("*");
printf("\n");
}
return0;
}
(3)运行结果:
(4)
1.3.2题目二
编写程序实现输入整数n,输出如下所示由数字组成的菱形。
(图中n=5)
1
121
12321
1234321
123454321
1234321
12321
121
1
(1)题目分析:
这道题是循环题目。
用For循环来做,双重循环。
(2)程序:
#include
main()
{
inti,j,k,p,t;
for(i=1;i<=5;i++)
{
for(p=5;p>i;p--)
printf("");
for(j=1;j<=2*i-1;j++)
{
k=j;
if(j<=i)
{
printf("%d",k++);
t=k-1;
}
else
printf("%d",--t);
}
printf("\n");
}
for(i=5;i>1;i--)
{
for(p=5;p>=i;p--)
printf("");
for(j=3;j<=2*i-1;j++)
{
k=j-2;
if(j-1<=i)
{
printf("%d",k++);
t=k-1;
}
else
printf("%d",--t);
}
printf("\n");
}
}
(3)运行结果:
2
1、A2、B3、C4、k=8,b=-25、a=86、k=36
第二章数组
2.1实验目的
(1)掌握一维数组和二维数组的定义、赋值和输入输出的方法
(2)掌握字符数组和字符串函数的使用;
(3)掌握与数组有关的算法。
2.2实验要求
(1)在报告中记录建立、保存C程序实习过程。
(2)完成典型题目,分析遇到的困难和实验中的收获。
2.3实验基本内容
2.3.1题目一
打印以下图案:
*****
*****
*****
*****
*****
(1)题目分析:
这道题是仍然用到了循环,另外还用到了数组
(2)程序:
#include
voidmain()
{
chara[5]={'*','*','*','*','*'};
inti,j,k;
charspace='';
for(i=0;i<=5;i++)
{
printf("\n");
for(j=1;j<=3*i;j++)
printf("%1c",space);
for(k=0;k<=5;k++)
printf("%3c",a[k]);
}
printf("\n");
}
(3)运行结果:
2.3.2题目二
输入3×3的数组,编写程序实现:
(1)求出对角线上各元素的和;
(2)求出对角线上行、列下标均为偶数的各元素的积;
(3)找出对角线上其值最大的元素和它在数组中的位置。
(1)题目分析:
这道题为输入选择和输出,用循环和数组进行求和和求积运算。
(2)程序:
#include
voidmain()
{
floata[4][4],sum=0,sum1=1,max;
inti,j,b;
printf("请输入数组4*4个数:
\n");
for(i=0;i<4;i++)
for(j=0;j<4;j++)
scanf("%f",&a[i][j]);
for(i=0;i<4;i++)
sum=sum+a[i][i];
printf("sum=%6.2f\n",sum);
for(i=0;i<4;i++)
if(i%2==0)
sum1=sum1*a[i][i];
printf("sum1=%6.2f",sum1);
max=a[0][0];
b=0;
for(i=1;i<4;i++)
if(max{max=a[i][i];
b=i;
}
printf("max=%6.2f,%d",max,b);
}
(3)运行结果:
第三章函数
3.1实验目的
(1)掌握定义函数的方法;
(2)掌握函数实参与形参的对应关系以及“值传递”的方式;
(3)掌握函数的嵌套调用和递归调用的方法;
(4)掌握全局变量和局部变量动态变量、静态变量的概念和使用方法。
(5)学习对多文件程序的编译和运行。
3.2实验要求
(1)在报告中记录建立、保存C程序实习过程。
(2)完成典型题目,分析遇到的困难和实验中的收获。
3.3实验基本内容
第四章指针
4.1实验目的
(1)掌握指针的概念,掌握定义和使用指针变量的方法。
(2)掌握使用数组的指针和指向数组的指针变量。
(3)掌握使用字符串的指针和指向字符串的指针变量。
(4)学习对多文件程序的编译和运行。
4.2实验要求
(1)在报告中记录建立、保存C程序实习过程。
(2)完成典型题目,分析遇到的困难和实验中的收获。
4.3实验基本内容
集中上机总结
通过