菜鸡c语言,菜鸟学C语言

本文目录一览:

c语言菜鸡,这道很简单,但我的运行正确,提交就错求,大佬一个代码,如图,谢谢

一、题目要求输入的数字有区间,你scanf要嵌套一个循环验证输入。

二、当前存款b的累加,应放在判断后面,否则第一次输入的值就没有被判断。

三、注意题目要求先t次输入,再输出t行结果,不是每次输入就输出。要用数组保存每次输入的结果,最后循环输出。(这就是为什么题目设定t的区间是大于1的整数,因为要作为数组的维度,当然用动态数组做,另当别论)。

下面是代码,你参考:

#includestdio.h

int main()

{

  int a=0,b=0,t=0,i,j=1,flag[1000];

  while(t=0 || t1000)

      scanf(“%d”,t);

  for(i=0;it;i++)

  {

      while(a=0 || a100000 || b=0 || b100000)

          scanf(“%d%d”,a,b);

      while(1)

      {

          if(ba)//存款不够吃饭

          {

              flag[i]=0;

              break;

          }

          if(j=a)//存款够且收入正增长

          {

              flag[i]=1;

              break;

          }

          b=b+j-a;

          j=j*2;

      }

      a=b=0,j=1;

  }

  for(i=0;it;i++)

  {

      if(flag[i])

          printf(“YES\n”);

      else

          printf(“NO\n”);

  }

  return 0;

}

c语言菜鸡,这道题我知道是.多实例.但我真的不会.多实例.,求大佬一个代码,谢谢,如图?

按照题目要求编写的计算换瓶数的C语言程序如下

#includestdio.h

void cal_bottle(int m){

int total=0;//total表示换瓶总数

while(m=3){

total=total+m/3;

m=m/3+m%3;

}

if(m==2) {total++;}

printf(“%d\n”,total);

}

int main()

{

int n;//n表示空瓶数

scanf(“%d”,n);

while(n!=0){

cal_bottle(n);

scanf(“%d”,n);

}

return 0;

}

c语言菜鸡,运行都对,但提交就错,求大佬一个正确的代码,如图,谢谢

因为你的程序没有考虑十位是7或者百位是7的数字,所以有错.

因为N小于等于3000,所以考虑个位,十位或者百位是7的数字就可以了.

改进后的完整的C语言程序如下

#includestdio.h

int main(){

int a,b,i=1,j=1;

scanf(“%d”,a);

for(i=1;i=a;i++){

scanf(“%d”,b);

for(j=1;j=b;j++){

if(j%7==0 || j%10==7 || j/10%10==7 || j/100%10==7){

  printf(“%d “,j);

}

}

printf(“\n”);

}

return 0;

}

C语言 菜鸡求救 是想让数组a中的整数按相反顺序存放

#include stdio.h

int main (void)

{

int a[100],b,c;

void miao(int *a,int c);

printf(“输入数组中数字个数”);

  scanf(“%d”,c);

printf(“输入数组”);

for(b=1;b=c;b++)

scanf(“%d”,a[b-1]);//这里少了个

miao(a,c);

for(b=1;b=c;b++)

{

printf(“%d\t”,a[b-1]);

if(b==c)

printf(“\n”);

}

return 0;

}

void miao(int *a,int f)

{

int b[100];

int e;

// b=a;//问题就出现在这里 你把a的首地址给了b 

for(e=1;e=f;e++)

{

*(b+e-1)=*(a+e-1); //你把a的首地址给了b那么 *(b+e-1)=*(a+e-1)这个就和a[e]=a[e]一样你并么有正在把数组a’复制一份‘

}

for(e=1;e=f;e++)

{

*(a+f-e)=*(b+e-1);

}

}

要对指针和数组的关系加强认识啊。。。看我是怎么修改你的代码的O(∩_∩)O哈哈~

谢谢

C语言用递归颠倒栈,我是菜鸡啊,麻烦给个简单点的代码,不是C++.题目如下

//刚写的code,测试通过,如果有疑问,欢迎交流

//其中is_first是为了控制空格输出,因为最后一个数字后面没有空格

//另外这个程序没有说明输入的个数,所以在运行下面的程序的时候

//输入几个数后,要ctrl+z

#includestdio.h

void tar_func(int * is_first){

int tar;

if(scanf(“%d”, tar)!=EOF){

tar_func(is_first);

if(*is_first != 1){

printf(” %d”, tar);

}else{

printf(“%d”, tar);

*is_first = 0;

}

}

}

int main(){

int tar,is_first = 1;

tar_func(is_first);

return 0;

}

c语言菜鸡,这个代码哪错了,题教交说错了%10,谢谢,如图?

您好,很高兴回答您的问题。

对于您给出来的程序,有一些小问题:首先for循环中的循环变量i是一直在以递增1的速度增加,但是没有结束的时候,所以这个循环是个死循环。其次,b的值没有发生变化,所以只要输入a的值超过1,那么ba就是永远成立,循环也是死循环,所以需要修改b的值,让它逐步靠近a。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/206935.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝的头像小蓝
上一篇 2024-12-08 14:18
下一篇 2024-12-08 14:18

相关推荐

发表回复

登录后才能评论