第四次作业
《C语言程序设计》实验报告
学 号 16080903 姓 名 王思齐 计科16-2班
学 期 2016-2017 第1学期 指导教师 黄俊莲 吉吉老师
实验地点 C05 机 器 号
时 间 2016年 10 月 13 日 6 周 周四 1、2 节
截至日期 2016.10.13 11:50
实验任务清单 1.实验3-1 分别使用
while
循环、
do
while
循环、
for
循环求(即求1+2+3+ ……+100)
2.实验3-2分别使用
while
循环、
do
while
循环、
for
循环求n!,其中n由键盘输入。
3.实验3-3 求。
4.实验3-4输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数。
5.实验3-5输入两个正整数m和n,求其最大公约数和最小公倍数。
6.实验3-6输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字的立方和等于该数本身。例如:153是一个水仙花数,因为153=13+53+33。
教师评语
成绩
实验3 循环结构程序设计
实验3-1 分别使用
while
循环、
do
while
循环、
for
循环求(即求1+2+3+ ……+100)。
参考:
源码:
#include <stdio.h>
int
main(){
//使用for循环完成1+2+......+100
int
i,sum = 0;
for
(i=1;i<=100;i++)
sum +=i;
//sum = sum + i;
printf(
"sum=%d\n"
,sum);
//使用do while循环完成,,,
i = 1;
sum = 0;
do
{
sum += i;
i++;
}
while
(i<=100);
printf(
"sum = %d\n"
,sum);
//使用while完成,,,,
i = 1;
while
(i<=100){
sum += i;
i++;
}
printf(
"sum = %d\n"
,sum);
return
0 ;
}
实验3-2分别使用
while
循环、
do
while
循环、
for
循环求n!,其中n由键盘输入。
提示:
1.依照实验3-1求n!,其中n!=1*2*3……*n
源码
#include <stdio.h>
int
main(){
//while循环求n!=n*(n-1)*(n-2)*.....*1
int
n,i,jiec=1;
//n:从键盘输入
scanf(
"%d"
,&n);
i = n;
while
(i>=1){
jiec = jiec * i;
i--;
}
printf(
"%d!=%d\n"
,n,jiec);
return
0;
}
实验3-3 求。这个出不来。。
程序源码
#include <stdio.h>
int
main(){
int
k,sum = 0;
for
(k=1;k<=100;k++)
sum += k;
printf(
"sum=%d\n"
,sum);
for
(k=1;k<=50;k++)
sum = sum + k*k;
printf(
"sum=%d\n"
,sum);
return
0;
}
实验3-4输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数。
实验提示:
程序源码
#include <stdio.h>
int
main(){
//41 asd 324 2 ssd?!
char
c;
int
zm=0,sz=0,kg=0,qt=0;
while
((c=getchar())!=
'\n'
){
if
(c>=
'a'
&&c<=
'z'
||c>=
'A'
)
zm++;
else
if
(c==
' '
)
kg++;
else
if
(c>=
'0'
&&c<=
'9'
)
sz++;
else
qt++;
}
printf(
"字母个数:%d\n"
,zm);
printf(
"空格个数:%d\n"
,kg);
printf(
"数字个数:%d\n"
,sz);
printf(
"其他个数:%d\n"
,qt);
return
0;
}
实验3-5输入两个正整数m和n,求其最大公约数和最小公倍数。
程序源码
#include<stdio.h>
int
main(){
int
m,n,min,i,t;
scanf(
"%d%d"
,&m,&n);
min=(m<n)?m:n;
for
(i=min;i>=1;i--)
if
(m%i==0&&n%i==0){t=i;
break
;};
printf(
"最大公约数是:%d"
,t);
printf(
"最小公倍数是:%d\n"
,m*n/t);
return
0;
}
实验3-6 输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字的立方和等于该数本身。例如:153是一个水仙花数,因为153=13+53+33。
程序源码
#include<stdio.h>
#include<math.h>
int
main(){
int
a1,a2,a3,a4,a5,a6,a,b,i;
for
(i=100;i<=10000;i++)
{
a=i;
a1=a%10;
a2=(a/10)%10;
a3=(a/100)%10;
a4=(a/1000)%10;
a5=(a/10000)%10;
a6=(a/100000)%10;
b=(a1*a1*a1)+(a2*a2*a2)+(a3*a3*a3)+(a4*a4*a4)+(a5*a5*a5)+(a6*a6*a6);
if
(b==i)
printf(
"%d\n"
,i);
}
}
实验心得还是不会抓图,虽然是课上作业,老师带着做可是还有很多问题,不会,边问边参考,才出来!以后会继续努力的!
posted on 2016-10-13 11:42 BGD160809203 阅读(179) 评论(1) 编辑 收藏 举报