class training

实验3-1 分别使用while循环、do while循环、for循环求 (即求1+2+3+ ……+100)。
参考:

源码
方法一#include<stdio.h>
int main(){
	int i,sum=0;
	for(i=1;i<=100;i++)
		sum+=1;
		printf("sum=%d\n",sum);
		return 0;
}
运行结果抓图

方法二

#include<stdio.h>
int main(){
	int i,sum=0;
	i=1;
	while(i<=100){
		sum+=i;
		i++;
	}
	printf("%d\n",sum);
		return 0;
}

方法三

#include<stdio.h>
int main(){
	int i,sum=0;
	i=1;
	do{
		sum+=i;
		i++;
	}while(i<=100);
	printf("%d\n",sum);
		return 0;
}
实验3-2分别使用while循环、do while循环、for循环求n!,其中n由键盘输入。
提示:
1.	依照实验3-1求n!,其中n!=1*2*3……*n
源码
While方法:
#include <stdio.h>
int main(){
    int i,sum=1,n;
    i=1;
    printf("请输入n的值:");
    scanf("%d",&n);
    while(i<=n)
    {
        sum=sum*i;
        i++;
    }
    printf("sum=%d\n",sum);
    return 0;
}

do while:
include <stdio.h>
int main(){
    int i,sum=1,n;
    i=1;
    printf("请输入n的值:");
    scanf("%d",&n);
    do{}
        sum=sum*i;
        i++;
    }while(i<=n);
    printf("sum=%d\n",sum);
    return 0;
}

For循环
#include <stdio.h>
int main(){
    int i,sum=1,n;
    printf("请输入n的值:");
    scanf("%d",&n);
    for(i=1;i<=n;i++)
    sum=sum*i;
    printf("sum=%d\n",sum);
    return 0;
}

运行结果抓图:

实验3-3 求 。
程序源码
#include<stdio.h>
int main(){
	int k,sum=0,Z;
	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);

	for(k=1;k<=10;k++)
		sum= sum+1/k;
	printf("sum=%d\n",sum);
	Z=(sum +=k)+(sum= sum+k*k)+(sum= sum+1/k);
	printf("Z=%d\n",Z);
	return 0;
}
运行结果抓图
 

实验3-4输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数。
实验提示:

程序源码
#include<stdio.h>
int main(){
	char c;
	int zm=0,sz=0,kg=0,qt=0;
	while((c=getchar())!=‘\n‘){
		if((c>=‘a‘&&c<=‘z‘)||(c>=‘A‘&&c<=‘Z‘))
			zm++;
	 	else if(c==‘ ‘)
	 		kg++;
	 	else if(c<=‘9‘ && c>=‘0‘)
	 		sz++;
	 	else
	 		qt++;
	}
	printf("字母数:%d\n",zm);
	printf("数字个数:%d\n",sz);
	printf("空格个数:%d\n",kg);
	printf("其他个数:%d\n",qt);
	return 0;
}

运行结果抓图

 实验3-5输入两个正整数m和n,求其最大公约数和最小公倍数。
程序源码
#include<stdio.h>
int main(){
    int a,b,m,n;
    printf("请输入正整数m和n:\n");
    scanf("%d%d",&a,&b);
    m=a;
    n=b;
    while(a!=b)
        if(a>b)
            a=a-b;
        else
            b=b-a;
    printf("最大公约数为:%d\n",a);
    printf("最小公倍数为:%d\n",m*n/a);
}

运行结果抓图

实验3-6 输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字的立方和等于该数本身。例如:153是一个水仙花数,因为153=13+53+33。
程序源码
#include<stdio.h>
int main(){
int n,k1,k2,k3;
for(n=100;n<=999;n++){
	k1=n%10;
	k2=n/10%10;
	k3=n/100;
	if(n==k1*k1*k1+k2*k2*k2+k3*k3*k3)
		printf("%d\n",n);}

}

运行结果抓图


  实验心得:

还是有很多困难的地方,最大公倍数和最小公倍数用的时间最长,或许因为忘了所以耽误了很多的时间,sum*i这个语句一直没编辑正确,然后还要继续努力编辑,多写代码,目前写代码有一些思路,但是不是很明确以及准确还需要多多练习

