- 博客(32)
- 收藏
- 关注
原创 进制的转换和进制储存
计算机中常用进制就是二进制和十六进制,当然生活中有狠多进制概念,例如每周记录可以算是七进制,小时和天之间可以算是24进制,时分秒算是60进制。时间: 60进制 60s=1min 60min=1h天数: 24h=1day一打啤酒星期几。
2023-06-24 20:46:22 180
原创 利用switch语句要求按照考试成绩的等级输出百分制分数段,成绩的等级由键盘输入
【代码】要求按照考试成绩的等级输出百分制分数段,成绩的等级由键盘输入。
2023-03-23 20:15:10 2738
原创 求一个3*3矩阵对角线元素之和
利用双重for循环控制输入二维数组,再将a[i][i]累加后输出。printf("对角线之和为:%d\n",sum);printf("请输入矩阵(3*3):\n");
2023-03-16 08:56:35 795
原创 将一个数组逆序输出
分析: 用第一个与最后一个交换#include<stdio.h>#define N 10int main(){ int a[N]={0,1,2,3,4,5,6,7,8,9}; int i,t; printf("原始数组是:\n"); for(i=0;i<N;i++) printf("%d ",a[i]); for(i=0;i<N/2;i++) { t=a[i];
2023-03-06 08:08:44 833
原创 一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同
分析: 学会分解出每一位数#include <stdio.h>int main( ){ long ge,shi,qian,wan,x; printf("请输入 5 位数字:"); scanf("%ld",&x); wan=x/10000; /*分解出万位*/ qian=x%10000/1000; /*分解出千位*/ shi=x%100/10; /*分解出十位*/ ge=x%10; /*分解出个位*/
2023-02-23 10:21:23 552
原创 将一个正整数分解质因数。例如:输入90,打印出90=233*5
对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于(小于的时候,继续执行循环)n,则说明分解质因数的过程已经结束,另外 打印出即可。(2)但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数n.重复执行第二步。(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。#include<stdio.h>int main(){ int n,i; printf("请输入整数:"); sca
2023-02-22 01:32:36 1088
原创 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制
分析: 关键是计算出每一项的值。#include<stdio.h>int main(){ int s=0,a,n,t; printf("请输入 a 和 n:\n"); scanf("%d%d",&a,&n); t=a; while(n>0) { s+=t; a=a*10; t+=a; n--; } printf(
2023-02-20 15:18:54 511
原创 学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示
分析:(a>b)?a:b这是条件运算符的基本例子#include<stdio.h>int main(){ int score; char grade; printf("请输入分数: "); scanf("%d",&score); grade=(score>=90)?'A':((score>=60)?'B':'C'); printf("%c\n",grade); return 0;}
2023-02-18 21:11:35 350
原创 输出9*9口诀
分析: 分行与列考虑,共 9 行 9 列,i 控制行,j 控制列。#include<stdio.h>int main(){ int i,j,result; printf("\n"); for (i=1;i<10;i++) { for(j=1;j<=i;j++) { result=i*j; printf("%d*%d=%-3d",i,j,resul
2023-02-17 13:24:47 166
原创 利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。
#include <stdio.h>int main(){ int i=5; void palin(int n); printf("请输入5个字符\40:\40"); palin(i); printf("\n");}void palin(n)int n;{ char next; if(n<=1) { next=getchar(); printf("相反顺序输出结
2023-02-16 23:49:04 810
原创 判断101到200之间的素数
分析: 判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。#include <stdio.h>int main(){ int i,j; int count=0; for (i=101; i<=200; i++) { for (j=2; j<i; j++) { // 如果j能被i整出在跳出循环 i
2023-02-15 02:25:06 652
原创 打印楼梯,并且在楼梯上方打印两个笑脸
分析: 用 ASCII 1 来输出笑脸;用i控制行,j来控制列,j根据i的变化来控制输出黑方格的个数。#include<stdio.h>int main(){ int i,j; printf("\1\1\n"); /*输出两个笑脸*/ for(i=1;i<11;i++) { for(j=1;j<=i;j++) printf("%c%c",219,219); printf(
2023-02-14 09:50:09 149
原创 打印出所有的“水仙花数“
打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数 本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。#include<stdio.h>int main(){ int i,x,y,z; for(i=100;i<1000;i++) { x=i%10; y=i/10%
2023-02-13 23:58:25 129
原创 输入某年某月某日,自动判断这一天是这一年的第几天
#include <stdio.h>int main(){ 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:
2023-02-13 23:50:20 236
原创 输入三个整数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; }
2023-02-13 23:40:09 505
原创 输入一个字母显示星期几,重复则再输入
#include<stdio.h>int main(){ char i,j; printf("请输入第一个字母:\n"); scanf("%c",&i); getchar();//scanf("%c",&j);的问题,第二次是读入的一个换行符,而不是输入的字符,因此需要加一个getchar() 吃掉换行符 switch(i) { case 'm': printf("mo
2023-02-13 23:34:53 135 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人