这道c语言面试题题错在哪了

请大家看看这道简单的C语言题为什么选A而不是B_百度知道
请大家看看这道简单的C语言题为什么选A而不是B
A以下正确的描述是( )、switch语句中不能出现continue语句C、只能用continue语句来终止本次循环B、在循环中break语句不能独立出现D
提问者采纳
D 我在这里就不解释啦A的意思终止本次循环所以只有continue语句。B为什么错呢!如果在witch语句中嵌套一个for循环B 就不对了吧。C ,而break 语句是跳出循环结构
提问者评价
感谢你的回答。。Q
其他类似问题
这就是continue语句的用途switch语句中完全可以出现continue语句。——如果这个switch语句包含在循环结构之中的话。A当然是正确的
c语言的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁您还未登陆,请登录后操作!
高手帮忙看看这道C语言题目
共有 3 位网友向您献上回答啦, 对答案满意?赶快给出你的好评,感谢他们吧!
UC问的不无道理
以前有人问过类似问题
看样子我当时的理解就跟现在的情况不同:$
现在的情况,从第一年开始,牛的数量组成数列a[n]:
1,2,3,4,6,9。。。(n=1,……54)
从a[4]开始有规律a[i]=a[i-1]+a[i-3]
不知道输入输出是否必须先输入到0后一次输出所有结果?
还是只要“每个测试实例占一行”,“每个输出占一行”就行了?
后一种比较简单,就先按后一种了。
#include "stdio.h"
void main()
{
int a[5],n;
while((scanf("%d",&n)!=EOF)&&(n!=0))
for(int i=1;i<=n;i++)
a[4]=a[i]=i;
a[4]=a[1]+a[3];
a[1]=a[2];
a[2]=a[3];
a[3]=a[4];
printf("%d\n\n",a[4]);
输入输出的感觉大致是:
2
2
UC问的不无道理
以前有人问过类似问题
看样子我当时的理解就跟现在的情况不同:$
现在的情况,从第一年开始,牛的数量组成数列a[n]:
1,2,3,4,6,9。。。(n=1,……54)
从a[4]开始有规律a[i]=a[i-1]+a[i-3]
不知道输入输出是否必须先输入到0后一次输出所有结果?
还是只要“每个测试实例占一行”,“每个输出占一行”就行了?
后一种比较简单,就先按后一种了。
#include "stdio.h"
void main()
{
int a[5],n;
while((scanf("%d",&n)!=EOF)&&(n!=0))
for(int i=1;i<=n;i++)
a[4]=a[i]=i;
a[4]=a[1]+a[3];
a[1]=a[2];
a[2]=a[3];
a[3]=a[4];
printf("%d\n\n",a[4]);
输入输出的感觉大致是:
2
2
每一个测试实例和它对应的结果是一组,输入0结束。
不是只说一头母牛嘛
您的举报已经提交成功,我们将尽快处理,谢谢!
大家还关注
vb中的数组和文本框问题 Private...请大家帮我看看《水王争霸》这道题,找了好久都没找出错误,一直wrong answer,我是c语言初学者,一些高深的代码还看不懂…………
[问题点数:40分,结帖人u]
请大家帮我看看《水王争霸》这道题,找了好久都没找出错误,一直wrong answer,我是c语言初学者,一些高深的代码还看不懂…………
[问题点数:40分,结帖人u]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
相关帖子推荐:
2013年6月 C/C++大版内专家分月排行榜第三
匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。一道计算机二级c语言程序设计题,为什么我编完后运行不出来啊,但又没有错误。只用看自定义函数部分。_百度知道
一道计算机二级c语言程序设计题,为什么我编完后运行不出来啊,但又没有错误。只用看自定义函数部分。
void NONO (
);&#92,&quot。只用看自定义函数那一部分;
printf(&quot,fun (a.dat&n&elsereturn(*s), fun(a;*t;);0&#39:&s++)m++; i &for(;);}main ( ){ char a[20];
fclose(fp);
printf(&quot, b));0&#39.h&gt。请各位大虾帮帮忙,其他部分是题目本身的;
wf = fopen(&quot,输出数据,&#92;n)return(*t);if(m&%s %s&in,b[20];* 本函数用于打开文件,不能使用C语言提供的求字符串长度的函数;;
FILE *t++)n++; 10 ,
char *t){int m=0, b[20],则返回第一个字符串;char
*fun ( char *s;n)return(*s),&
gets( b),n=0:比较字符串的长度;;
fprintf(w& i++) {
for(i = 0 ;%s&#92, &;*s;stdio, b)),输入数据;
gets( a);}void NONO ( ){&#47,若两个字符长度相同!=&#39.dat&quot:&if(m&n&Input 1r&
char a[20];Input 2th string, b),关闭文件!=&#39!#include &lt,函数返回较长的字符串,调用函数;;);
fp = fopen(&for(;
fclose(wf););。 *&#47;%s&#92程序题是这样的;
提问者采纳
,char *t){
for(i=0; else if(t[i]==0) i++) if(s[i]==0&&t[i]==0) else if(s[i]==0)return tchar *fun(char *s
提问者评价
其他类似问题
按默认排序
其他2条回答
;&#92;ps++)m++;elsereturn s,
char *t){int m=0;n)*ps,n=0;char *ps=s;pt++)n++;if(m&for(;0&#39返回的指针位置不是原先的char
*fun ( char *s;&#92;*;for(!=&#39;if(m&n)return s!=&#39;0&#39;char *pt=t
因为你的s和t已经在循环后改变了,所以是错的,修改方法就是在循环前定义两个临时的字符指针char*保存住s和t,最后返回这个保存的指针就行了
计算机二级c语言的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁这道c语言题目错在哪里啊?_百度知道
这道c语言题目错在哪里啊?
这是我编写的万年历程序:#include &stdio.h&int leap0year(int year) { int i=1;
if(year%4!=0||year%100==0&&year%400!=0)i=0;}int firstday0week(int year){ int j=0; j=(year+(year-1)&#47;4-(year-1)&#47;100+(year-1)&#47;400)%7;}main(){ char *month0name[12]={&一月&,&二月&,&三月&,&四月&,&五月&,&六月&,&七月&,&八月&,&九月&,&十月&,&十一月&,&十二月&}; int numday0month[]={31,28,31,30,31,30,31,31,30,31,30,31}; int firstday0month[12],workarray[12]; int year,i,n,m; printf(&输入年份:&); scanf(&%d&,&year); if(leap0year(year)==1)numday0month[1]=29; firstday0month[0]=firstday0week(year); for(i=1;i&12;i++) firstday0month[i]=(firstday0month[i-1]+numday0mo憨工封继莩荒凤维脯哩nth[i-1])%7; for(i=0;i&12;i++) workarray[i]=-firstday0month[i]; printf(&%34s %d年&#92;n&,&&,year); for(i=0;i&12;i++) {printf(&&#92;n%41s&#92;n&,month0name[i]);
printf(&%15s 星期日 星期一 星期二 星期三 星期四 星期五 星期六&#92;n&,&&);
for(m=0;m&6;m++)
{printf(&%11s&,&&);
for(n=1;n&=7;n++)
{workarray[i]++;
if(workarray[i]&0&&workarray[i]&=numday0month[i])
printf(&%7d&,workarray[i]);
else printf(&%7s&,&&);}
printf(&&#92;n&);
}这是在win-TC上的错误提示:错误 wnl.c 2: 非法字符 &#39;? (0xa1)但是我还是找不出来啊,那位大侠高手帮帮忙啊,感激不尽!!
提问者采纳
在VC++上编译运行,完全是正确的,也能得出你想要的结果,你在win-TC上出憨工封继莩荒凤维脯哩现这样的错误提示: 错误 wnl.c 2: 非法字符 &#39;? (0xa1) ,原因是win-TC版本过低,还不支持显示汉字的功能,而你的程序中出现多处汉字,因此,就会出现这样的错误提示.
你可以把汉字改写成英文,再运行,或者用更好的编程工具VC++6.0或.NET就不会出现这种对汉字有限制的错误了。
顺便请教一下,你的j=(year+(year-1)/4-(year-1)/100+(year-1)/400)%7这个公式用来求出每年中的第一天是星期几,这个公式是怎么推导出来的?
其他类似问题
c语言的相关知识
其他4条回答
注意所有符号都是半角,尤其是&
TC++上编译通过运行正常
TC2.0上编译通过运行正常(除了不能显示汉字)
我用的是VC6.0,调试是一个错误一个警告。改main()为void main()再添加一个头文件conio.h,下面是修改过的程序#include &stdio.h&#include &conio.h&int leap0year(int year){ int i=1;if(year%4!=0||year%100==0&&year%400!=0)i=0;}int firstday0week(int year){ int j=0;j=(year+(year-1)/4-(year-1)/100+(year-1)/400)%7;}void main(){ char *month0name[12]={&一月&,&二月&,&三月&,&四月&,&五月&,&六月&,&七月&,&八月&,&九月&,&十月&,&十一月&,&十二月&};int numday0month[]={31,28,31,30,31,30,31,31,30,31,30,31};int firstday0month[12],workarray[12];int year,i,n,m;printf(&输入年份:&);scanf(&%d&,&year);if(leap0year(year)==1)numday0month[1]=29;firstday0month[0]=firstday0week(year);for(i=1;i&12;i++)firstday0month[i]=(firstday0month[i-1]+numday0month[i-1])%7;for(i=0;i&12;i++)workarray[i]=-firstday0month[i];printf(&%34s %d年&#92;n&,&&,year);for(i=0;i&12;i++){printf(&&#92;n%41s&#92;n&,month0name[i]);printf(&%15s 星期日 星期一 星期二 星期三 星期四 星期五 星期六&#92;n&,&&);for(m=0;m&6;m++){printf(&%11s&,&&);for(n=1;n&=7;n++){workarray[i]++;if(workarray[i]&0&&workarray[i]&=numday0month[i])printf(&%7d&,workarray[i]);else printf(&%7s&,&&);}printf(&&#92;n&);}}getch();}
您可能关注的推广
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 计算机二级c语言题库 的文章

 

随机推荐