标签:记录 错误 scan http 一段 溢出 完成 变量赋值 内存
定义数组数n,循环变量i,j
输入 n
定义数组Num[n]
for j=n-1 to j>=0
共n次
如果j等于0
则输出Num[j]
否则
在输出Num[j]后还要输出空格
定义初始年份Year,不同的数字数量D, 用于储存Year的Y,Y2,求和Sum=0,循环变量i,j,k,g
定义数组d[4]={0}用于储存年份的各个位数,Com[10]={0,1,2,3,4,5,6,7,8,9}用于与d[4]中的数比较,Count[10]={0}用于储存Com[10]与d[4]比较的结果
输入 Year,D;
Y=Year;
Y2=Year;
while(1){
for i=0 to i<4
共4次
对Year取余,减少十倍
对d[i]从0到4分别赋予年份Year的个位数,十位数,百位数,千位数
for j=0 to j<4
共4次
for g=0 to j<4
共4次
如果d[j]==Com[g]
Count[g]++;
for k=0 to k<10
共 10次
如果Count[k]!=0
令Count[k]=0方便下一轮循环
Sum++;统计年份中不同数字的数量
如果 Sum==D,符合题目所要求的不同数字的数量
输出("%d %04d",Y2-Y,Y2);//其中%04d位宽为4,不够往左补0
break;结束循环
Y2+=1;年份加一
Year=Y2;
Sum=0;//不同数字量初始化 方便下一次循环
}
这道题想了很久没有思路,后来听了同学的口头思路自己打了代码,在Dev上成功后就提交成功了
uploading-image-977788.png
定义非负整数n,插入的数m,中转变量t,循环变量i
输入n
定义数组a[10]
for i=0 to i<n
共n次
数组赋值
输入m
a[n]=m令最后一个数组等于m
for i=0 to i<n
共n次
如果a[n]<=a[i]
交换a[n]与a[i]的值
for i=0 to i<n
共n次
输出a[i]
char name[] = "qinrui";
(1)gets(a)
(2)scanf ("%s", a)是读到空格停止。
char a
int b
b=int(a)
定义 十六进制数s,十进制sum,储存s数n,s的位数num
输入 s
n=s
while(s!=0)
s/=10;
num++;
计算s的位数
定义数组a[num]
将s的各个位数分别赋值入a[num]
for i=0 to i<num
共num次
sum+=a[i]乘以16的i次方
则sum就是16进制转换得到的10进制
二进制的转换如上,就是将16的i次方改为2的i次方
(2)
要多注重对基础知识的掌握
减少对编译器的依赖,增加自己的读代码能力
在错了之后,改了之后的一段时间内还要有对这方面复习的计划
对于这次的编程题27分我还是对自己比较满意的
还未完成
标签:记录 错误 scan http 一段 溢出 完成 变量赋值 内存
原文地址:http://www.cnblogs.com/Zeng99/p/7944864.html