7-5 字符串排序
本题要求编写程序,读入5个字符串,按由小到大的顺序输出。
输入格式:
输入为由空格分隔的5个非空字符串,每个字符串不包括空格、制表符、换行符等空白字符,长度小于80。
输出格式:
按照以下格式输出排序后的结果:
After sorted: 每行一个字符串
输入样例:
red yellow blue black white
输出样例:
After sorted: black blue red white yellow
解题思路:
1.读入需要处理的字符串,循环使用strcmp函数来进行比较,逐步把排序靠前的字符串往前移动
#include <stdio.h> #include <string.h> void swap( char str1[], char str2[] ); int main(){ char str[5][80]; int i, j; for(i=0; i<5; i++ ){ scanf(" %s", &str[i]); } for(i=0; i<4; i++ ){ int min = i; for(j=i+1; j<5; j++ ){ if(strcmp(str[min], str[j]) > 0 ){ min = j; } } if(min != i ){ swap(str[min], str[i]); } } printf("After sorted:\n"); for( i=0; i<5; i++ ){ printf("%s\n", str[i]); } return 0; } void swap(char str1[], char str2[] ){ char temp[80]; strcpy(temp, str1); strcpy(str1, str2); strcpy(str2, temp); }
7-3 星期几换算
今天是周六,又到了可以休息的日子了,7天后又会是一个周六。请你帮忙计算下,n(n为整数,可以是正也可以为负)天后会是星期几呢?
输入格式:
输入天数
输出格式:
输出星期几
输入样例1:
8
输出样例1:
星期日
输入样例2:
-2
输出样例2:
星期四
解题思路:
1.读入输入的数字,判断输入的数字,将它的属性result判断
2.输入数字>=7,则将该数字%7得到它的余数存入result
3.输入数字<0,则将该数字循环+7直到它大于0,将其结果存入result
4.输入数字>0且<7,则不处理该数字存入result
5.判断该数字,由于今天是周六,则
result=0:星期六
result=1:星期日
result=2:星期一
result=3:星期二
result=4:星期三
result=5:星期四
result=6:星期五
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int day = in.nextInt(); int result = day; String week = ""; if(day>=7){ result = result%7; }else if(day<0){ while (true){ if(result<0) { result = 7 + result; }else { break; } } } switch (result){ case 0:week = "星期六";break; case 1:week = "星期日";break; case 2:week = "星期一";break; case 3:week = "星期二";break; case 4:week = "星期三";break; case 5:week = "星期四";break; case 6:week = "星期五";break; } System.out.println(week); } }
标签:输出,样例,换算,result,字符串,排序,day,输入 From: https://www.cnblogs.com/lavendery/p/17840984.html