当前位置: 首页 > news >正文

switch-while day6

三:switch

1.switch(整型表达式) //必须是整型,不能是浮点型

​ case 后面是整型常量表达式,不能出现变量

switch()
{
case常量表达式1:语句1break;
case:...
default:语句n+1break;
}

2.switch匹配执行,如果没有遇到break或者右} 则继续执行,直到遇到break或右}

	switch(n){case 1:printf("1\n");break;case 1+1:printf("1+1\n");case 3:printf("3\n");break;default:printf("*\n");break;}

3.default:书写位置,可以自由安排,不一定在最后,注意是否配给break

​ //default写错了,也能正常编译

#include<stdio.h>int main(int argc, const char *argv[])
{char ch;scanf("%c",&ch);switch(ch){case 'A':printf("90~100\n");break;case 'B':printf("80~89\n");break;case 'C':printf("70~79\n");break;case 'D':printf("60~69\n");break;case 'E':printf("0~59\n");break;default:printf("NULL\n");break;}return 0;
}
	switch((year%100 != 0 && year%4 == 0)||year % 400 == 0){case 1:printf("yes\n");break;case 0:printf("no\n");break;}
	int year,month;//判断各月的天数int days = 0;scanf("%d %d",&year,&month);switch(month){case 1:case 3:case 5:case 7:case 8:case 10:case 12:days = 31;break;case 4:case 6:case 9:case 11:days = 30;break;case 2:switch((year%100 != 0 && year%4 == 0)||year % 400 == 0){case 1:days = 29;break;case 0:days = 28;break;}default:printf("invlid month\n");return -1;}printf("days = %d\n",days);

四:条件运算

​ 表达式1?表达式2:表达式3 //真:执行2 假:执行3

	int year;scanf("%d",&year);((year%100 != 0 && year%4 == 0)||year % 400 == 0)?printf("yes\n"):printf("no\n");
	(a>b) ? max = a:(max = b);(max >c) ? max = max:(max = c);//max = a > b? a?b > c ? a>b?a:b:c;

五:循环

1.for(表达式1;表达式2;表达式3) //for(循环初始条件;循环结束条件;循环变量增值)

​ {语句4} //{循环体}

	int i = 0;int sum = 0;for(i = 1,sum = 0;i<=100;i++){sum = sum + i;}printf("sum = %d,i = %d\n",sum,i);
	int i = 0;//水仙花数for(i = 100;i<1000;i++){int hud = i/100;int ten = (i - hud*100)/10;int sig = (i - hud*100 - ten*10);if(hud*hud*hud + ten*ten*ten + sig*sig*sig == i){printf("%d",i);putchar(' ');}}putchar('\n');

2.while(表达式)

​ {语句}

	int i =0;int sum = 0;while(i<=100){sum = sum + i;i++;}printf("sum = %d\n",sum);
	int i = 100;while(i<1000){int hud = i/100;int ten = (i - hud*100)/10;int sig = (i - hud*100 - ten*10);if(hud*hud*hud + ten*ten*ten + sig*sig*sig == i){printf("%d",i);putchar(' ');}i++;}

3.do-while

do
{循环体语句
}while

do-while至少执行一次(先执行,后循环)

	do//水仙花数{int hud = i/100;int ten = (i - hud*100)/10;int sig = (i - hud*100 - ten*10);if(hud*hud*hud + ten*ten*ten + sig*sig*sig == i){printf("%d",i);putchar(' ');}i++;}while(i<1000);putchar('\n');

4.continue 结束本次循环,继续下次循环

​ break 结束本层循环

	int i = 0;int j = 0;for(i=0;i<5;i++){printf("i==---%d\n",i);for(j=0;j<5;j++){if(j==2)//		continue;break;printf("----j==---%d\n",j);}}
	int i = 0;int j = 0;scanf("%d",&i);if(i == 2){printf("yes\n");}else{for(j=2;j<i;j++){if(i%j == 0){printf("no\n");return -1;}}printf("yes\n");}

每日一题

一:打印1000以内的回文数

#include<stdio.h>int main(int argc, const char *argv[])
{for(int i=0;i<1000;i++){int hud = i/100;int ten = (i - hud*100)/10;int sig = (i - hud*100 - ten*10);if(i<10){for(i=0;i<10;i++){printf("%d ",i);}}else if(i>=10&&i<100){if(sig*10 + ten == i ){printf("%d ",i);}}else{if(sig*100 + ten*10 + hud == i ){printf("%d ",i);}}}putchar('\n');return 0;
}

二:求斐波那契数列前n项的和值 1 1 2 3 5 8 13 21 34 55 … 前两项 1 从第三项开始 每一项,都是前两项之和

#include<stdio.h>int main(int argc, const char *argv[])
{int a = 1;int b = 1;int t = 0;int sum = 0;int n;scanf("%d",&n);for(int i=2;i<n;i++){t = a+b;a = b;b = t;sum = sum + t;printf("t = %d\n",t);}sum = sum +2;printf("sum = %d\n",sum);return 0;
}

三:从键盘输入一个字母, 输出该字母的按字典排列顺序的下一个字符, 例如, 输入a,则输出b。 如果输入的字符不在26个英语字母中,则显示输入数据有误, 如果输入的字符是z或Z,则输出a或A

#include<stdio.h>int main(int argc, const char *argv[])
{char i,t;scanf("%c",&i);if((i>='A'&&i<='Z')||(i<='z'&&i>='a')){if(i == 'z'||i=='Z'){t = i - 25;}else{t = i + 1;}printf("%c\n",t);return -1;}else{printf("invlid char\n");}return 0;
}

相关文章:

  • 39、响应处理-【源码分析】-内容协商原理
  • 基于 Tomcat 和 Apache 整合的 index.jsp 访问统计与动态展示实践
  • BSRR对比BRR对比ODR
  • uboot nfs TTT
  • 基于白鲸优化算法的路径优化研究
  • D2-基于本地Ollama模型的多轮问答系统
  • 云计算 Linux Rocky day03(which、快捷键、mount、家目录、ls、alias、mkdir、rm、mv、cp、grep)
  • MUX-VLAN基本概述
  • 统信 UOS 服务器版离线部署 DeepSeek 攻略
  • Python函数参数详解:从位置参数到灵活调用的艺术
  • RK3568-快速部署codesys runtime
  • MPLS-EVPN笔记详述
  • python可视化:端午假期旅游火爆原因分析
  • WSL2 + RK3568 SDK 编译踩坑笔记
  • 直接插入排序
  • Python-nuitka
  • VMWare安装常见问题
  • 力扣HOT100之多维动态规划:5. 最长回文子串
  • 【AI News | 20250603】每日AI进展
  • 百万级临床试验数据库TrialPanorama发布!AI助力新药研发与临床评价迎来新基石
  • 住房和城乡建设部网站规范答疑/宝鸡seo外包公司
  • jsp动态网站开发与实例pdf/网站上不去首页seo要怎么办
  • 怎么发布自己做的网站/信息流广告素材网站
  • 专做温州鞋批发的网站/网站访问量
  • 做网站代理好吗/百度一下你就知道官网网页
  • 网站通常用什么编程做/在线排名优化工具