题目描述: 输入输出格式: 样例输入: 样例输出: 题目描述: 程序输入: 程序输出: 样例输入: 样例输出: 注意:闰年判断是定式代码,需理解: 方法的多样性 程序输入: 程序输出: 样例输入: 样例输出: 方法的多样性 程序输入: 程序输出: 样例输入: 样例输出: 解题方法的多样性 **程序输入: * 程序输出: 样例输入: 样例输出: 注意:数位分离的代码 题目描述: 程序输入: 程序输出: 样例输入: 样例输出: 题目描述: 输入输出格式: 输入: 1个整数 样例输入: 样例输出:
第一题
编写程序将4个字符构成的字符串用替换加密法编码为密文,其中加密规则是:将原来的字母用字母表中其后的第3个字母替换。注意,最后3个字符用前3个替换,如x用a替换。
输入:4个字符
输出:4个字符ABcx
DEfa
样例代码
#include <stdio.h> int main() { char a[5]; scanf("%s",a); for(int i=0;i<4;i++) { if(a[i]>=120||(a[i]>=88&&a[i]<=90)) { if(a[i]==120)a[i]=97; if(a[i]==121)a[i]=98; if(a[i]==122)a[i]=99; if(a[i]==88)a[i]=65; if(a[i]==89)a[i]=66; if(a[i]==90)a[i]=67; } else a[i]=a[i]+3; } printf("%s",a); return 0; }
第二题
闰年计算。程序输入一个正整数Y,以及另一个正整数N,以一个空格分隔。计算从Y年开始后的第N个闰年是哪一年(如果Y本身是闰年,则Y之后的第一个闰年是Y)。
Y N
Y年开始后的第N个闰年2005 3
2016
参考代码
#include<stdio.h> int main() { int y, n; scanf_s("%d %d", &y, &n); //%d%d默认了两个整数之间有空格 for (y; n > 0; y++) //此法相较法二避免了分类讨论 { if ((y % 4 == 0 && y % 100 != 0) || y % 400 == 0) n--; } printf("%d", y-1); //之所以是输出y-1,是因为当n减到1并且此时y对应的是闰年,n会--,但此时y++仍会执行;要是不减1而输出y,得到的结果每次都是正确结果+1的年份 //不合法语句//system ("pause"); return 0; }
if ((y % 4 == 0 && y % 100 != 0) || y % 400 == 0)//判断闰年的语句
第三题
题目描述:
某城市最高的楼有一部电梯,该电梯依照输入楼层数的先后次序运行。电梯最初在0层。运行完一个输入序列后就停止在该楼层,不返回0层。编写程序计算电梯运行一个序列的时间。电梯每上1层需要6秒。每下1层需要4秒。如在某层停留,无论上下人多少,均停留5秒。
电梯的运行序列。楼层的值大于等于1,小于100 , 0在序列中表示结束序列输入。比如输入序列为 2 1 0, 则意味着电梯先从0层升至2层停留,然后再降至1层停留。
每个序列电梯运行的时间(秒)2 1 0
26
参考代码
#include <stdio.h> int main() { int current_floor; int next_floor; int sum; current_floor = 0; sum = 0; int diff; scanf_s("%d", &next_floor); while (next_floor != 0) { diff = next_floor - current_floor; if(diff>0) { sum = sum + diff * 6; } if (diff<0) { sum = sum + (-diff) * 4; } sum = sum + 5; current_floor = next_floor; scanf_s("%d", &next_floor);//循环输入next_floor直到next_floor==0 } printf("%d", sum); return 0; }
第四题
题目描述:
编写一个程序,当输入一个字符串后,要求不仅能够统计其中字符的个数,还能分别指出其中大、小写字母、数字以及其他字符的个数。
待统计的字符串
五个数值依次为大、小写字母、数字、其他字符和总共含有的字符个数,以空格分隔I enjoyed reading these books very much
1 32 0 6 39
参考代码
#include <stdio.h> #include <string.h> int main() { char a[100]; gets(a,100);//用gets也行,100表示缓冲区大小(可去) int i; i=strlen(a); int total=0,num=0,cap=0,small=0,other=0; for(int j=0;j<=i;j++) { if(a[j]==' ')break; if(a[j]>='A'&&a[j]<='Z')cap++; else if(a[j]>='a'&&a[j]<='z')small++; else if(a[j]>='0'&&a[j]<='9')num++; else other++; total++; } printf("%d %d %d %d %d",cap,small, num,other,total); return 0; }
第五题
题目描述:
请输入一个正整数(如:7654321),然后将该整数按照标准的三位分节格式输出(逗号是西文的逗号,如 7,654,321)
待分节的正整数
分节后的正整数3456789
3,456,789
参考代码
#include <stdio.h> int main() { int a,i; char s[30] = ""; scanf("%d",&a); i = 0; while(1) { s[i] = a%10 + '0'; a = a/10; if(a==0) { break; } i++; }//数位分离 printf("%c",s[i--]); for(i;i>=0;i--) { if((i+1)%3== 0) /* i+1是是单个数字在数字字符串的位置,因为上面i是从0开始的*/ { printf(",%c",s[i]); } else { printf("%c",s[i]); } } return 0; }
int a,s[100]; int i=0; while(1) { s[i] = a%10 + '0'; a = a/10; if(a==0) { break; } i++; }//数位分离
第六题
输入一个整数n(n>=2),判断n是否为素数。是素数输出 “YES”, 否则输出 “NO”。
整数n
是素数输出 “YES”, 否则输出 “NO”。7
YES
参考代码
#include <stdio.h> int main() { int n, x; scanf("%d", &n); x = 0; for (int i = n; i > 0; i--) { if (n % i == 0)x++; } if (x == 2)printf("YES"); else printf("NO"); return 0; }
第七题
从键盘输入一个正整数(>1),然后将该整数分解为1和各个质因子的相乘,如果输入的整数本身就是质数,则应分解为1和该数本身相乘。
输出:因子分解,因子由小到大输出。如:122*318
1*2*3*3
参考代码
#include <stdio.h> int main() { int n; scanf("%d", &n); for(int i=1;i<=n;i++) if (n % i == 0&&i!=n) { n = n / i; printf("%d*", i); i = 1; } else if(n%i==0&&i==n) { printf("%d", i); break; } return 0; }
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算