屏幕中央出现两个已知n为正整数数100和n,要求被判断哪个数大

以下试题来自:
问答题 【说明】 下面C程序代码的功能是:对于输入的一个正整数n(100&n<1000),先判断其是否是回文数(正读反读都一样的数)。若不是,则将n与其反序数相加,再判断得到的和数是否为回文数,若还不是,再将该和数与其反序数相加并进行判断,依此类推,直到得到一个回文数为止。例如,278不是回文数,其反序数为872,相加后得到的1150还不是回文数,再将1150与其反序数511相加,得到的1661是回文数。 函数int isPalm(long m)的功能是:将正整数m的各位数字取出存入数组中,然后判断其是否为回文数。若m是回文数则返回1,否则返回0。 【C程序代码】 #include <stdio.h> #include <stdlib.h> int isPalm(long m) { /*判断m是否为回文数*/ int i = 0, k = 0; char str[32]; while (m > 0) { /*从个位数开始逐个取出m的各位数字并存入字符数组str*/ str[k++] = (1)
+ &0&; m = m / 10; } for(i = 0; i < k/2; i++) /*判断str中的k个数字字符序列是否是回文*/ if ( str[i] != str[ (2) ] ) return 0; return 1; } int main ( ) { long n, a, printf(&input a positive integer:&); scanf(&%ld&,&n); if (n < 100 || n > =1000) return -1 ; while( (3) ) { /*n不是回文数时执行循环*/ printf(&%ld-> &, n); for(a = 0, t = t > 0; ) { /*计算n的反序数并存入a*/ a = (4) *10 + t % 10; t = t / 10; } /*end of for*/ n = (5) ; /*与反序数求和*/ } /*end of while*/ printf (&%id\n&,n); system(&pause&); return 0; } (1) m%10,或其等价表示 (2) k-1-i (3) !isPalm(n),或isPalm(n)!=1,或isPalm(n)= =0 (4) a (5) n+a
为您推荐的考试题库
你可能感兴趣的试题
(1) j+1 (2) i+1 (3) 0 (4) i (5) -1
热门相关试卷
最新相关试卷-8;[5.4]=5;[-6.99]=-7;(2)若[x]=-5,则x的范围是-5<x<-4;(3)已知正整数n小于100,=n-2,求所有满足条件的正整数n.
科目:初中数学
题型:解答题
已知[x]表示不超过x的最大整数,如[3]=3;[3.14]=3;[-3.14]=-4.根据以上规则解答下列问题:(1)[-8]=______;[5.4]=______;[-6.99]=______;(2)若[x]=-5,则x的范围是______;(3)已知正整数n小于100,=n-2,求所有满足条件的正整数n.
科目:初中数学
来源:不详
题型:解答题
已知[x]表示不超过x的最大整数,如[3]=3;[3.14]=3;[-3.14]=-4.根据以上规则解答下列问题:(1)[-8]=______;[5.4]=______;[-6.99]=______;(2)若[x]=-5,则x的范围是______;(3)已知正整数n小于100,[n2]+[n3]+[n6]=n-2,求所有满足条件的正整数n.
精英家教网新版app上线啦!用app只需扫描书本条形码就能找到作业,家长给孩子检查作业更省心,同学们作业对答案更方便,扫描上方二维码立刻安装!
请输入姓名
请输入手机号用写一个程序,要求输入N个整数,按从小到大的顺序输出,就说说思路。如果N=4,写个具体的程序。
定义个足够大的数组,把输入的N个整数作为数组的前N个元素。
先用基本的相关信息把这个数组的前N个数排序,然后按排好的顺序输出这前N个数就行了。
#include "stdio.h"
#define MAX 100
void main()
{
int n,num[MAX],i,j,k;
printf("N:");
scanf("%d",&n);
for(i=0;i&n;i++)
printf("Num%d:",i+1);
scanf("%d",&num[i]);
for(i=0;i&n-1;i++)
for(j=0;j&n-1-i;j++)
if(num[j]&num[j+1])
num[j]=num[j+1];
定义个足够大的数组,把输入的N个整数作为数组的前N个元素。
先用基本的相关信息把这个数组的前N个数排序,然后按排好的顺序输出这前N个数就行了。
#include "stdio.h"
#define MAX 100
void main()
{
int n,num[MAX],i,j,k;
printf("N:");
scanf("%d",&n);
for(i=0;i&n;i++)
printf("Num%d:",i+1);
scanf("%d",&num[i]);
for(i=0;i&n-1;i++)
for(j=0;j&n-1-i;j++)
if(num[j]&num[j+1])
num[j]=num[j+1];
num[j+1]=k;
printf("\nResult:\n");
for(i=0;i&n;i++)
printf("%d\n",num[i]);
printf("\n\n");
}
其他答案(共3个回答)
,第一种算法(就是用枚举加if条件)适用于整数数目较小的时候,数目多的话逻辑上会很麻烦,但效率高于第二种.第二种是选择排序,算法虽然有点复杂,但当整数数目多时(如100个时,这时你用第1种算法写到猴年马月也写不完,而此时第二种方法无论是逻辑还是算法都十分简单了),十分实用.算法1:#include&iostream.h&voidmain(){cout&&"请输入4个数字"&&inta,b,c,d;cin&&a&&b&&c&&d;if(a&=b){a+=b;b=a-b;a-=b;}//按由大到小方式理想排序为a,bif(a&=c){a+=c;c=a-c;a-=c;}//按由大到小方式理想排序为a,c,belse{if(c&=b){c+=b;b=c-b;c-=b;}}//按由大到小方式理想排序为a,c,bif(a&=d){a+=d;d=a-d;a-=d;}//按由大到小方式理...
呵呵,我想了两种相关信息,第一种算法(就是用枚举加if条件)适用于整数数目较小的时候,数目多的话逻辑上会很麻烦,但效率高于第二种.第二种是选择排序,算法虽然有点复杂,但当整数数目多时(如100个时,这时你用第1种算法写到猴年马月也写不完,而此时第二种方法无论是逻辑还是算法都十分简单了),十分实用.算法1:#include&iostream.h&voidmain(){cout&&"请输入4个数字"&&inta,b,c,d;cin&&a&&b&&c&&d;if(a&=b){a+=b;b=a-b;a-=b;}//按由大到小方式理想排序为a,bif(a&=c){a+=c;c=a-c;a-=c;}//按由大到小方式理想排序为a,c,belse{if(c&=b){c+=b;b=c-b;c-=b;}}//按由大到小方式理想排序为a,c,bif(a&=d){a+=d;d=a-d;a-=d;}//按由大到小方式理想排序为a,d,c,b//d如在a与c之间则自动省略,不比较/*比较d的值与c,c,此时a最大,d在b,c间*/else{if(d&=c&&d&=b){d+=c;c=d-c;d-=c;}//下面d小于bif(d&=b){d+=b;b=d-b;d-=b;}} &&endl&&"数据排列为"&&""&&a&&""&&d&&""&&c&&""&&b&&}算法2:#include&iostream.h&//首先键入要输入的整数个数,按回车结束,然后输入你想排序的整数,就能得到结果了voidinput(intn,inta[10]){for(inti=0;i&n;i++)cin&&a[i];}voidpaixu(intn,inta[10]){inttemp,for(inti=0;i&n-1;i++){flag=i;temp=a[i];for(intj=i+1;j&n;j++){if(a[j]&temp){temp=a[j];flag=j;}}temp=a[i];a[i]=a[flag];a[flag]=}}voidoutput(intn,inta[10]){for(inti=0;i&n;i++)cout&&a[i]&&}voidmain(){intn,a[10];cin&&n;input(n,a);paixu(n,a);output(n,a);}
#include&stdio.h&
void main(void)
int i,j,a[9999],
printf("\n请输入整数个数:\n");
scanf("%d",&number);
for(i=1;i&=i++)
{printf("\n请输入第%d整数个数:",i);
scanf("%d",a[i]);
temp=a[1];
for(i=1;i&i++)
for(j=i+1;j&=j++)
if(a[i]&a[j])
{temp=a[j];
a[j]=a[i];
printf("\n排序结果:\n");
for(i=1;i&=i++)
printf("%d\t",a[i]);
#include &stdio.h&
void main()
void sort(int name[],int n);
void pri...
第一题:#include "stdio.h"
void main()
int a,b,sum=0;
for(a=0;a&=9;a++...
输入用scanf 输出用prinf
#include&stdio.h&
int fun(int n)
int i,sum=0;
for(i=1;i&=n;i++)sum+=i;...
奇瓦伊Casa Andina Classic Colca怎么样?有人住过吗?
答: 如果你理解能力强考数据库,其中比如关系数据库之类的需要去领悟
如果你记忆能力强考网络,各种各样的名词,背下来就得分。
还有官方指定的教材要有,上机最好做一做...
答: 新年好!首先,你必须了解计算机的组成和结构以及操作系统的运作原理,这是基础
如果你想学习开发多线程、WINDOWS应用、动态链接库、WINDOWS组件的话,建...
大家还关注
确定举报此问题
举报原因(必选):
广告或垃圾信息
激进时政或意识形态话题
不雅词句或人身攻击
侵犯他人隐私
其它违法和不良信息
报告,这不是个问题
报告原因(必选):
这不是个问题
这个问题分类似乎错了
这个不是我熟悉的地区欢迎加入我们,一同切磋技术。 &
用户名: &&&
密 码: &
共有 9529 人关注过本帖
标题:输入两个正整数m和n(m≥1,n≤1000),输出m到n之间的所有水仙花数&#65377 ...
等 级:新手上路
结帖率:100%
&&问题点数:0&&回复次数:2&&&
输入两个正整数m和n(m≥1,n≤1000),输出m到n之间的所有水仙花数。
编了一个水仙花数程序,大家共同进步哈!
#include &stdio.h&
&int main(void)
&&& int n,m,k,a,b,c;
&&& printf(&Input m: &);
&&& scanf(&%d&,&m);
&&& printf(&Input n: &);
&&& scanf(&%d&,&n);
&&& while(k&n)
&&&&&&&&a=k/100;
&&&&&&&&b=k%100/10;
&&&&&&&&c=k%10;
&&&&&&&&if(k==a*a*a+b*b*b+c*c*c)
&&&&&&&&printf(&%d\n&,k);
&&&&&&&&k++;
&&& printf(&\n&);
&&& return 0;
搜索更多相关主题的帖子:
来 自:淮河河畔
等 级:贵宾
威 望:61
帖 子:2389
专家分:13384
/view/152077.htm
等 级:新手上路
版权所有,并保留所有权利。
Powered by , Processed in 0.056702 second(s), 8 queries.
Copyright&, BCCN.NET, All Rights Reserved若正整数n使得在计算n+(n+1)+(n+2)的过程中,个数位上均不产生进为现象,则称n为“本位数”,例如2和30是 “本位数”,而5和91不是“本位数”.现从所有大于0且小于100的“本位数”中,随机抽取一个数,抽到偶数的概率为____.-题库-e学大
您好,欢迎来 e学大,我们来自全国最大的智能教育机构——学大教育
当前位置:
若正整数n使得在计算n+(n+1)+(n+2)的过程中,个数位上均不产生进为现象,则称n为“本位数”,例如2和30是 “本位数”,而5和91不是“本位数”.现从所有大于0且小于100的“本位数”中,随机抽取一个数,抽到偶数的概率为____.-题库-e学大
【填空题】若正整数n使得在计算n+(n+1)+(n+2)的过程中,个数位上均不产生进为现象,则称n为“本位数”,例如2和30是 “本位数”,而5和91不是“本位数”.现从所有大于0且小于100的“本位数”中,随机抽取一个数,抽到偶数的概率为____.&&&1&&&1、答案解析相关微课程上一题:下一题:发现相似题
学生端下载

我要回帖

更多关于 已知n为正整数 的文章

 

随机推荐