首页 > 代码库 > 第三次作业
第三次作业
#include<stdio.h> int main() { char a; while(1) { printf("输入一个字符"); a=getchar(); if(a>=‘A‘&&a<=‘Z‘) { a=a+32; printf("%c\n",a); } else if(a>=‘a‘&&a<=‘z‘) { a=a-32; printf("%c\n",a); } else if(a>=‘0‘&&a<=‘9‘) { printf("%c\n",a); } else if(a==32) { printf("space\n"); } else { printf("other\n"); } } }
第一个实验。
问题挺显而易见,循环的时候换行直接被读取了(图方便......)。正常情况下在%c前加空格就行,但这样空格就读不出来了。正在想办法。
#include<stdio.h> #include<stdlib.h> int main() { int a,b,c,d,e,f,g; next:printf("请输入您的生日"); scanf("%d %d %d",&a,&b,&c); printf("请输入今天的日期"); scanf("%d%d%d",&d,&e,&f); if(a%4==0&&a%100!=0||a%400==0) { if(b==1||b==3||b==5||b==7||b==8||b==10||b==12) { if(c<=0||c>31) { printf("输入错误"); exit(0); } } else if(b==4||b==6||b==9||b==11) { if(c>=30||c<=0) { printf("输入错误"); exit(0); } } else if(b==2) { if(c<=0||c>=29) { printf("输入错误"); exit(0); } } else { printf("输入错误"); exit(0); } } else { if(b==1||b==3||b==5||b==7||b==8||b==10||b==12) { if(c<=0||c>31) { printf("输入错误"); exit(0); } } else if(b==4||b==6||b==9||b==11) { if(c>=30||c<=0) { printf("输入错误"); exit(0); } } else if(b==2) { if(c<=0||c>=28) { printf("输入错误"); exit(0); } } else { printf("输入错误"); exit(0); } } g=d-a; if(g<0) { printf("error"); exit(0); } else if(e-b>0) { g=g; } else if(e-b<0) { g=g-1; } else { if(f-c>=0) { g=g; } else if(f-c<0) { g=g-1; } else { g=g-1; } } printf("您的周岁是%d\n",g); goto next; }
第二个实验。
情不自禁的又用了goto......
另外加上了筛选。
#include<stdio.h> int main() { int a,b,c; next:printf("请输入三个数字:\n"); scanf("%d%d%d",&a,&b,&c); if(a+b>c&&b+c>a&&a+c>b) { if(a==b||b==c||c==a) { if(a==b&&b==c&&c==a) { printf("等边\n"); } else if(a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a) { printf("等腰直角\n"); } else { printf("等腰\n"); } } else if(a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a) { printf("直角\n"); } else { printf("一般\n"); } } else { printf("非三角\n"); } goto next; }
第三个实验。
重点在于思想,由大到小,不容易乱。
#include<stdio.h> #include<stdlib.h> #include<time.h> int main() { int a,b,i; while(1) { srand(time(NULL)); i=0; a=rand()%1000+1; printf("输入一个三位数!然后你有三次机会!\n") ; while(i<=2) { scanf("%d",&b); if(b>=100&&b<1000) { if(b==a) { printf("恭喜你猜对啦!\n奖品是你的啦!\n"); break; } else if(b-a>0) { if(b-a>400) { printf("你高的太多啦!\n"); } else if(b-a<=400&&b-a>200) { printf("高了!\n"); } else { printf("高了但接近了!\n"); } } else if(b-a<0) { if(a-b>400) { printf("低的太多啦!\n"); } else if(a-b<=400&&a-b>200) { printf("低了!\n"); } else { printf("低了但快猜到了!\n") ; } } } else { printf("你输的不是三位数!\n"); } i++; } printf("真正的答案是%d!\n",a); } }
第四个实验。
需要注意的是srand(time(NULL));要在a=rand()%1000+1;之前。
还有就是没能实现break的运用挺遗憾的。我想让程序选择性终止来着,可是还没弄好。
,%%%%%%%%,
,%%/\%%%%/\%%
,%%%\c "" J/%%%
%. %%%%/ o o \%%%
`%%. %%%% _ |%%%
`%% `%%%%(__Y__)%%‘
// ;%%%%`\-/%%%‘
(( / `%%%%%%%‘
\\ .‘ |
\\ / \ | |
\\/ ) | |
\ /_ | |__
(___________)))))))
第三次作业
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。