循环结构实验

C语言程序设计实验报告

姓名:邓文超 实验地点:宿舍

1.实验项目5.3.1

问题的简单描述:代码运行错误,检查了好一会儿才发现“&”没有加。
实验代码:

#include<stdio.h>
main()
{
int n,k,s=0;
printf("Please enter a number:");
scanf("%d",&n);
for(k=1;k<=n;k++)
{
s=s+k;
printf("%d ",s);
}
}  

问题分析:没有经常练习打代码,导致出现许多小错误。

2.实验项目5.3.2

问题的简单描述:头文件‘#include<conio.h>’不知道是什么意思。
实验代码:

#include<stdio.h>
#include<conio.h>
  main()
  {
float x,max,min;
printf("Please input scores:");
scanf("%f",&x);
max=min=x;
while(x>0)
{
	if(x>max)
	max=x;
	if(x<min)
	min=x;
	scanf("%f",&x);
}
printf("\nmax=%f\nmin=%f\n",max,min);
 }

问题分析:对课程内容以外的知识没有去主动了解,应该多看一些代码,多了解一些关于代码方面的知识。

3.实验项目5.3.3

问题的简单描述:运行编译的时候总是不成功,一开始以为是代码原因,但似乎很多同学与我遇到了相同的问题,最后是要将某个选项改下,很简单的操作。
实验代码:

#include<stdio.h>
main()
{
float sum,value;
int n;
printf("Input value:");
scanf("%f",&value);
sum=0.0;
n=0;
do
 {
 	++n;
 	sum+=1.0/(float)n;
 }
while(sum<value);
printf("n=%d",n);
}

问题分析:我们不应该只是学习代码,还要了解敲代码的软键,不然出了这方面的问题最后不知所措。

4.实验项目5.3.4

问题的简单描述: ‘c=getchar()’这个也是我之前不太懂的玩意,还是“词汇量”太少了。
实验代码:

#include<stdio.h>
main()
{
char c;
int k,data=0;
for(k=0;k<4;k++)
{
	while(k<4)
	{
		c=getchar();
		if (c>='0'&&c<='9')
		break;
	}
	if(k==0)
	data+=(c-'0')*1000;
	if(k==1)
	data+=(c-'0')*100;
	if(k==2)
	data+=(c-'0')*10;
	if(k==3)
	data+=c-'0';
  }
printf("Data=%d",data);
  }

问题分析:遇到生疏的代码就要认识它,多敲它,最后记住并且会运用它。

5.实验项目5.3.5

问题的简单描述:循环结构没有一个好的构思,总是要看着样板打代码。
实验代码:

#include<stdio.h>
main()
{
int m,n,k;
int sum=0;
printf("各种驼法如下:\n");
for(m=1;m<=100;m++)
   for(n=1;n<=100-m;n++)  
{
    k=100-m-n;
	if(k%2==0&&(3*m+2*n+k/2)==100)
	{
		printf("大马%3d匹;中马%3d匹;小马%3d匹.\n",m,n,k);
		sum++;
	}
}
printf("共有%d种驼法.\n",sum);
}

问题分析:多分析代码,用不同的代码去完成同一道题,熟能生巧。

6.实验项目 99乘法表

问题的简单描述:代码运行错误,检查了好一会儿才发现“*”没有加。
实验代码:

#include<stdio.h>
main()
{
int i,j;
for(i=1;i<=9;i++)
 {
 	for(j=1;j<=i;j++)
 	printf("%d*%d=%d\t",j,i,i*j);
 	printf("\n");
 }
} 

问题分析:没有经常练习打代码,导致出现许多小错误。

7.实验项目 5.4.1

问题的简单描述:对于一些复杂的代码处理效率慢,没有很好地理清思路。
实验代码:

#include<stdio.h>
main()
{
int i=11,j,counter=0;
for(;i<=100;i+=2)
{
   for(j=2;j<=i-1;j++)	      
  {
         if(i%j==0)
         break;
  }	    
        if(counter%10==0)
        printf("\n");
        if(j>=i)
        {
        	printf("%6d",i);
        	counter++;
    }
}

问题分析:可以尝试一下刷题的“乐趣”了。

实验小结

有很多方面需要改进的,比如对于DEVC++的了解还比较浅薄,只会运用它来简单地敲打代码,不过这个不用慌,在之后遇到的问题解决过程当中,可以更加了解它的功能。
还有就是代码好比单词,有很多代码是不认识的,需要我主动去掌握。

posted @ 2021-05-11 16:45  nswz  阅读(119)  评论(1编辑  收藏  举报