编写一个不太复杂的C程序,同时用上if和switch语句

编写一个不太复杂的C程序,同时用上if和switch语句,第1张

//输入某年某月某日,判断这一天是这一年的第几天?

#include <stdio.h>

void main()

{

int day,month,year,sum,leap

printf("\nplease input year,month,day\n")

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

switch(month)/*先计算某月以前月份的总天数*/ {

case 1:sum=0break

case 2:sum=31break

case 3:sum=59break

case 4:sum=90break

case 5:sum=120break

case 6:sum=151break

case 7:sum=181break

case 8:sum=212break

case 9:sum=243break

case 10:sum=273break

case 11:sum=304break

case 12:sum=334break

default:printf("data error")break

}

sum=sum+day/*再加上某天的天数*/

if(year%400==0||(year%4==0&&year%100!=0))/*判断是不是闰年*/ leap=1

else

leap=0

if(leap==1&&month>2)/*如果是闰年且月份大于2,总天数应该加一天*/ sum++

printf("It is the %dth day.",sum)

}

代码如下:

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

#define MAX 50 // 字符串最大个数

#define MAX_LEN 100 // 字符串最大长度做手

int main()

{

char strings[MAX][MAX_LEN + 1]

int n

scanf("%d", &n)

getchar()

if (n >= MAX) {

printf("字符核颂串个数不能超过%d个。\n", MAX)

return -1

}

// 输改胡郑入字符串

for (int i = 0 i < n i++) {

gets(strings[i])

}

// 排序

char temp[MAX_LEN + 1]

for (int i = 0 i < n i++) {

for (int j = i + 1 j < n j++) {

if (strcmp(strings[i], strings[j]) > 0) {

strcpy(temp, strings[i])

strcpy(strings[i], strings[j])

strcpy(strings[j], temp)

}

}

}

// 输出

printf("排序结果:\n")

for (int i = 0 i < n i++) {

printf("%s\n", strings[i])

}

system("pause")

return 0

}

运行结果:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12510569.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存