您的位置:首页 > 其它

homeworkFour 有太多的感触

2015-07-30 21:26 288 查看
#import <Foundation/Foundation.h>

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

/*

//作业1、随机产生20个[10 , 100]的正整数,输出这些数以及他们中的最大数

int numberCount=20;

int numberRandom[20]={0};

int i=0;

int numberMax=45;

while (numberCount--) {

numberRandom[i]=arc4random()%91+10;

if (numberRandom[i]>numberMax) {

numberMax=numberRandom[i];

}

printf("%d\t",numberRandom[i]);

}

printf("\n最大值:%d\n",numberMax);

//作业2、编程将所有“水仙花数”打印出来,并打印其总个数。 “水仙花数”是一个 各个位立方之和等于该整数的三位数。

int i=101;

int countShuiXianHua=0;

while (i<1000) {

int sumFirst=(i/100)*(i/100)*(i/100);//百位

int tempSecond=i/10;

int sumSecond=(tempSecond%10)*(tempSecond%10)*(tempSecond%10);//十位

int sumThird=(i%10)*(i%10)*(i%10);//个位

int sum=sumFirst+sumSecond+sumThird;

if (sum==i) {

countShuiXianHua++;

printf("%d是水仙花数.\n",i);

}

i++;

}

printf("100-1000一共有%d个水仙花数.\n",countShuiXianHua);

*/

//作业3、已知abc+cba = 1333,其中a,b,c均为一位数,编程求出满足条件的a,b,c所有组合

for (int a=1; a<=9; a++) {

for (int b=1; b<=9; b++) {

for (int c=1; c<=9; c++) {

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

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

}

}

}

}

printf("\n");

//下面的是我个人的数学思想,虽然是正确的,但是却很难实现,所以,我上网查了一下,结果却如此easy,如上面的代码所示,我的逻辑思想真的不是很强,而且有时候很容易就逛进一个死胡同,还怎么也走不出来,这是我最大的问题,我一低昂要慢慢养成站在“巨人”的肩膀上来思考代码的实现过程,不能局限于自己的一小片天空,有时候,自己就是固步自封,于是就只能是井底之蛙了。为什么要早分享和晚分享,就是因为我自己一个人经历再多,也没有四十几个人经历的多,通过聆听别人的分享 的故事,自己也能额外获得更多的故事,所以,一定要学会去看看别人的思想过程。

//

// int numberABC=0;

// int numberGewei=numberABC%10; //个位

// int numberBaiwei=numberABC/10; //百位

// int numberShiwei=numberBaiwei%10; //十位

//

// int numberOffABC=numberGewei*100+numberShiwei*10+numberBaiwei;

// if (numberABC+numberOffABC==1333) {

// printf("%d",numberABC);

// }

// printf("Go on.\n");

/*

//作业4、反复校验用户输入的生日,包括年、月、日。直到年、月、日都合法。

// 提示:

// (1)使用while循环实现反复校验

// (2)使用switch实现校验

// (3)只有闰年才有2月29日

// (4)1、3、5、7、8、10、12,每个月有31天

// (5)4、6、9、11,每个月有30天

int year =0,month=0,day=0;

BOOL flag=YES;

while (flag) {

printf("请输入年月日:\n");

scanf("%d,%d,%d",&year,&month,&day);

if (year<1000||year>2015) {

printf("年份不正确.\n");

continue;

}else{

switch (month) {

case 1:

case 3:

case 5:

case 7:

case 8:

case 10:

case 12:

if (day<1||day>31) {

printf("天数不正确.\n");

continue;

}else{

printf("%d.%d.%d\n",year,month,day);

flag=NO;

break;

}

case 2:

if (year%400==0||(year%100!=0&&year%4==0)) {

if (day<1||day>29) {

printf("天数不正确.\n");

continue;

}else{

printf("%d.%d.%d\n",year,month,day);

flag=NO;

break;

}

}else{

if (day<1||day>28) {

printf("天数不正确.\n");

continue;

}else{

printf("%d.%d.%d\n",year,month,day);

flag=NO;

break;

}

}

case 4:

case 6:

case 9:

case 11:

if (day<1||day>31) {

printf("天数不正确.\n");

continue;

}else{

printf("%d.%d.%d\n",year,month,day);

flag=NO;

break;

}

default:

printf("月份不正确.\n");

continue;

}

}

}

//预习作业1、定义数组,存储4个年龄值,并循环打印输出

int age[4]={0};

printf("请输入4个年龄值:\n");

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

scanf("%d",&age[i]);

}

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

printf("%d\t",age[i]);

}

printf("\n");

*/

return 0;

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