请教一道c语言顺序查找题

这题错哪了?什么意思呢?怎么改?图片

4个回答

没看出什么错误,这是顺序查找

可以尝试编译一下,然后从上往下慢慢注释掉进行查找

return 那改成一个试试,int j;改成j=i和j=-1;return j; 试试

初步看一下:

似乎需限定一下, 当n<=0 时, return -1

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
请教一道C语言题
题目如下rn[code=C/C++]rn抓住奶牛!★★★★rnrnTime Limit:1000MS Memory Limit:65536KrnTotal Submit:45 Accepted:12 rnrnDescription rnrn不得了,xiaoC的农场里跑出来了一只奶牛,这可是让xiaoC很是揪心啊,于是xiaoC立刻放下了手头的工作,想疯狂的奶牛奋力追去,但说来也怪,xiaoC的走法还真有一点特殊,他每一步有两种走法: rnrn步行:xiaoC可以从任何X位置,一步走到X-1或X+1位置 rn跳跃:xiaoC可以从任意X位置,一步跳跃到2*X的位置 rnrn现在我们假设奶牛并没有意识到xiaoC的追来,还在原地傻傻地站着,请你来帮xiaoC计算一下,他需要多少步,才能把奶牛逮住!!! rnrnrnInput rnrn每个测试实例为一行,包含两个数据,N和K,N表示xiaoC现在的位置,K表示奶牛的位置,0 ≤ N,K ≤ 100,000rnrnOutput rnrn输出xiaoC能逮住奶牛的最少步数,每个测试实例输出一行rnrnSample Input rnrnrn5 17rnrnSample Output rnrnrn4rnrnHint rnrn在这个实例中最快的路径为5-10-9-18-17,共四步rnrnSource rnrnxiaoCrn[/code]rnrn我的第一个想法是倒着来,但是不行rn然后我想正着来,以5和35为例,5在4-8之间,取n1=2。35在32-64之间,取n2=5。首先判断5*2^(n2-n1)-35是否大于2^(n2-n1),如果大于则5-1, 如此下去。但也不行。rnrn所以请教大牛们,这道题有什么其他的思路。
请教一道c语言题
rn程序填空,不要改变与输入输出有关的语句。rn输入一个正整数repeat (0=m&&fib(i)<=n)rn f=fib(i); rn printf ("%ld ", f);rn i++;rn rn rn while(fib(i)<=n);rnrn printf("\n");rnrn rnrnlong fib(int n)rnrn int x1, x2, x, i;rn rn if(n==1)rn x=1;rn elsern x1=0;rn x2=1;rnrn for(i=1;i<=n-1;i++)rn x=x1+x2;rn x1=x2;rn x2=x;rn rn return x;rnrnrnrn为什么老师的编译器说是错的
c语言的一道题
[size=10px][b][color=#800000]写一个能够实现查找、删除、添加、插入功能的程序,关于学生成绩的查询,一般含有学号,姓名,语数外三科成绩就好,谢谢大家~![/color][/b][/size]rn[color=#333300]注:自定义类型写在一个头文件中[/color]
一道C语言题~~
一 语言和环境 rnA 实现语言 rn C rnB.环境要求 rn VC++6.0 rnrnrn二 要求 rnrn 实现一个简易的日期加1天系统,从键盘接受用户日期、判断输入的日期值是否有效、日期加一天后的日期.. rn A)预先定义一个日期结构变量,包括年、月、日三个成员,从键盘接收用户输入的日期值(年、月、日)存储在日期结构变量中,计算该日期后一天的日期值,如果输入的日期有效,且不是某月的最后一天,则该天的后一天为将日值加1后的日期 rn B)判断输入的日期值是否有效.如果该值无效,则输出 "无效日期值 "后退出. rn 注:有效的日期值指: rn年:必须是四位正整数,如:1995 rn月:必须是大于0小于等于12的整数 rn日:必须考虑上面输入的月值做相应的判断,如果月值是1、3、5、7、8、10、12,那么该月的天数应该大于0小于等于31天;如果月值是4、6、9、11,那么该月的天数应该大于0小于等于30天;如果月值等于2那么该月的天数应该等于28天,(不考虑闰年) rn C)如果输入的值有效果,判断输入的日期值是否是1到11月的最后一天,如果是,那么该天的后一天应该是下个月的第一天. rn D)如果输入的值有效,判断输入日期值是否是12月的最后一天,如果是,那么该天的后一天应该是下一年的第一天 rn E)在实现功能的同时,要求注意编程的规范:程序逻辑分明,关键代码有注释,书写有缩进. rn
一道C语言题
用一辆吉普车穿越1000公里的沙漠。吉普车的总装油量为500加化,耗油率为1加仑/公里。由于沙漠中没有油库,必须先用这辆车在沙漠中建立临时油库。该吉普车要以最少的油耗穿越沙漠,应在什么地方建立临时油库,以及在各处安放多少油为最好?(谭浩强编的《C语言程序设计教程》P106)rn请用C语言的循环结构设计该程序。
一道c语言题
有n个人围成一圈,按顺序从1到n编好号。从第一个人开始报数,报到3的人退出圈子,下一个从1开始报数,报到3的人退出圈子。如此下去,直到留下最后一个人,请按退出顺序输出退出圈子的人的编号。rn用简单的c语言编写,谢谢了。rn想了好久,没有思路,给个想法也行
c语言 一道题
#includernmain()rn int a=1,b=2,c=3;rn if(c=a)printf("%d\n",c); //if(c=0) 为什么不能为0, 是把if条件当做假了吧 ?所以不执行rn else printf("%d\n",b);rn system("pause");rnrnrnrn谢谢
一道c语言的题
哪位大虾帮忙看看这道题 谢谢rnrn对c语言运算符优先级的叙述正确的是:rnA 关系运算符高于逻辑运算符rnB 算术运算符高于逻辑运算符rnrn不知道答案是哪个阿?rn
请教大家C语言一道题
用C语言编写一程序,统计30个学生3门课的成绩信息rn要求:rn能按总分,数学成绩,英语成绩,计算机成绩分别排序rn能分别统计数学,英语,计算机中不及格人数rn能按学号查找学生,并显示该学生信息。rn
一道简单的C语言的题,请教大家!
main()rnrn char * str[]="apple","banana",“orange”,“pear";rn char **p;rn int x;rn p=str;rn for(x=1;x<3;x++) rn printf("% s\n",*(++p));rnrn请给出答案及其解释 谢谢!
看见一道c语言题,请教一下
如何将整形的数组变量储存到指针数组中?rnrn比如说rn char pre[9] = 10, 20, 30, 40, 50 ,60, 70, 80, 90;rnrn char *PRE[9];rnrn如何将pre数组中的九个整数变量,保存到PRE数组中?
请教一道c语言数组的题!!!
有一个 已经排好序的数组,要求输入一个数。在数组中查找是否有这个数,如果有,将该数从数组中删除,要求删除后的数组仍然保持有序,如果没有,则输出“数组中没有这个数!”rn例如有序数组为23,45,60,67,88
请教一道C语言题,简单!!
输入N,输出如下图示的字符图形,如N=3时rn 1rn 1 2 1rn1 3 3 1rn 1 2 1rn 1rn我写的程序只有在N<=3时才正确,N=4就不对了,请高手指点
一道c语言指针题
请问这道题输出结果是多少?为什么?rnmain() rnrnint a[5] = 1,2,3,4,5;rnint *ptr = (int*)(&a+1);rnrnprintf("%d %d" , *(a+1), *(ptr-1));rnrn
问一道C语言的题
描述 Description rn   给定一个长度为N(0rn#include rn#include rn#include rnrn#define N 10000rnint m=0;rn/*交换位置*/rnvoid swap(int *pt1,int *pt2)rnrn int temp;rn temp=*pt1;rn *pt1=*pt2;rn *pt2=temp;rnrn/*冒泡排序*/rnvoid maopaopaixu(int*q1,int n) rn rn int i,j; rn for(i=0;i
一道简单的C语言题
[img=https://img-bbs.csdn.net/upload/201806/07/1528334796_511676.png][/img]rnrn这道题我这样写有什么问题呢?rnrn[code=c]/*---创建一个函数search_idx,将和有n个元素的数组v中的key相等的所有rn元素的下标存储在数组idx中,返回和key相等的元素的个数。---*/rnrn#include rnrnint search_idx(const int v[], int idx[], int key, int n)rn int i, num = 0;rn rn key = v[n];rn rn for (i = 0; i < n; i++)rn if (v[i] == key)rn idx[num++] = i;rn rn rn return num;rnrnrnint main(void)rnrn int n, v[n+1], idx[n], key, i, num;rn rn printf("请输入v数组的元素个数:");rn scanf("%d",&n);rn rn printf("请输入v数组的元素:");rn for(i = 0; i < n+1; i++)rn printf("请输入v数组的元素:");rn scanf("%d",&v[i]);rn rn rn num = search_idx(v, idx, key, n);rn rn printf("key为%d,它在v数组中的个数和下标为:%d",v[n],num);rn for(i = 0; i < num; i++)rn printf("%d ",idx[i]);rn rn rn return 0;rn [/code]
c语言一道题 怎么做
rn六、平方和与立方和rnrnTime Limit:1000MS Memory Limit:65536KrnTotal Submit:85 Accepted:44rnrnDescriptionrnrn给定一段连续的整数的开头和结尾,求出他们中所有偶数的平方和以及所有奇数的立方和。rnrnInputrnrn输入一组数据,该组测试实例包含一行,由两个整数m(开头)和n(结尾)组成 (m <= n) ,m与n之间用空格隔开。rnrnOutputrnrn对于该组输入数据,输出一行,应包括两个整数x和y,分别表示该段连续的整数中所有偶数的平方和以及所有奇数的立方和,两数之间有一个空格,输出结果后换行。 rn你可以认为32位整数足以保存结果。 rnrnSample Inputrnrnrn1 3rn2 5rnSample Outputrnrnrn4 28rn20 152rnHintrnrn以上输入输出样例中有两组的测试数据rnrnSourcern下面是我做的 不知道哪里错rn#include rnint main()rnrn int b,c;rn scanf("%d %d",&b,&c);rn int a[c],i,s=0,d=0;rn for(i=b;i<=c;i++)rn a[i]=i;rn for(i=b;i<=c;i++)rn if[i]%2==0)rn s=s+a[i]*a[i];rn elsern d=d+a[i]*a[i]*a[i];rn printf("%d %d",s,d)rn return 0;rnrn
C语言的一道函数题
写一函数,使输入的一个字符串按反序存放,在主函数中输入和输出字符串。rnrn请问如何确定数组的长度啊?
C语言的一道概念题
以下正确的是:rnA.continue语句的作用是结束整个循环的执行rnB.在循环体内使用break语句或continue语句的作用相同rnC.只能用continue语句来终止本次循环rnD.在循环中break语句是结束整个循环的执行rnrnrnrn答案是D,但是我就搞不懂C是为什么错了,各位大鸟帮忙解释一下C,谢谢,跪求
一道c语言的简单题
题目意思是要输出第n个不含l这个数字的数,比如n是10,l是1的时候rn十个数应该依次是 2,3,4,5,6,7,8,9,20,22,所以输出数就应该是22rn我写的是这样的,但是是错误的……麻烦帮我找找错误改正一下rn#includernint main()rnrn int n,l,i,y,count=0,a;rn while(scanf("%d%d",&n,&l)!=EOF)rnrn for(i=1;i<=1000000;i++)rn rn int flag=0;rn a=i;rn while(a)rn rn y=a%10;rn a/=10;rn if(y==l)rn flag=1;rn rn if(flag==0)rn rn count++;rn rn if(count==n)rn break;rn rn printf("%d\n",i);rnrn return 0;rnrn
求助一道C 语言题!!!!
任意给定一个字符串s,将s中的各字母按照字典顺序排序形成新的字符串t,依次输出t中字符在原字符串s中的前一位rn如exam 排序后为aemx rna的前一位是x,e的前一位是m ,m的前一位是a, x的前一位是ern最后输出xmae
一道循环结构的C语言题
下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,请选择填空。rn#includern int main()rn rn int i=0,j,k;rn dorn rn i++;rn k=316-13*i;rn while([color=#FF0000]k%11[/color]);rn j=k/11;rn printf("316=13*%d+11*%d",i,j);rn return 0;rn rnrn上面题的答案就是红色字显示的答案,还有个选项是k%11==0,我感觉这个选项也可以啊,rn上机操作以后两个选项都可以实现,不过结果不同,想请大神们帮我细致的分析一下。
一道C语言题(不简单)
程序如下:rn#include rnrnint a=0;rnint b=1;rnrnvoid main()rnrnrnrn问:变量a,b的地址连续吗?为什么?rnC编译器是如何分配a,b地址的?
c语言的一道简单的题
这是一个我在高中时自己编写的一个简单的程序,就是用c编写的
一道C语言坑爹题
请写出以下代码输出结果: #include &lt;stdio.h&gt; int main(){ char c; unsigned char uc; unsigned short us; c = 128; ...
求助!一道C语言题
Problem DescriptionrnGive you two numbers A and B, if A is equal to B, you should print "YES", or print "NO".rnrnInputrneach test case contains two numbers A and B.rnrnOutputrnfor each case, if A is equal to B, you should print "YES", or print "NO".rn 我的代码:rn#includern#includernint main()rnrn int l1,l2,i,j,L1,L2,ll1,ll2,lll1,lll2,f;rn char a[1100],b[1100];rn while(scanf("%s%s",&a,&b)!=EOF)rn rn L1=strlen(a);rn L2=strlen(b);rn l1=l2=-1;rn for(i=0;ill2;i--)rn rn if(b[i]!='0')rn rn f=0;rn printf("NO\n");rn break;rn rn rn if(f==1)rn rn if(ll1-l1==ll2-l2)rn rn f=1;j=l2;rn for(i=l1;ill1;i--)rn rn if(a[i]!='0')rn rn f=0;rn printf("NO\n");rn break;rn rn rn if(f==1)rn rn if(ll1-l1==ll2-l2)rn rn f=1;j=l1;rn for(i=l2;i=l1;i--)rn rn if(a[i]!='0')rn rn lll1=i;rn break;rn rn rn for(i=L2-1;i>=l2;i--)rn rn if(b[i]!='0')rn rn lll2=i;rn break;rn rn rn if(lll1-l1==lll2-l2)rn rn f=1;j=l2;rn for(i=l1;i<=lll1;i++)rn rn if(a[i]!=b[j])rn rn f=0;rn printf("NO\n");rn break;rn rn j++;rn rn if(f==1) printf("YES\n");rn rn else printf("NO\n");rn rn rn return 0;rn rn 想知道哪错了??错误的测试数据举例??rn题在:rnhttp://acm.hdu.edu.cn/showproblem.php?pid=2054rn rn rn rn
求助C语言的一道题
编写一个程序,用户输入日期,计算该日期是这一年的第几天。rn【样例输入】2006 2 21rn【样例输出】52rn【样例说明】用户以年月日的格式输入,中间以空格分割,程序计算出该天是输入年份的第几天并输出该天数。另外还需要判断这一年是否为闰年。rn#includernint main()rnrn int a,b,c,d;rn scanf("%d %d %d",&a,&b,&c);rn if((a%4==0&&a%100!==0)||a%400==0)rn rn if(b=1)rn d=c;rn else if(b=2)rn d=31+c;rn else if((b>=3&&b<=6)&&b%2==0)rn d=61*(b-2)/2+30+c;rn else if((b>=3&&b<=6)&&b%2!==0)rn d=61*(b-1)/2+c-1;rn else if(b>=7&&b%2==0)rn d=61*(b-8)/2+31+182+c;rn else if(b>=7&&b%2!==0)rn d=61*(b-7)/2+c-1+182;rn printf("%d\n",d);rn else rn rn if(b=1)rn d=c;rn else if(b=2)rn d=31+c;rn else if((b>=3&&b<=6)&&b%2==0)rn d=61*(b-2)/2+29+c;rn else if((b>=3&&b<=6)&&b%2!==0)rn d=61*(b-1)/2+c-2;rn else if(b>=7&&b%2==0)rn d=61*(b-8)/2+31+181+c;rn else if(b>=7&&b%2!==0)rn d=61*(b-7)/2+c-1+181;rn printf("%d\n",d);rn return 0;rn rn
求助一道c语言题
题目是,通过函数调用的方法实现:输入50组数据,数据包括姓名和成绩,并输出最高分,最低分,前三名成绩,平均分及超过平均分人数,并把以上输入到文本中。。。
C语言初学的一道题!
写一个程序:用于接收用户输入的两个小数(可以是整数也可以是小数),对其执行加、减、乘、除及求余运算,然后以格式化的方式计算结果,要求小数点保留两位有效数字。
C语言笔试的一道题
#includern#includernrntypedef union int x;short k;char s[8];Mode;rntypedef struct Mode m;long long x;int y;Type;rnrnint main(void)rnrn Type t;rn t.m.k = 1234;rn t.m.x = 0x123456789;rn strcpy(t.m.s,"\0\0\0\0\0");rn printf("%d,%d,0x%x\n",sizeof(Type),sizeof(&t),t.m.k);rn t.x = 1234;rn t.y = t.x++;rn printf("%d,%d\n",t.x,t.y);rn return 0;rnrn[img=https://img-bbs.csdn.net/upload/201310/13/1381638439_482346.jpg][/img]rn我在VS2010和GCC下测试过,后面那个printf("%d,%d\n",t.x,t.y);输出的是1235,0rn麻烦各位高手指点一下后面那个为什么是0??
一道基础的C语言题·!!~~~~~~~~~~~~!!!!!!!!!!!!!!
while(fgets(xx[i],80,fp)!=NULL)rn p=strchr(xx[i],'/n';rn if(p) *p=0;rn i++;rnrnrnif(p) *p=0; 什么用的???rn
一道C语言的题 求解!!
int y,a;rny=2,a=1;rnwhile(y--!=-1)rndo a*=y;a++;while(y--);rnprintf("%d,%d",a,y);rnrn问题是 为什么a=1 ?rn谢谢各位大大!!感激不尽!!
问C语言一道题
有一个已经链好的单链表,如有a,b,c,d,e,head五个结点。rnhead->e->d->c->b->a->null;rnrn只用用两个临时结点,p,q,把链接顺序倒过来,rnhead->a->b->c->d->e->null;rnrn请高手指教一下,并请作算法解释。。多谢。。rnrnrnrn
一道C语言指针题
RT。rn题目如下:rn不合法的main函数命令行参数表示形式是:rnA)main(int a,char * c[])rnB)main(int arc,char * *arv)rnC)main(int argc,char * argv)rnD)main(int argv,char * argc[])rnrn最好能够给出选择的理由
求助一道C语言的题
实现对不多于50个100以内的自然数进行排序的程序,除语言要求是C语言外,其他的限制条件自行设计。
华为的一道c语言题
#include rnchar pp[]="abcde";rnrnchar * getchar(char* p)rnrn p=pp;rn return p;rnrnrnvoid main()rnrn char *ar=NULL;rn rn if(NULL!=getchar(ar))rn rn cout<
C语言:顺序查找和二分查找
任务代码: 顺序查找元素: #include #define SIZE 10 int main() { int a[SIZE]={1,2,3,4,5,6,7,8,9,10}; int index=-1;//如果末尾没有找到,默认函数为=-1 int i,number; printf("请输入要查找的数据:"); scanf("%d",&number)
顺序查找和折半查找(C语言)
C语言链表实现对链表的两种查找方法: 顺序查找和折半查找
C语言实现顺序查找
C语言实现顺序查找#include<stdio.h> int search(int a[], int y, int x); /*对自定义的函数search进行声明*/ int main(void) { int i, x, n; /*变量定义*/ int a[10]; printf("请输入10个数字!\n"); for(i = 0; i < 10; i++)
相关热词 c#检测非法字符 c#双屏截图 c#中怎么关闭线程 c# 显示服务器上的图片 api嵌入窗口 c# c# 控制网页 c# encrypt c#微信网页版登录 c# login 居中 c# 考试软件