第四次c语言作业

第一题

1. 代码风格:C语言的编程规范和编程风格对于代码的可读性、可维护性和协作性都非常重要。

(1)注意所有情况下 if 和左圆括号间都有个空格. 右圆括号和左大括号之间也要有个空格:

if(condition)     // 差 - IF 后面没空格.
if (condition){   // 差 - { 前面没空格.
if(condition){    // 变本加厉地差.
if (condition) {  // 好 - IF 和 { 都与空格紧邻.

(2)

但如果语句中某个 if-else 分支使用了大括号的话, 其它分支也必须使用:

// 不可以这样子 - IF 有大括号 ELSE 却没有.
if (condition) {
  foo;
} else
  bar;

// 不可以这样子 - ELSE 有大括号 IF 却没有.
if (condition)
  foo;
else {
  bar;
}
// 只要其中一个分支用了大括号, 两个分支都要用上大括号.
if (condition) {
  foo;
} else {
  bar;
}

(3)

使用 // 或 /* */, 统一就好。// 或 /* */ 都可以; 但 //  常用. 要在如何注释及注释风格上确保统一。

思考:更好地理解代码,缩进可以清晰表示代码与代码之间的区别,之前没有严格要求自己,实验课上有一次被老师说过缩进的问题。

第二题

2. 编程题:分别用  for  while   do-while  实现:计算并输出 n! = 1 × 2 × 3 ×  × n

​
#include <stdio.h>   //for
int main()
{
	int i,x;
	long long sum = 1;
	scanf("%d",&x);
	for ( i = 1; i<=x; i++)
	{
		sum = sum * i;
	}
	printf("%d!=%lld",x,sum);
	return 0;	
} 

​
​
#include <stdio.h>   //while
int main()
{
	int i,x;
	long long sum = 1;
	scanf("%d",&x);
	while(i<x)
	{
		i++;
		sum = sum * i;
	}
	printf("%d!=%lld",x,sum);
	return 0;	
} 

​
#include <stdio.h>   //do-while
int main()
{
	int i,x;
	long long sum = 1;
	scanf("%d",&x);
	do
	{
		i++;
		sum = sum * i;
	}
	while(i<x);
	printf("%d!=%lld",x,sum);
	return 0;	
} 

第三题

3. 编程题:

  模仿PPT的课程内容 计算圆周率 π .

 

#include<stdio.h>
#include<stdlib.h>
#include<math.h>


void main()
{
	int i;
	double sum,pi,r;
	r=pow(-1.0, i)/(2*i+1);
	while(fabs(r)>1e-6)
	{
		r=pow(-1.0, i)/(2*i+1);
		sum = sum + r;
		i++;
	} 
	pi = 4.0 *sum;
	printf("pi = %.5f\n",pi);
}

 

 

第四题

4. 编程题:

  编写一个程序 ,使用 while 循环计算斐波那契数列的前20个数字 ,并将它们输出到 屏幕上。

  什么是斐波那契数列?斐波那契数列是一个数学上的经典数列 ,起始于01 ,之后的 每一项都是前两项的和。 它的前八项为:0 1 1 2 3 5 8 13 

#include<stdio.h>
int main()
{
	int x = 0 , y = 1;
	int z,i;
	printf("%d %d ",x,y);
	while(i<=17)
	{
		i++;
		z=x + y;
		x = y;
		y = z;
		printf("%d ",z);
	}
	return 0;
}

第五题

5. 附加题

  编写一个程序 ,接受用户输入的整数 ,然后按照相反的顺序输出这些数字。例如 ,输 入为 12345 ,输出应为 54321

#include<stdio.h>
int main()
{
	int a,b,input,sum=0;
	scanf("%d",&input);
	for(a=input;a;a/=10)
	{
		b=a%10;
		sum=sum*10+b;
	}
	printf("%d",sum);
	return 0;
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值