C语言程序设计实验报告.docx

上传人:b****4 文档编号:3812086 上传时间:2022-11-25 格式:DOCX 页数:9 大小:16.84KB
下载 相关 举报
C语言程序设计实验报告.docx_第1页
第1页 / 共9页
C语言程序设计实验报告.docx_第2页
第2页 / 共9页
C语言程序设计实验报告.docx_第3页
第3页 / 共9页
C语言程序设计实验报告.docx_第4页
第4页 / 共9页
C语言程序设计实验报告.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

C语言程序设计实验报告.docx

《C语言程序设计实验报告.docx》由会员分享,可在线阅读,更多相关《C语言程序设计实验报告.docx(9页珍藏版)》请在冰豆网上搜索。

C语言程序设计实验报告.docx

C语言程序设计实验报告

《C语言程序设计》实验报告

实验一C程序的运行环境和运行一个C程序的方法

◆实验目的

(1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。

(2)了解在该系统上如何编辑、编译、连接和运行一个C程序。

◆实验内容

(1)调用教材P4例1.1程序,并进行编译和运行。

(2)输入并运行教材P4例1.2程序。

(3)编写并运行教材P12习题1.5。

1.main()

{printf(“Thisisaprogram.\n”);}

运行结果:

Thisisaprogram.

2.main()

{inta,b,sum;

a=123;b=456;

sum=a+b;

printf(“sumis%d\n”,sum);}

运行结果:

sumis579

3.main()

{printf(“***********************\n”);

printf(“Verygood\n”);

printf(“***********************\n”);

}

运行结果:

***********************

Verygood

***********************

实验二数据类型、运算符和表达式

◆实验目的

(1)掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及它们的赋值方法。

(2)学会使用C语言的算术运算符,以及包含这些运算符的表达式,特别是自加和自减运算符的使用。

◆实验内容

(1)输入并运行教材例3.6程序,并进行编译和运行。

(2)编写并运行教材习题3.10,并写出运行结果。

(3)编写并运行教材习题3.7,并写出运行结果。

实验三顺序结构程序设计

◆实验目的

(1)掌握C语言中使用最多的一种语句—赋值语句的使用。

(2)掌握数据的输入输出的方法,能正确使用各种格式的转换符。

◆实验内容

(1)编写并运行教材习题4.8(作业),并写出运行结果。

(2)编写并运行教材习题4.9,写出当F=100时的结果。

实验四选择结构程序设计

◆实验目的

(1)了解C语言表示逻辑量的方法。

(2)学会正确使用逻辑运算符和逻辑表达式。

(3)熟练掌握if语句和switch语句。

◆实验内容

(1)编写并运行教材习题5.5,并写出当输入-1、5、10时的运行结果。

(2)编写并运行教材习题5.6,并写出当输入100、90、80时的运行结果。

实验五循环控制

◆实验目的

(1)熟悉用while语句,do—while语句和for语句实现循环的方法。

(2)掌握在程序设计中用循环的方法实现各种算法。

◆实验内容

(1)输入两个正整数,求其中最大公约数和最小公倍数。

(2)输入一行字符,分别统计出其中的英文字母、空格、数字和其它字符的个数。

(3)打印出所有的“水仙花数”。

实验六数组

◆实验目的

(1)掌握一维数组和二维数组的定义、赋值和输入输出的方法。

(2)掌握字符数组和字符串的使用。

◆实验内容

(1)求一个3×3矩阵的主对角线元素之和。

(2)打印杨辉三角(打印10行)。

(3)将两个字符串连接起来,不要用strcat函数。

实验七函数

◆实验目的

(1)掌握定义函数的方法。

(2)掌握函数的嵌套调用和递归调用的方法。

◆实验内容

(1)编写并运行教材习题8.3。

(2)编写并运行教材习题8.4。

1.main()

{intnumber;

scanf(“%d”,&number);

if(prime(number))

printf(“\n%disaprimenumber.”,number);

else

printf(“\n%disnotaprimenumber.”,number);

}

intprime(intnumber)

{intflag=1,n;

for(n=2;n

if(number%n==0)

flag=0;

return;

}

 

运行结果:

9

9isnotaprimenumber.

 

2.intarray[3][3];

voidconvert(intarray[3][3])

{inti,j,t;

for(i=0;i<3;i++)

for(j=i+1;j<3;j++)

{t=array[i][j];

array[i][j]=array[j][i];

array[j][i]=t;

}

}

main()

{inti,j;

for(i=0;i<3;i++)

for(j=0;j<3;j++)

scanf(“%d”,&array[i][j]);

printf(“\nthearrayis:

\n”)

for(i=0;i<3;i++)

{for(j=0;j<3;j++)

printf(“%5d”,array[i][j]);

printf(“\n”);

}

convert(array);

printf(“theconvertarrayis:

\n”);

for(i=0;i<3;i++)

{for(j=0;j<3;j++)

printf(“%5d”,array[i][j]);

printf(“\n”);

}

}

运行结果:

1

2

3

4

5

6

7

8

9

thearrayis:

123

456

789

theconvertarrayis:

147

258

369

实验八编译预处理

◆实验目的

(1)掌握宏定义的方法。

(2)掌握文件包含的方法。

(3)掌握条件编译的方法。

◆实验内容

(1)定义一个带参的宏,使两个参数的值互换。

在主函数中输入两个数作为使用宏的实参,输出已交换后的两个值。

(2)输入两个整数,求它们相除的余数,用带参的宏来实现,并写出输入为80、29时的结果。

1.#defineSWAP(a,b)t=b;b=a;a=t

main()

{

inta,b,t;

printf(“pleaseinputtwonumbers:

”);

scanf(“%d,%d”,&a,&b);

SWAP(a,b);

print(“theresultis:

a=%d,b=%d\n”,a,b);}

运行结果:

pleaseinputtwonumbers:

3,4

theresultis:

a=4,b=3

2.#defineSURPLUS(a,b)((a)%(b))

main()

{inta,b;

printf(“pleaseinputtwonumbers:

”);

scanf(“%d,%d”,&a,&b);

printf(“a,b相除的余数为:

%d\n”,SURPLUS(a,b));

}

运行结果:

pleaseinputtwonumbers:

80,29

a,b相除的余数为:

22

实验九指针

◆实验目的

(1)掌握指针的概念,会定义和使用指针变量。

(2)学会使用数组的指针和指向数组的指针变量。

(3)学会使用字符串的指针和指向字符串的指针变量。

◆实验内容

(1)输入三个整数,按由小到大的顺序输出,要求用指针实现。

(2)编写并运行教材习题10.3。

 

1.main()

{inta,b,c;

int*pointer_1,*pointer_2,*pointer_3;

printf(“pleaseinputthreenumbers:

”);

scanf(“%d,%d,%d”,&a,&b,&c);

pointer_1=&a;

pointer_2=&b;

pointer_3=&c;

if(a>b)swap(pointer_1,pointer_2);

if(a>c)swap(pointer_1,pointer_3);

if(b>c)swap(pointer_2,pointer_3);

printf(“thesortednumbersare:

%d,%d,%d\n”,a,b,c);

}

Swap(int*p1,int*p2)

{intp;

P=*p1;*p1=*p2;*p2=p;

}

 

运行结果:

pleaseinputthreenumbers:

34,21,25

thesortednumbersare:

21,25,34

 

2.main()

{intnumber[10];

Input(number);/*调用输入10个数的函数*/

max_min_value(number);/*调用交换函数*/

output(number);/*调用输出函数*/

}

voidinput(intnumber[])

{for(i=0;i<10;i++)

scanf(“%d”,&number[i]);

}

voidmax_min_value(intarray[])

{int*max,*min;

int*p,*array_end;

array_end=array+10;

max=min=array;

for(p=array+1;p

if(*p>*max)max=p;

elseif(*p<*min)min=p;

*p=array[0];array[0]=*min;*min=*p;

*p=array[9];array[9]=*max;*max=*p;

return;

}

voidoutput(intarray[])

{int*p;

printf(“10numbersafterexchanged:

”);

for(p=array;p

printf(“%d”,*p);

printf(“%d\n”,array[9]);

}

运行结果:

32,24,56,78,1,98,36,44,29,6

10numberafterexchanged:

1,24,56,78,32,6,36,44,29,98

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1