//// Created by 86184 on 2024/7/16.////题目:有 1、2、3、4 四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
#include <stdio.h>
void sumNumbers();
void standardAnswer();
int main(){// sumNumbers();standardAnswer();return0;}
void sumNumbers(){
int sum_numbers =0;for(int i =1; i <=4;++i){for(int j =1; j <=4;++j){for(int k =1; k <=4;++k){if(i != j && i != k && k != j){printf("%d\n", i *100+ j *10+ k);
sum_numbers++;}else{continue;}}}}printf("一共有:%d个无数重复数字的三位数。", sum_numbers);}
void standardAnswer(){
int i, j, k;
int sum_numbers =0;printf("\n");for(i =1; i <5; i++){// 以下为三重循环for(j =1; j <5; j++){for(k =1; k <5; k++){// 确保i、j、k三位互不相同if(i != k && i != j && j != k){printf("%d,%d,%d\n", i, j, k);
sum_numbers++;}}}}printf("一共有:%d个无数重复数字的三位数。", sum_numbers);}
//// Created by 86184 on 2024/7/17.////***************************Start//一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?/*
* x + 100 = n^2
* x + 100 + 168 = m^2
*
* (m - n )(m + n) = 168
* j * i = 168
* 要想是整数 (i + j) (j - i)必须都为 偶数
* i j 同奇偶
* m = (i + j) / 2
* n = (j - i) / 2
*
* */
#include <stdio.h>
int main(){
int i, j, x, m, n;for(i =1; i <168/2+1; i++){if(168% i ==0){
j =168/ i;if(i > j &&(i + j)%2==0&&(i - j)%2==0){
m =(i + j)/2;
n =(j - i)/2;
x = n * n -100;printf("%d + 100 = %d * %d\n", x, n, n);printf("%d + 268 = %d * %d\n", x, m, m);}}}return0;}
//// Created by 86184 on 2024/7/17.////输入某年某月某日,判断这一天是这一年的第几天?
#include <stdio.h>
int main(){
int dataTime =0;printf("请输入时间(格式为:20240717):");fflush(stdout);scanf("%d",&dataTime);// 2024 07 17// 2024
int years = dataTime /10000;// 2024 07 2024 00
int month = dataTime /100- years *100;// 07// 2024 07 17 07 00 2024 00 00
int days = dataTime - month *100- years *10000;printf("%d年 ,%d月 ,%d日 ", years, month, days);
int sum, leap;
switch (month){
case 1:
sum =0;break;
case 2:
sum =31;break;
case 3:
sum =59;break;
case 4:
sum =90;break;
case 5:
sum =120;break;
case 6:
sum =151;break;
case 7:
sum =181;break;
case 8:
sum =212;break;
case 9:
sum =243;break;
case 10:
sum =273;break;
case 11:
sum =304;break;
case 12:
sum =334;break;
default:printf("data error");break;};
sum = sum + days;// 判断这一天是这一年的第几天//1.判断是否为闰年if(years %400==0||(years %4==0&& years %100!=0)){
leap =1;}else{
leap =0;}if(leap ==1&& month >2){
sum++;}printf("这是这一年的第 %d 天。", sum);printf("\n");return0;}//参考答案
void answer(){
int day, month, year, sum, leap;printf("\n请输入年、月、日,格式为:年,月,日(2015,12,10)\n");scanf("%d,%d,%d",&year,&month,&day);// 格式为:2015,12,10
switch (month)// 先计算某月以前月份的总天数{
case 1:
sum =0;break;
case 2:
sum =31;break;
case 3:
sum =59;break;
case 4:
sum =90;break;
case 5:
sum =120;break;
case 6:
sum =151;break;
case 7:
sum =181;break;
case 8:
sum =212;break;
case 9:
sum =243;break;
case 10:
sum =273;break;
case 11:
sum =304;break;
case 12:
sum =334;break;
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("这是这一年的第 %d 天。", sum);printf("\n");}
//// Created by 86184 on 2024/7/18.////***//输入三个整数x,y,z,请把这三个数由小到大输出。
#include <stdio.h>
int main(){
int x, y, z, t;printf("\n请输入三个数字:\n");scanf("%d%d%d",&x,&y,&z);if(x > y){/*交换x,y的值*/
t = x;
x = y;
y = t;}if(x > z){/*交换x,z的值*/
t = z;
z = x;
x = t;}if(y > z){/*交换z,y的值*/
t = y;
y = z;
z = t;}printf("从小到大排序: %d %d %d\n", x, y, z);return0;}