您的位置:首页 > 其它

C 分支 循环 简单使用

2012-12-03 15:55 190 查看
//

// main.m

// Ctest2

//

// Created by on 12-12-3.

// Copyright (c) 2012年 __MyCompanyName__. All rights reserved.

//

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])

{

@autoreleasepool {

// insert code here...

NSLog(@"Hello, World!");

bool weather = false;

if(weather)

{

NSLog(@"去上课!");

}else {

NSLog(@"宿舍睡觉!");

}

// int a,b;

// scanf("%d,%d",&a,&b);

// NSLog(@"max is:%d",a>b?a:b);

//

// int c,d,e;

// scanf("%d%d%d",&c,&d,&e);

// NSLog(@"max is:%d",c>d?c:(d>e)?d:e);

//

// **************** switch分支语句的使用:

// int a,b,s;

// char c;

//

// scanf("%d,%d",&a,&b);

// c=getchar();

// switch (c) {

// case '+':

// s=a+b;

// break;

// case '-':

// s=a-b;

// break;

// case '*':

// s=a*b;

// break;

// case '/':

// s=a/b;

// break;

//

// default:

// break;

// }

// NSLog(@"s==:%d",s);

//************************************循环 weile
和 do while
的使用

//

// int sum=0,i=1;

// while (i<=100) {

// sum+=i;

// i++;

// }

// NSLog(@"sum=%d",sum);

//

// do{

// sum+=i;

// i++;

// }while (i<=10); //
后面的 分号 “;”不能忘记

// NSLog(@"sum=%d",sum);

// }

//

// int i,j;

// for(i=0;i<=10;i++)

// {

// j=10-i;

// printf("i=%d + j=%d ==== 10\n",i,j);

// }

//

//**************************练习四:打印一个三角形

// for(int i=1;i<=3;i++)

// {

// for (int j=1;j<=3-i; j++)

// {

// printf(" ");

// }

// for (int k=1; k<=2*i-1; k++) {

// printf("*");

// }

// printf("\n");

// } //result // *

// ***

// *****

//**************************练习五:求 100内素数

//

// int i=0;

// for (int n=2; n<100; n++)

// {

// for (i=2; i<n; i++)

// {

// if(n%i == 0)

// {

// break;

// }

// }

//

// if (i==n) {

// printf("%d\t",n);

// }

// } //result:23
5 7
11 1317
19 23
29 3137
41 43
47 // 5359
61 67
71 7379
83 89
97

//******************
第三章
分支 循环--习题
: 作业 ****************

//********* 1
、用分支结构实现
输出三个数
中的最大值

/*

int a,b,c,max;

printf("input the three number:\n");

scanf("%d%d%d",&a,&b,&c);

max = a;

if(a<b)

{

max = b;

if(b<c)

{

max = c;

}

}else {

if (a<c) {

max = c;

}

}

printf("The max number is:%d",max);

*/

//2、从键盘输入一指定金额(以元为单位,如345.78),然后显示支付该金额的各种面额人民币数量,要求显示100元,50元、10元、1元、5角、1角、5分、1分各多少张。
**************************

/*

float money;

int n100,n10,n1,n05,n01,n001,n005; //变量分别代表 100元,10元,1元,5角,1角,5分,1分

printf("input money:\n");

scanf("%f",&money);

n100 = money/100;

n10 = (money - n100*100)/10;

n1 = (int)(money - n100*100 - n10 * 10);

n05 = ((money - n100*100 - n10 * 10-n1)*10)/5;

n01 = (int)((money - n100*100 - n10 * 10-n1)*10)%5;

n005 = ((money - n100*100 - n10 * 10-n1)*100-n01*10)/50;

n001 = (int)((money - n100*100 - n10 * 10-n1)*100-n01*10)%5;

printf("%d,%d,%d,%d,%d,%d,%d\n",n100,n10,n1,n05,n01,n005,n001);

printf("%.2f == 100*%d + 10*%d + 1*%d + 0.5*%d + 0.1*%d + 0.05*%d + 0.01*%d\n",money,n100,n10,n1,n05,n01,n005,n001);

*/

//result 567.98

// 5,6,7,1,4,1,2

// 567.98 == 100*5 + 10*6 + 1*7 + 0.5*1 + 0.1*4 + 0.05*1 + 0.01*2

//3、编程求 1到 100之间
能被 3整出的
数 ***************************

/*

int i=0;

for (i=3 ; i<100; i++) {

if(i%3 == 0)

{

printf("%d\t",i);

}

}

*/

//result:3
6 9 1215
18 21
24 2730
33 36
39 4245
48 51
54 5760
63 66
69 7275
78 81
84 8790
93 96
99

//4、已知 abc + bca = 1333,其中 a、b、c均为一位数,编程求出满足条件的
a、b、c所以组合 **************

/*

int a,b,c;

printf("满足此条件的组合有:\n");

for (a=0; a<9; a++) {

for (b=0; b<9; b++) {

for (c=0; c<9; c++) {

if((a*100+b*10+c+c*100+b*10+a) == 1333)

{

printf("a=%d,b=%d,c=%d\n",a,b,c);

}

}

}

}

*/

//result:满足此条件的组合有:

// a=5,b=1,c=8

// a=6,b=1,c=7

// a=7,b=1,c=6

// a=8,b=1,c=5

//5
、求 1-2+3-4+...+99-100

/*

int i,sum1 = 0,sum2=0,sum;

for (i=1; i<=100; i++)

{

if(i%2 == 0)

{

sum1 = sum1+i;

}else {

sum2 = sum2+i;

}

}

sum = sum2-sum1;

printf("The result is:sum == %d",sum); //result : The result is:sum == -50

*/

//6、任意输入 10

数,分别 计算
输出其中的正数 和负数之和 *************************

/*

float a[10];

float sum1,sum2;

for (int i=0; i<10; i++) {

scanf("%f",&a[i]);

}

for (int i=0; i<10; i++) {

if(a[i]>0)

{

sum1 +=a[i];

}else {

sum2 +=a[i];

}

}

printf("正数之和为:sum1 == %.2f,负数之和为:sum2 == %.2f",sum1,sum2);

*/

//result: 2 3 4 5 6 -7 -7 -6 -5 -4

//正数之和为:sum1 == 20.00,负数之和为:sum2 == -29.00

//7、计算 1-100以内的所有
含 6
的数的和 *****************************************

/*

int i,sum;

for (i=0; i<100; i++) {

if(i%10 == 6)

{

sum +=i;

}

}

printf("1-100以内所有含有6的数的和为 sum==%d",sum);

//result: 1-100以内所有含有6的数的和为 sum==510

*/

//8、输出所有的 3
位 水仙花数,所谓水仙花数是指所有的数字的立方之和等于
该数,例如:153 = 1*1*1+5*5*5+3*3*3

/*

int a,b,c,i;

printf("所有的 3

水仙花 数
为:\n");

for (i=100; i<1000; i++) {

a = i/100;

b = (i-a*100)/10;

c = i - a*100 - b*10;

if(a*a*a + b*b*b +c*c*c == i)

{

printf("%d\n",i);

}

}

*/

//result:所有的 3

水仙花 数
为:

// 153

// 370

// 371

// 407

//9、编写
下图
程序:**************************************

// 1

// 2 3

// 4 5 6

// 7 8 9 0

/*

int m=1;

for(int i = 1;i<=4;i++)

{

for(int j=1;j<=4-i;j++)

{

printf(" ");

}

for (int k=1; k<=i; k++) {

if(m==10)

{

m = 0;

}

printf("%d ",m++);

}

printf("\n");

}

*/

//10、编写程序
输出
下面 图形:

//

// *

// ***

// *****

// *******

// *****

// ***

// *

for (int i=1; i<=4; i++) {

for (int j=1; j<=4-i; j++) {

printf(" ");

}

for (int k=1; k<=2*i-1; k++) {

printf("*");

}

printf("\n");

} //先
打印
上半部分
在打 下面部分

for (int i=3; i>=1; i--) {

for (int j=0; j<=3-i; j++) {

printf(" ");

}

for(int k=1;k<=2*i-1;k++)

{

printf("*");

}

printf("\n");

}

//*************** 12、一个猴子吃桃子
一天 吃桃子剩余
剩余数量的一半,感觉不够,再吃一个,共10天
吃完,问一共吃了多少桃子,写出代码 :(面试题)

/*

int taozi = 2; //
最后一天 桃子的剩余数量:

for (int i=10; i>0; i--) {

taozi = (taozi+1)*2;

}

printf("Peach number is: %d",taozi);

*/

return 0;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: