c语言实验报告
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
{
char c1,c2;
c1='a';
c2='b';
printf("%c %c\n",c1,c2);
}
运行此程序。
在上面printf语句的下面再增加一个printf语句。
printf("%d %d\n",c1,c2);
再运行,并分析结果。
输出结果如图,编译成功,无错误。
将第3行改为
int c1,c2;
printf("%d,%d\n",a,b);
printf("%u,%u\n",c,d);
}
请对照程序和运行结果分析:
①将一个负整数斌给一个无符号的变t,会得到什么结果。画出它们在内存中的表示形式。
②将一个大于32767的长整数斌给整型变t,会得到什么结果。画出它们在内存中的表示形式。
③将一个长整数赋给无符号变量,会得到什么结果(分别考虑该长整数的值大于或等于65535以及小于65535的情况)。画出它们在内存中的表示形式。
多少桃子。
三、程序调试与问题解决:
1.输入两个正整数,求其中最大公约数和最小公倍数。
编译无错误,运行如上图所示,使用了最简单的算法,清晰易理解,同时注意了编程的格式,在以往编程序时,往往不注意上下对齐等问题,容易出现缺标点等现象,将大括号一级一级对齐后,可以有效地避免出错。
发现一个技巧,打括号时一次打出一对括号,可以减少括号不配对的错误。
①运行程序,注意i,j,m,n各变量的值。分别作以下改动并运行:
②将第6,7行改为:
m=i++; n=++j;
再运行。
③将程序改为:
#include<stdio.h>
void main()
{
int i,j;
i=8;
j=10;
printf("%d,%d\n",i++,j++);
}
④在③的基础上,将printf语句改为:
一、实验目的:
(1)熟练掌握for语句、while语句、do-while语句实现循环的方法;
(2)理解循环嵌套及其使用方法;
(3)掌握break语句与continue语句的使用;
(4)掌握用循环实现一些常用算法(如穷举、迭代、递推等)。
二、实验内容:
1.输入两个正整数,求其中最大公约数和最小公倍数。
得到的是原来正数取存的数
将一个大于32767的长整数斌给整型变t,造成溢出,数据丢失。
可能会溢出,也可能正常。
(4)输人习题3. 10
#include<stdio.h>
void main()
{
int i,j,m,n;
i=8;
j=10;
m=++i;
n=j++;
printf("%d,%d,%d,%d\n",i,j,m,n); }
2.输入一行字符,分别统计出其中的英文字母、空格、数字和其它字符的个数。
3.用牛顿迭代法求方程2X3-4X2+3X-6=0在1.5附近的根。
4.猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过痛,又多吃了一
个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一
天剩下的一半零一个。到第10天早上想再吃时,见只剩一个桃子了。求第一天共摘了
#include<stdio.h>
main ()
{
char c1='a',c2='b',c3='c',c4='\101',c5='\116';
printf("a%c b%c\tc%c\tabc\n",c1,c2,c3);
printf("\t\b%c %c\n",c4,c5);
}
#include<stdio.h>
C语言实验报告
说明
1,所有程序均用VC6.0编译运行,文件名命名为姓名+日期,因为实验存在补做,所以并不是按照日期先后排列的。
2,为了使截图清晰,手动将运行窗口由“黑底白字”改为了“白底黑字”。
实验2数据类型、运算符和表达式
一、实验目的:
(1)掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量、以及对它们赋值的方法。
printf("%d,%d,%d,%d\n",i,j,++i,++j);
#include<stdio.h>
void main()
{
int i,j,m=0,n=0;
i=8; j=10;
m+=i++;
n-=--j;
printf("i=%d,j=%d,m=%d,n=%d\n",i,j,m,n); }
实验5循环控制
2.输入一行字符,分别统计出其中的英文字母、空格、数字和其它字符的个数。
n-=--j;
printf("i=%d,j=%d,m=%d,n=%d\n",i,j,m,n); }
②将第6,7行改为:
m=i++; n=++j;
再运行。
以上程序结果的不同均是由于自增自减运算符引起的,考虑到一个判断技巧,看自增自减运算符时,先将它们从原程序中拿出来,如果++或—在后,就先把值放回去,然后自增自减,如果在前,先自增自减,再把结果放进去。
printf("%d,%d,%d,%d\n",i,j,++i,++j);
⑤再将printf语句改为:
printf("%d,%d,%d,%d\n",i,j,i++,j++);
⑥将程序改为:
#include<stdio.h>
void main()
{
int i,j,m=0,n=0;
i=8; j=10;
m+=i++;
再运行,并分析结果。
再将第4、5行改为
c来自百度文库=a;
c2=b;
再运行,并分析结果。
a,b没有定义,编译报错。
再将第4、5行改为
c1=‘’a‘’;
c2=‘’b‘’;
再运行,并分析结果。
再将第4、5行改为
c1=300;
c2=400;
再运行,并分析结果。
以字符型输出时,输出的将是300,400对应的字符。
(2)输人并运行教材第3章习题3. 6给出的程序
void main()
{
int a,b;
unsigned c,d;
long e,f;
a=100;
b=-100;
e=50000;
f=32767;
c=a;
d=b;
printf("%d,%d\n",a,b);
printf("%u,%u\n",a,b);
printf("%u,%u\n",c,d);
c=a=e; d=b=f;
(2)学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(――)运算符的使用。
(3)掌握C语言的输入和输出函数的使用
(4)进一步熟悉C程序的编辑、编译、连接和运行的过程。
三、程序调试与问题解决:
(1)输人并运行下面的程序
#include<stdio.h>
void main()
char c1,c2;
c1='a';
c2='b';
printf("%c %c\n",c1,c2);
}
运行此程序。
在上面printf语句的下面再增加一个printf语句。
printf("%d %d\n",c1,c2);
再运行,并分析结果。
输出结果如图,编译成功,无错误。
将第3行改为
int c1,c2;
printf("%d,%d\n",a,b);
printf("%u,%u\n",c,d);
}
请对照程序和运行结果分析:
①将一个负整数斌给一个无符号的变t,会得到什么结果。画出它们在内存中的表示形式。
②将一个大于32767的长整数斌给整型变t,会得到什么结果。画出它们在内存中的表示形式。
③将一个长整数赋给无符号变量,会得到什么结果(分别考虑该长整数的值大于或等于65535以及小于65535的情况)。画出它们在内存中的表示形式。
多少桃子。
三、程序调试与问题解决:
1.输入两个正整数,求其中最大公约数和最小公倍数。
编译无错误,运行如上图所示,使用了最简单的算法,清晰易理解,同时注意了编程的格式,在以往编程序时,往往不注意上下对齐等问题,容易出现缺标点等现象,将大括号一级一级对齐后,可以有效地避免出错。
发现一个技巧,打括号时一次打出一对括号,可以减少括号不配对的错误。
①运行程序,注意i,j,m,n各变量的值。分别作以下改动并运行:
②将第6,7行改为:
m=i++; n=++j;
再运行。
③将程序改为:
#include<stdio.h>
void main()
{
int i,j;
i=8;
j=10;
printf("%d,%d\n",i++,j++);
}
④在③的基础上,将printf语句改为:
一、实验目的:
(1)熟练掌握for语句、while语句、do-while语句实现循环的方法;
(2)理解循环嵌套及其使用方法;
(3)掌握break语句与continue语句的使用;
(4)掌握用循环实现一些常用算法(如穷举、迭代、递推等)。
二、实验内容:
1.输入两个正整数,求其中最大公约数和最小公倍数。
得到的是原来正数取存的数
将一个大于32767的长整数斌给整型变t,造成溢出,数据丢失。
可能会溢出,也可能正常。
(4)输人习题3. 10
#include<stdio.h>
void main()
{
int i,j,m,n;
i=8;
j=10;
m=++i;
n=j++;
printf("%d,%d,%d,%d\n",i,j,m,n); }
2.输入一行字符,分别统计出其中的英文字母、空格、数字和其它字符的个数。
3.用牛顿迭代法求方程2X3-4X2+3X-6=0在1.5附近的根。
4.猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过痛,又多吃了一
个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一
天剩下的一半零一个。到第10天早上想再吃时,见只剩一个桃子了。求第一天共摘了
#include<stdio.h>
main ()
{
char c1='a',c2='b',c3='c',c4='\101',c5='\116';
printf("a%c b%c\tc%c\tabc\n",c1,c2,c3);
printf("\t\b%c %c\n",c4,c5);
}
#include<stdio.h>
C语言实验报告
说明
1,所有程序均用VC6.0编译运行,文件名命名为姓名+日期,因为实验存在补做,所以并不是按照日期先后排列的。
2,为了使截图清晰,手动将运行窗口由“黑底白字”改为了“白底黑字”。
实验2数据类型、运算符和表达式
一、实验目的:
(1)掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量、以及对它们赋值的方法。
printf("%d,%d,%d,%d\n",i,j,++i,++j);
#include<stdio.h>
void main()
{
int i,j,m=0,n=0;
i=8; j=10;
m+=i++;
n-=--j;
printf("i=%d,j=%d,m=%d,n=%d\n",i,j,m,n); }
实验5循环控制
2.输入一行字符,分别统计出其中的英文字母、空格、数字和其它字符的个数。
n-=--j;
printf("i=%d,j=%d,m=%d,n=%d\n",i,j,m,n); }
②将第6,7行改为:
m=i++; n=++j;
再运行。
以上程序结果的不同均是由于自增自减运算符引起的,考虑到一个判断技巧,看自增自减运算符时,先将它们从原程序中拿出来,如果++或—在后,就先把值放回去,然后自增自减,如果在前,先自增自减,再把结果放进去。
printf("%d,%d,%d,%d\n",i,j,++i,++j);
⑤再将printf语句改为:
printf("%d,%d,%d,%d\n",i,j,i++,j++);
⑥将程序改为:
#include<stdio.h>
void main()
{
int i,j,m=0,n=0;
i=8; j=10;
m+=i++;
再运行,并分析结果。
再将第4、5行改为
c来自百度文库=a;
c2=b;
再运行,并分析结果。
a,b没有定义,编译报错。
再将第4、5行改为
c1=‘’a‘’;
c2=‘’b‘’;
再运行,并分析结果。
再将第4、5行改为
c1=300;
c2=400;
再运行,并分析结果。
以字符型输出时,输出的将是300,400对应的字符。
(2)输人并运行教材第3章习题3. 6给出的程序
void main()
{
int a,b;
unsigned c,d;
long e,f;
a=100;
b=-100;
e=50000;
f=32767;
c=a;
d=b;
printf("%d,%d\n",a,b);
printf("%u,%u\n",a,b);
printf("%u,%u\n",c,d);
c=a=e; d=b=f;
(2)学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(――)运算符的使用。
(3)掌握C语言的输入和输出函数的使用
(4)进一步熟悉C程序的编辑、编译、连接和运行的过程。
三、程序调试与问题解决:
(1)输人并运行下面的程序
#include<stdio.h>
void main()