时间: 2024-08-10 17:01:01

class training的相关文章

Android官方开发文档Training系列课程中文版:手势处理之滚动动画及Scroller

原文地址:http://android.xsoftlab.net/training/gestures/scroll.html 在Android中,滑动经常由ScrollView类来实现.任何超出容器边界的布局都应该将自己内嵌在ScrollView中,以便提供可滚动的视图效果.自定义滚动只有在特定的场景下才会被用到.这节课将会描述这样一种场景:使用scroller显示一种可滚动的效果. 你可以使用Scroller或者OverScroller来收集一些滑动动画所需要的数据.这两个类很相似,但是Ove

2017 UESTC Training for Data Structures

2017 UESTC Training for Data Structures A    水,找区间极差,RMQ怼上去. #include<bits/stdc++.h> using namespace std; #pragma comment(linker, "/STACK:102400000,102400000") #define rep(i,a,b) for (int i=a;i<=b;i++) #define per(i,b,a) for (int i=b;i&

WeChall_Training: Programming 1 (Training, Coding)

When you visit this link you receive a message.Submit the same message back to http://www.wechall.net/challenge/training/programming1/index.php?answer=the_messageYour timelimit is 1.337 seconds 解题: 先在浏览器获取自己的cookie,再用python写了个自动提交的程序,header加上自己的cooki

Training的第二十天

今天接着做前天的活,就是实现把下载下来的jpg格式的图片设置为桌面的功能.要实现这个功能的关键点一个是要调用API(SystemParametersInfo)更换桌面:二是要把下载下来的JPG格式的图片转换成Bmp格式的图片才能够应用为桌面. 由于对API没什么概念,所以我从网上查了下资料并从网上copy了有关该API变成C#的代码和把jpg格式的图片转换成bmp格式图片的代码.接着看懂了里面的代码便自己修改了一下.接下来的是完善这个程序和把它加入到windows自动启动的任务中. 对于程序的完

2014 Multi-University Training Contest 6 Apple Tree(数学题)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4925 Apple Tree Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others) Total Submission(s): 176    Accepted Submission(s): 120 Problem Description I've bought an orchard an

hdu 4925 Apple Tree--2014 Multi-University Training Contest 6

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4925 Apple Tree Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others) Total Submission(s): 188    Accepted Submission(s): 129 Problem Description I've bought an orchard an

xtu DP Training C.炮兵阵地

炮兵阵地 Time Limit: 2000ms Memory Limit: 65536KB This problem will be judged on PKU. Original ID: 118564-bit integer IO format: %lld      Java class name: Main 司令部的将军们打算在N*M的网格地图上部署他们的炮兵部队.一个N*M的地图由N行M列组成,地图的每一格可能是山地(用"H" 表示),也可能是平原(用"P"表

2014 Super Training #1 F Passage 概率DP

原题: HDU 3366   http://acm.hdu.edu.cn/showproblem.php?pid=3366 本来用贪心去做,怎么都WA,后来看网上原来是一个DP题. 首先按P/Q来做排序,即P越大,Q越小就越好,这样可以确保先选最优的路走. dp[i][j]表示已经到了第i条路(说明前i-1条都没成功的情况),还剩j块钱时能够走出去的概率. 则方程: dp[i][j] = way[i].P + way[i].Q*(dp[i+1][j-1]) + way[i].D*(dp[i+1]

2014 UESTC Training for Data Structures H - Cookies Test

H - Cookies Test Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) Submit Status As chief programmer at a cookie production plant you have many responsibilities, one of them being that the cookies produced and packag

2014 UESTC Training for Data Structures K - 方师傅与栈

K - 方师傅与栈 Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) Submit Status 方师傅有一个1?N的排列,排列的顺序是固定的,他想要把这个排列重新排列成他喜欢的顺序. 于是他买了一个栈,他会按顺序将排列扔进栈内,在某些时刻将栈顶元素取出,这样出栈后的排列就可以重新排序啦. 例如,原序列是1,2,他先将1入栈,再将2入栈,然后将2出栈,最后将1出栈,那么新序列就变